クロスドメインは、クライアントアクセスポリシーファイルで、許可すれば問題ないのですが、顧客のセキュリティポリシーで許可できないと行ったことが多々あります。
このような場合、Fiddlerで解決する方法がありましたので、紹介します。
【クロスドメイン】
セキュリティ上、Webサイトからの通信(データのやりとり)は、Webサイト(HTMLファイルが置かれている)が置かれているサーバ(ドメインのサーバ)としか通信できない制約があります。
この制約をクロスドメイン制約と呼びます。
【クライアントアクセスポリシー】
クロスドメイン制約を許可する手段として、サーバにアクセス許可を設定するファイルを保存します。
このファイルを「クライアントアクセスポリシー」ファイルと呼び、通信先に保存します。
【セキュリティポリシー】
「企業全体の情報セキュリティに関する基本方針」で、むやみにサーバアクセスを許可しないことなどを行います。
詳しくは、Googleで「セキュリティポリシー」 で検索すれば沢山でてきます。
【Fiddler】
HTTP の通信データをみたりすることが出来るツールで、フリーのパケットキャプチャソフトになります。
ソフト開発のデバッグツールとして大変便利なソフトです。
【Fiddlerでのクロスドメイン】解決方法について
(1)クライアントアクセスポリシーファイル(clientaccesspolicy.xml)を次のような内容で作成して、
ローカルPCに保存する。
例えば、 C:\に保存。
<?xml version="1.0" encoding="utf-8"?>
<access-policy>
<cross-domain-access>
<policy>
<allow-from http-request-headers="*">
<domain uri="https://*"/>
<domain uri="http://*"/>
</allow-from>
<grant-to>
<resource path="/" include-subpaths="true"/>
</grant-to>
</policy>
</cross-domain-access>
</access-policy>
(2) Fiddler4インストールして、クライアントアクセスポリシーファイルを参照するように設定する。 ※Fiddler2でも可能
・「Add Rule」を選択して、クラインアクセルポリシーの設定
RuleEditerに保存したクラアントアクセスポリシーファイルを設定して、Save
・StreamとDecodeをクリックする
・メニューTools - Fiddler OpeionsのHTTPSタブを選択して、Decrypt HTTPS traffic をチェックする
0 件のコメント:
コメントを投稿