我创建了自己的角色提供程序,因为我发现ASP.NET提供的角色提供程序在数据库中的表方面太大了.我发现实现自定义RoleProvider相当容易.

我唯一的问题是,现在我不能在一个页面上有多个角色.我在某个地方看到,在你们班的最高层,你需要用一些安全代码来"说明".这就是我所拥有的

[PrincipalPermission(SecurityAction.Demand, Role="Admin")]

如果我试图使用逗号分隔的列表包含多个角色,我会出错.如果我试图指定多个角色键,那么我也会出错.我需要指定多个PrinicipalPermission吗?

我对ASP.NET的角色管理几乎没有经验.有没有人能给我指个方向或者一些好的文学作品.

推荐答案

可以多次添加PrinicPerpermission属性.

[PrincipalPermission(SecurityAction.Demand, Role="Admin")]
[PrincipalPermission(SecurityAction.Demand, Role="AnotherRole")]

Asp.net相关问答推荐

设置主键时KeyAttribute属性不起作用

逐步 ASP.NET 自动构建/部署

web.config 部分的单独配置文件

如何在 C# 代码中获取当前项目名称?

如何在 GridView 单元格中的(即
)中呈现解码的 HTML

ASP.NET 如何将控件呈现为 HTML?

如何使用特定视图(不是控制器名称)返回 ActionResult

无法加载文件或程序集'System.Web.WebPages.Razor,版本 = 3.0.0.0

你如何确定哪个验证器失败了?

ASP.NET MVC 5 中的路由可选参数

aspx 文件中的 if 语句

HttpContext.Current.Cache.Insert 和 HttpContext.Current.Cache.Add 有什么区别

ASP.NET IIS Web.config [内部服务器错误]

将查询参数绑定到 ASP.NET Core 中的模型

C# 7 本地函数未按预期工作且未显示错误

HttpContext.Current 在 MVC 4 项目中未解决

ASP.NET MVC Url Route 支持(点)

Cache.Add 绝对过期 - 是否基于 UTC?

如何response.write bytearray?

从服务器下载 ASP.NET 文件