新しい4.5 WIFものを使用して、Webサイトのユーザーを認証し、MVC WebサイトとWCFサービス間の通信を保護します。WIF 4.5 BootstrapContextセキュリティトークンnull
サービス層へのすべての要求に対して同じセキュリティトークンを再利用できるように、ブートストラップコンテキストを保存するようにWebサイトを設定しました。
正常な状態では、すべてのWebサイト要求が認証され、セキュリティトークンがWCFコールを保護するためにコンテキスト経由で利用できるようになっています。
ただし、ウェブサイトのアプリドメインがリセットされた場合(開発中にアプリを作成するなど)、ウェブサイトへのリクエストはすべて認証されますが、SecurityTokenはWCFコールに渡すコンテキストでは使用できなくなります。
プレアプリケーションドメインはセキュリティトークンとSecurityTokenHandlerの値を有し、そしてポストトークン値を有するリセットリセット
SecurityToken
SecutiryTokenHandler
Token
TokenBytes
:それは4つの有用な特性を有する
BootstrapContext
デバッグ
。
リセット後にトークンの値を確認すると、生のSAML XMLのように見えるので、おそらく完全なSecutiryTokenを再水和することができますが、これはドキュメントが見つかりません。
SecurityTokenを確実に使用して、トークンXMLを使いこなすのを防ぐために、私ができることはありますか?私はこの動作をcasuesが、私はそれがこのようにする必要がない理由を決定することができませんでした実行パスを見ることができるフレームワークのソースコードで何が起こっているのかを見てdotPeekを使用し
更新
それがどうやって起こるのかを知ることができます。
私はそれを仕事と今私は私が今心配です何トークン
if (context.SecurityToken != null)
{
token = context.SecurityToken;
}
else if (context.Token.IsNotEmpty())
{
var handlers = FederatedAuthentication.FederationConfiguration.IdentityConfiguration.SecurityTokenHandlers;
token = handlers.ReadToken(new XmlTextReader(new StringReader(context.Token)));
}
を持っていることを確認するために次のコードを使用しようとあきらめた最後に私は、この背後にあるいくつかの推論を逃したです行動と上記の私の修正は、ある時点で爆破するつもりです。
OWINは同じWIFですか? – Kiquenet