特定の状況下で、Windows Identity Framework が FedAuth Cookie を書き込むのに問題があります。私は、既に WIF を使用し、独自のドメインの FedAuth Cookie を正常に書き込む MVC4 Web サイトのスイートの開発を取り上げています。現在、スイート内の各ドメインに書き込まれた Cookie を取得しようとしています。
私の開発マシンには、IIS7.5 (app1.mycompany.com、app2.mycompany.com、app3.DIFFDOMAIN.com) によってローカルにホストされている 3 つの Web サイトがあります。app1 にサインインすると、Cookie のドメインを「mycompany.com」に設定します。これは、app1 と app2の両方がフェデレーションされていることを意味しますが、app3 を含める良い方法が見つかりません。
FederatedAuthentication.SessionAuthenticationModule
.CookieHandler.Domain = "mycompany.com".
これまでに気づいたこと/試したこと:
app1 では、Domain = "app1.mycompany.com" または "mycompany.com" を設定でき、Cookie が書き込まれますが、それ以外に設定すると Cookie は書き込まれないため、ドメインの基礎となる検証が必要です。 cookie を書き込むときのプロパティ。本当??
https://app3.DIFFDOMAIN.com/fedauth
Domain = "DIFFDOMAIN.com" を設定するapp1 (例) から呼び出されるように、app3 に API サービスを作成しました。- ブラウザから API を呼び出すと、Cookie が書き込まれます。
- 残りのクライアントを使用して app1 から API を呼び出すと、Cookieが書き込まれません。
- app1 から app3 の URL に RedirectPermanent すると、Cookie が書き込まれます (ただし、実際にはリダイレクトしたくありません)。
だから私は、残りのクライアントを使用しているときにCookieが書き込まれない理由と、すべてのドメインで認証をフェデレートする方法を尋ねていると思いますか?
ありがとう、
ジョン。