2 つの別々の iis サーバーでホストされているプロジェクトがあります。サイト/サーバー 1 にはサイトのコアが含まれており、https プロトコルを使用する asp.net です。サイト/サーバー 2 は、サイト 1 から参照する必要がある Silverlight アプリを含むサード パーティ サーバーです。
サイト 1 には、Silverlight コントロールのビューアー ページがあり、initparams を動的に読み込んでサーバー ユーザー名とその他のいくつかのパラメーターを指定する以外に特別なことはありません。私が問題を抱えているのは、両方のサーバーが http であるテスト環境で、問題なく xap ファイルにアクセスできます。ただし、サーバー 1 (ビューアーを含む) がサーバー 2 の xap ファイルを呼び出す開発/運用環境に移動すると、Silverlight アプリが読み込まれません。サーバー 2 には、次の clientaccesspoliy ファイルがあります。
<?xml version="1.0" encoding="utf-8"?>
<access-policy>
<cross-domain-access>
<policy>
<allow-from http-request-headers="*">
<domain uri="*" />
<domain uri="http://*" />
<domain uri="https://*" />
</allow-from>
<grant-to>
<resource path="/" include-subpaths="true"/>
</grant-to>
</policy>
</cross-domain-access>
</access-policy>
この呼び出しを行うことは可能ですか (http から xap ファイルをプルするための https)?
私が持っていたもう1つの考えは、両方のサーバーでhttpsを使用することでしたが、これをテストする際に、iisサーバー証明書が自己署名されているため、これに関するIEからセキュリティプロンプトが表示され、信頼を確認できないためアプリがタイムアウトします.
私が考えた 1 つのハックは、証明書の信頼を上書きし、コードを介して ti を true に設定することでしたが、私はこのアイデアの大ファンではありません。
私が達成しようとしていることが可能かどうか、または別の実装の提案を誰かが確認できますか?
前もって感謝します
-乾杯
アップデート
セキュリティまたは Silverlight が原因で、これが不可能であるかのように見えます。私が現在追求している 1 つのオプションは、代わりにサーバー 2 に html ファイルと xap ファイルを残すことです。xap ファイルをロードしようとする代わりに、Silverlight コントロールを呼び出すリンクのクリック イベントでパラメーターを取得し、シリアル化して渡します。シリアル化されたオブジェクトとしてセカンダリ サーバーに送信します。次に、これらの値を sl コントロールに直接渡すことができます。最もクリーンなアプローチではありませんが、うまくいくようです。