0

AzureのACSサービスは非常に優れており、それが実行できるすべての魔法が大好きですが、Webアプリ(MVC)にはもう少し魔法が必要です。CodePlexのコードサンプルを見ると、サービスを呼び出して、次のようなエンドポイントからログインプロバイダーのJSONリストを取得するのは簡単です。

https://.accesscontrol.windows.net/v2/metadata/IdentityProviders.js?protocol=wsfederation&realm=http%3a%2f%2flocalhost%3a7070%2f&version=1.0&callback=?

結果のJSONから、プロバイダーへのリンクをレンダリングできます。これらのログインを処理すると、ACSを介してバウンスされ、ACSは、Azureで設定したエンドポイントに結果のトークンを使用して投稿を行います。ポータル。

私の質問は、そのトークンで何をするのかということです。IPrincipalのセットを作成するWIFの「魔法」を使用したくありません。私はアプリにすでにあるものをいじりたくないだけです。

4

2 に答える 2

2

WIFがトークンを使用して行うことを正確に実行します。SAMLトークンを復号化した後に解析します。SAMLトークンの仕様はここで確認できます。SAMLの解析は気の弱い人向けではないため、WIFを使用することをお勧めします。すべてのクレームを解析してから、アプリケーションでそれらをどう処理するかを決定する必要があります。WIFは、IClaimsPincipalを作成し、IClaimsIdentityにクレームを設定することによってこれを行います。

于 2011-06-09T01:12:54.453 に答える
0

私は、WIFの機能を必要としているが、アプリケーション全体をクレームベースに変換したくない人々のためのソリューションを説明するブログ投稿を書きました。これにより、状況にどのように取り組むことができるかがわかります:http: //goo.gl/J8WZe

最終的に、私はWIFモジュールクラスを拡張し、不要なマジックメソッドを置き換えるためにいくつかのオーバーライドを追加しました。

私はこれをテストしていませんが、あなたができる他のことは、それが公開するさまざまなイベントに登録することによってWIFワークフローを利用することです。

于 2011-10-25T14:15:12.210 に答える