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软件安装包(透视)hhpoker万能辅助器(本来是真的有挂)-哔哩哔哩1、在...
透视app!wpk软件是正规的... 透视app!wpk软件是正规的吗(透视)wpk透视工作室(一贯真的是有透视)-哔哩哔哩进入游戏-大厅...
透视攻略!德普之星有透视辅助吗... 透视攻略!德普之星有透视辅助吗(透视)德普之星私人局透视(确实真的有脚本)-哔哩哔哩亲,关键说明,德...
透视工具!wepoker模拟器... 透视工具!wepoker模拟器哪个(透视)wepoker国外版透视(一贯是真的有透视)-哔哩哔哩在进...
透视工具!wejoker黑侠辅... 透视工具!wejoker黑侠辅助器(透视)wepoker有没有机器人(竟然一直都是有挂)-哔哩哔哩1...
透视神器!hhpoker辅助挂... 透视神器!hhpoker辅助挂(透视)hhpoker到底可以作必弊码(原来一直总是有挂)-哔哩哔哩1...
透视神器!模拟器打开hhpok... 透视神器!模拟器打开hhpoker(透视)hhpoker免费透视脚本(切实有透视)-哔哩哔哩1、首先...
透视攻略!hh poker软件... 透视攻略!hh poker软件(透视)hhpoker德州机器人(原来一直总是有透视)-哔哩哔哩1、很...
透视软件!潮汕激k辅助(辅助)... 透视软件!潮汕激k辅助(辅助)新九五辅助微信脚本(其实存在有挂)-哔哩哔哩一、新九五辅助微信脚本可以...
透视脚本!aapoker脚本怎... 透视脚本!aapoker脚本怎么用(透视)aapoker怎么拿好牌(一贯一直都是有透视)-哔哩哔哩1...