yoshiweb.NET-blog



HOME > blog > カスタムポリシーファイル crossdomain.xml について
« 日本語版 10月12日? | mx.transitions.Tweenクラス を拡張 »

カスタムポリシーファイル crossdomain.xml について

Flash でドメインをまたいで外部ファイルを読み込みたい場合
参照側のサーバー(外部ファイルが置いてある方)に
crossdomain.xmlという名前のXMLが必要らしいです。


XMLの書き方は

全てのドメインのアクセスを許可する(どこからでもOK〜!にする)ときは
以下の記述をしたXML「crossdomain.xml」をルートディレクトリに配置
<?xml version="1.0"?><cross-domain-policy>  <allow-access-from domain="*" /></cross-domain-policy>


他の全てのドメインから読み込まれるのを防ぐ(他のドメインは全部ダメー!にする)ときは
crossdomain.xmlファイルを設置しない!
もしくはallow-access-from タグのない crossdomain.xml ファイルをルートディレクトリに配置
<?xml version="1.0"?><cross-domain-policy></cross-domain-policy>


crossdomain.xml の各要素の内容
<?xml version="1.0"?><cross-domain-policy>    <site-control permitted-cross-domain-policies="メタポリシー設定" />    <allow-access-from domain="外部ファイルを読み込む方のドメイン" /></cross-domain-policy>

メタポリシー設定
all: すべてのポリシーファイルが許可されます。
by-content-type: Content-Typeがtext/x-cross-domain-policyのすべてのポリシーファイルが許可されます。
by-ftp-filename: FTPサーバにのみ使用できます。
master-only: マスターポリシーファイル( /crossdomain.xmlにあります)のみが許可されます。
none: ポリシーファイルは許可されません。
none-this-response: HTTP応答ヘッダでのみ指定できる特別なメタポリシー。

ドメインの指定の仕方は
・完全なドメイン名 (例:www.example.co.jp )
・IP アドレス (例:65.57.83.12 )
・ワイルドカードを使用したドメイン名 (例:*.example.co.jp )
・完全なワイルドカード:* (アスタリスクひとつ)
※この場合、すべてのドメイン、および IP アドレスからのアクセスが許可される。


例:www.example.co.jp上に設置されたFlashからの、80番ポートへのアクセスを許可する
<?xml version="1.0"?><cross-domain-policy>    <site-control permitted-cross-domain-policies="all"/>    <allow-access-from domain="www.example.co.jp" to-ports="80" /></cross-domain-policy>



例:HTTPS サーバーへ、HTTPサーバー上に設置されたFlashからのアクセスを許可する
<?xml version="1.0"?><cross-domain-policy>    <allow-access-from domain="*" secure="false" /></cross-domain-policy>





※ 2008/04 の Flash Player セキュリティアップデートから
HTTP リクエスト送信時にヘッダに属性を追加する場合は、以下のような記述も必要になるそうです。
<allow-http-request-headers-from domain="www.example.com" headers="HeaderName"/>
Adobe - デベロッパーセンター : ドメイン間でヘッダを送信するにはポリシーファイルが必須


例:Basic認証のかかってるサーバーにヘッダをつけてリクエストを送る場合
<?xml version="1.0"?><cross-domain-policy>  <allow-access-from domain="*" secure="false" />  <site-control permitted-cross-domain-policies="all" />  <allow-http-request-headers-from domain="*" headers="*" /></cross-domain-policy>





【基本情報】
Flashヘルプ - ドメイン間のデータロード許可
Flash Player 7 におけるセキュリティの変更について(英語)


【Flash Player9のセキュリティアップデート関連情報】
セキュリティに関するFlash Player 9の変更点
緊急情報:2008年4月に行われるFlash Player9のセキュリティアップデートへの対応のお願い
akihiro kamijo: 来月 (2008/4) の Flash Player セキュリティアップデート
akihiro kamijo: ソケットポリシーファイルと Flash Player セキュリティ

※ 全部許可した場合のリスクは下記のリンク先が参考になりそうです。
crossdomain.xml と CSRF 脆弱性について - 川o・-・)<2nd life<
ここが危ない!Web2.0のセキュリティ:第4回 Flash,JSONでのクロスドメインアクセス|gihyo.jp … 技術評論社
Flashとポリシーファイルの密接なカンケイ − @IT

クロスドメインポリシーファイル(crossdomain.xml)設定について | さわいじり

投稿者 yoshiweb - Flash - 2005/10/06 - 12:33:07 - Permalink
このエントリーをはてなブックマークに追加

Comments

こんにちは。 ごんべいといいます。

FLASH勉強中で、このサイトを発見しました。すごく勉強になります。教えて頂きたいのですが、
allow-access-from domainを*にした場合、すべのドメイン、およびIPアドレスからアクセスが可能となりますが、その場合どのようなリスクが考えられるか教えてもらますでしょうか。
投稿者 ごんべい - 2006/07/12 - 11:33:31
こんにちは、ごんべいさん。
CGIなどを使えば別ドメインのデータも読み込めると思うので、それほど重大なリスクを伴うことはないような気もしますがセキュリティの専門家ではないので詳しくはわかりません。無責任な言い方ですが自己責任でお願いします。m(_ _)m
投稿者 yoshiweb - 2006/07/13 - 12:15:05
allow-access-from domainを*にした場合のリスクについて参考になりそうなリンク先を追加しました。
ついでに to-ports 属性と secure 属性の例を追加しました。
詳しくは Adobeサイトなどを参考にしてください。
投稿者 yoshiweb - 2008/01/11 - 19:22:23
certainly like your web site however you have to check the spelling on quite
a few of your posts. Many of them are rife with spelling problems
and I in finding it very troublesome to tell the reality
nevertheless I will definitely come back again.
投稿者 shoes - 2017/06/05 - 12:45:34
This information is priceless. How can I find out more?
投稿者 kewvineyards.com - 2017/06/16 - 19:39:33

コメントを書く

※ スパム対策のためコメント内の URL は全角で書いてください。あとで半角に変換します。