アプリカンブログ

HTML5でiOS/Androidアプリが開発できるプラットフォーム、アプリカンのブログです。

アプリカンをセキュアに使うためのwhitelist.xmlについて

アプリカンでは外部サイトへのアクセスを制御するためにwhitelist.xmlを使います。こちらはユーザが作ったコンテンツに含まれるリンクであったり、不正なURLスキームを使ってアプリカンを使ったアプリでフィッシングサイトへ誘導されたりするのを防ぐことができます。

使い方は簡単で、例えば次のように記述します。

<applican-whitelist>
    <allowed>http://*</allowed>
    <allowed>*.co.jp?</allowed>
</applican-whitelist>

*(アスタリスク)はワイルドカードで、何の文字列でも使えますという指定です。?は何か一文字という意味になります。正規表現は使えませんのでご注意ください。

allowedは複数並べて記述でき、andでつながった指定になります。つまりこの場合、「http://」と「.co.jp?」の条件にマッチしたサイトのみが表示できます。

例えばこの条件の場合は以下のように表示可否が決まります。

URL アクセス結果
http://www.google.co.jp
https://www.google.co.jp ×
http://www.google.co.jp/
http://google.co.jp
http://www.hoge.jp ×

注意点

whitelist.xmlによるアクセス制御はリンクタグに対してのみ有効です。Ajaxでのアクセスや、アプリカンAPIでのHTTPアクセス(applican.http.get/applican.http.post)に対しては有効ではありません。

アクセス不可なURLはリンクをクリックしても反応しなくなります。


WebViewの場合、知らぬ間に外部サイトへ誘導されていた場合にそれがアプリ本体のHTMLなのか、外部サイトのHTMLなのかは見た目では分からないでしょう。適切なアクセス制限を行い、セキュアにしてください。

whilelist.xml - アプリカン | アプリ開発支援プラットフォーム