MVC 6(Asp.Net One Core)にWebアプリケーションがあり、クレームベースの認証を使用しています。ログイン方法では、私は、クレームを設定します。たとえば、ユーザーがユーザープロファイルでメールを変更した場合ASP.NET One Coreのクレーム値を更新する
var claims = new Claim[]
{
new Claim("Name", content.Name),
new Claim("Email", content.Email),
new Claim("RoleId", content.RoleId.ToString()),
};
var ci = new ClaimsIdentity(claims, "password");
await HttpContext.Authentication.SignInAsync("Cookies", new ClaimsPrincipal(ci));
は今、どのように私は、「電子メール」クレームのための電子メールの値を変更できますか?私は、Cookieを更新するSignOutAsyncとSignInAsyncをもう一度する必要がありますか?最良の解決策は、古典的なセッションにこれを保存することです?より良い解決策がありますか?私は全く間違っていますか?
提案がありますか?
私はアウトに署名し、サインインを再び再び主張を作成するためにした場合、情報が瞬時に入手可能であるか、またはページがクッキーを更新したりするためにリフレッシュされなければなりませんそんな感じ? –
古い情報が** Principal **オブジェクトに引き続き添付されているため、同じ要求内でPrincipalを使用して追加の処理を実行する必要はありません。 – Win