ログイン プロセスの一環として、トークンが受信されて受け入れられると、はsメソッドWSFederationAuthenticationModule
を呼び出します。SessionAuthenticationModule
WriteSessionTokenToCookie
public void WriteSessionTokenToCookie(SessionSecurityToken sessionToken)
{
//Error checking omitted
byte[] buffer = handler.WriteToken(sessionToken);
SessionSecurityTokenCacheKey key = new SessionSecurityTokenCacheKey(this.CookieHandler.Path, sessionToken.ContextId, sessionToken.KeyGeneration);
DateTime expiryTime = DateTimeUtil.Add(sessionToken.ValidTo, base.FederationConfiguration.IdentityConfiguration.MaxClockSkew);
handler.Configuration.Caches.SessionSecurityTokenCache.AddOrUpdate(key, sessionToken, expiryTime);
this.CookieHandler.Write(buffer, sessionToken.IsPersistent, sessionToken.ValidTo);
}
ご覧のとおり、適切にシリアル化された何らかの形式のトークンを Cookie として書き込んでいます。これに正確に含まれるものは、いくつかのオプションに依存します - たとえば、SaveBootstrapContext
保存されるものに正確に影響を与える可能性があります。このオプションがオンになっている場合、はい、SAML トークンが Cookie に保存されていると思います。
では、どの Cookie が保存されているのでしょうか。それは何をしているかによって異なりthis.CookieHandler
ます。デフォルトでは、これはChunkedCookieHandler
、上記のメソッド呼び出しで渡されたバイナリ BLOB を最終的に (デフォルトでは) 分割し、複数の小さな BLOB に分割し、それらを 、 などの形式の一連の Cookie に格納しFedAuth1
ますFedAuth2
。
初期トークンが検証されたら ASPXAUTH に切り替えることができるように、IIS 上の .NET Web アプリケーションの標準 ADFS セットアップに構成がありますか?
私の知る限りではありません。