- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我有一个可以为用户分配以下角色的应用程序:
一个用户可能分配了两个或多个角色,例如。 super 管理员和用户。我的应用程序使用声明,因此我也想通过声明来验证用户角色。喜欢:
[Authorize(Roles="Admin")]
不幸的是,我不知道如何向我的 ClaimTypes.Role 添加多个角色。我有以下代码:
var identity = new ClaimsIdentity(new[] {
new Claim(ClaimTypes.Name, name),
new Claim(ClaimTypes.Email, email),
new Claim(ClaimTypes.Role, "User", "Admin", "SuperAdmin")
},
"ApplicationCookie");
如您所见,我试图添加更多角色以进行说明,但显然它以错误的方式完成,因此不起作用。因此,非常感谢任何帮助。
最佳答案
一个声明标识可以有多个具有相同 ClaimType 的声明。这样就可以使用 HasClaim 方法来检查是否存在特定的用户角色。
var identity = new ClaimsIdentity(new[] {
new Claim(ClaimTypes.Name, name),
new Claim(ClaimTypes.Email, email),
new Claim(ClaimTypes.Role, "User"),
new Claim(ClaimTypes.Role, "Admin"),
new Claim(ClaimTypes.Role,"SuperAdmin")
},
"ApplicationCookie");
关于c# - Owin 声明 - 添加多个 ClaimTypes.Role,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42791416/
我已经将 IdentityServer3 作为独立的身份服务器运行。 我有一个单独的 MVC 客户端,它使用 Cookie 和 OpenIdConnect 进行身份验证。我正在尝试在其他方面设置声明转
我一直在查看各种 System.IdentityModel.Claims.ClaimTypes 属性 ( Class reference ),看看我的每个用户模型属性是否都有预定义类型。似乎除了城市之
我正在研究在 ASP.NET (MVC Core 1.0) 中使用基于声明的授权。设置 ClaimsIdentity 时,我提供了一个键/值字符串对列表来表示每个 Claim。示例: List cla
我正在开发一个新应用程序并使用 ASP.NET Identity,想知道是否有一种方法可以在 ClaimsIdentity 上强制显示特定的声明类型。到目前为止,这是我所拥有的。它可以工作,但似乎这是
我有一个可以为用户分配以下角色的应用程序: super 管理员 管理员 用户 一个用户可能分配了两个或多个角色,例如。 super 管理员和用户。我的应用程序使用声明,因此我也想通过声明来验证用户角色
我目前正在开发一个实现 Azure ACS 的项目。我已经掌握了基础知识,我注意到 Azure ACS 向我发送了 SAML 信息,其中包括 IdentityProvider 和 NameIdenti
我正在玩弄 .net 4.5 中的声明授权。这工作得很好。但我遇到了一个小问题。 我认为设置名称声明类型应该导致身份名称 我检查过 ident.NameClaimType 与 ClaimTypes.N
使用 ASP.NET Core 2.2 和 Identity Server 4 我有以下 Controller : [HttpGet("posts"), Authorize] public async
我有这样创建的 JwtToken: X509Certificate2 cert = certificateStore.Certificate; var now = Da
使用 Asp.Net Identity 允许您向用户添加声明。 System.Security.Claims.ClaimTypes 允许您从各种 ClaimType 中选择任何 ClaimType。
有没有办法向自定义策略 ClaimType 添加超链接?例如,如果我需要用户同意才能同意使用条款,我如何提供与复选框标签内嵌的使用条款的链接? 在我的自定义策略(基本 xml)中,我尝试添加以下内容:
使用 Asp.Net Identity 允许您向用户添加声明。 System.Security.Claims.ClaimTypes 允许您从各种 ClaimType 中选择任何 ClaimType。
我是一名优秀的程序员,十分优秀!