asp.net-core – IClaimsTransformer的User.IsInRole(“Administ
我使用IClaimsTransformer impelimentation在身份验证后将角色管理员添加到用户声明中,如下所示:
(principal.Identity as ClaimsIdentity).AddClaim(new Claim(ClaimTypes.Role,“Administrators”)); 解决方法
我在基于API的解决方案中做了类似的事情,但是在创建用户时设置了角色声明,而不是在变换器中设置.
在查看User.IsInRole()documentation后,看起来此方法旨在首先从缓存中提取.
我怀疑ClaimTypes.Role是一个常见的声明,而不是自定义的特定于域的声明(我认为是ClaimsTransformer的用例),应用程序使用默认的,缓存的,预转换值. 但大部分都是猜测.您可以在创建用户时尝试设置声明.我是使用UserManager类做的. var claimsResult = await _userManager.AddClaimAsync(applicationUser,new Claim(ClaimsIdentity.DefaultRoleClaimType,"Administrator")); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – 如何从ASP.NET MVC应用程序返回404响应?
- asp.net-mvc – 如何处理ASP.NET MVC中动态生成的表单的输出
- asp.net – Facebook API – 签名请求无效. (签名无效.)
- ASP.NET错误:页面Y.ascx无法使用用户控件X.ascx
- asp.net-mvc – 控制器名称是否来自类名?
- asp.net – Grid.SelectedRow.Cells.Item(1).Text.ToString
- ASP.NET身份验证cookie仅在IE中消失,仅在特定位置消失
- asp.net-mvc – MVC控制器与开箱即用的Sitecore控制器
- asp.net – 用于验证的数据注释,至少一个必填字段?
- asp.net-mvc – 你在哪里把非控制器,非模型代码放在ASP.Net
- msbuild – 使用新的ASP.NET CORE 1.1 csproj文件
- asp.net-mvc – ASP.NET MVC 3 RC和Azure?
- asp.net – FederatedAuthentication.WSFederati
- asp.net-mvc – 如何在不创建多个动作结果的情况
- asp.net-mvc – 如何在MVC3中存储用户首选项
- 清理ASP.NET提供的“杂乱”标记
- 在asp.net上单击按钮的空文本框的Javascript验证
- asp.net-mvc – 使用LINQ从MVC调用存储过程而不指
- 知识在与温故、总结-再读CLR
- asp.net-mvc – 将整数数组传递给webapi方法