セッション認証モジュールを使用して、ユーザー クレームを認証 Cookie に保存しています。
ログイン中にユーザーのクレームを更新するための推奨される方法は何ですか? たとえば、プロファイル (名/姓) を更新し、関連するクレームを更新したい場合です。
これが発生したときにユーザーをログアウトしたくないのでDeleteSessionTokenCookie
、オプションではありません。
セッション認証モジュールを使用して、ユーザー クレームを認証 Cookie に保存しています。
ログイン中にユーザーのクレームを更新するための推奨される方法は何ですか? たとえば、プロファイル (名/姓) を更新し、関連するクレームを更新したい場合です。
これが発生したときにユーザーをログアウトしたくないのでDeleteSessionTokenCookie
、オプションではありません。
SAM.WriteSessionTokenToCookie で新しいセッション Cookie を設定します。
Leastprivilege の答えは正しいです。
ただし、Vijay V のコメントに応えて、クレーム プリンシパルに新しいクレームを追加した後に Cookie を更新する方法のサンプル コードを次に示します。
var sam = FederatedAuthentication.SessionAuthenticationModule;
if (sam != null)
{
var token = new SessionSecurityToken(claimsPrincipal);
sam.WriteSessionTokenToCookie(token);
}
ここからコードを引っ張ってきました。