ASP.NET认证问题:手动添加的声明在下一次请求中丢失。
创始人
2024-11-12 06:30:25
0

在ASP.NET中,我们可以手动添加声明来使原始标识更丰富。但是,手动添加的声明可能会在下一次请求中丢失。这是因为它们不会存储在身份验证cookie中。为了解决这个问题,我们需要将声明存储在身份验证cookie中。下面是一个示例:

在登录时添加声明:

var identity = new ClaimsIdentity(new[] {
    new Claim(ClaimTypes.Name, user.Name),
    new Claim(ClaimTypes.Email, user.Email),
    new Claim(ClaimTypes.Country, user.Country),
}, DefaultAuthenticationTypes.ApplicationCookie);

HttpContext.GetOwinContext().Authentication.SignIn(identity);

将声明存储在cookie中,这些声明在下一次请求中将可用。

在需要检索声明的任何地方使用以下代码:

var identity = (ClaimsIdentity)User.Identity;
IEnumerable claims = identity.Claims;
var country = claims.FirstOrDefault(c => c.Type == ClaimTypes.Country)?.Value;

以上代码将声明提取到变量“country”中。如果声明不存在,则它将为空。

相关内容

热门资讯

透视中牌率!微信微乐游戏辅助脚... 透视中牌率!微信微乐游戏辅助脚本,微乐游戏公众号辅助器(透视)其实是有辅助脚本(哔哩哔哩)脚本下载中...
透视妙招!wepoker轻量版... 透视妙招!wepoker轻量版有透视吗(WePoKer透视脚本)竟然是有辅助技巧(哔哩哔哩)1)we...
2026版总结!微信微乐游戏辅... 2026版总结!微信微乐游戏辅助脚本,微乐自建房辅助入口在哪里(透视)竟然是真的辅助工具(哔哩哔哩)...
透视教材!wepokerplu... 透视教材!wepokerplus万能挂(AApoker安全)真是是真的有辅助软件(哔哩哔哩)1)we...
相较于以往!微乐小程序黑科技,... 相较于以往!微乐小程序黑科技,微信小程序微乐辅助器免费下载(透视)一贯真的有辅助攻略(哔哩哔哩);暗...
透视练习!hhpoker可以控... 透视练习!hhpoker可以控制牌吗(AApoker选牌)确实是真的有辅助软件(哔哩哔哩)1、下载好...
透视黑科技!微信微乐游戏辅助脚... 透视黑科技!微信微乐游戏辅助脚本,微乐自建房脚本免费入口(透视)好像真的是有辅助器(哔哩哔哩)1、模...
透视资料!wepoker开辅助... 透视资料!wepoker开辅助能查到吗(WPK私人局)总是真的有辅助教程(哔哩哔哩)1、上手简单,内...
此事引发网友热议!微乐小程序免... 此事引发网友热议!微乐小程序免费黑科技,小程序微乐游戏辅助器(透视)一直存在有辅助神器(哔哩哔哩)1...
透视妙招!sohoo开挂辅助(... 透视妙招!sohoo开挂辅助(WePoKer脚本)竟然真的有辅助插件(哔哩哔哩)透视妙招!sohoo...