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

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

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

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

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

推荐答案

可以多次添加PrinicPerpermission属性.

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

Asp.net相关问答推荐

使用 Asp.Net MVC 和 KnockoutJS 处理日期

如何调试 Azure 500 内部服务器错误

iframe.readyState 在 chrome 中不起作用

无法获取项目引用的依赖项

如何使用 json 将复杂类型传递给 ASP.NET MVC 控制器

使用 JSON.NET 解析 json 字符串

asp.net cookie、身份验证和会话超时

如何在 ASP.NET 下拉列表中添加选项组?

如何从 HTTP 请求中获取 MAC 地址?

缩小失败.返回未缩小的内容

嵌套剃刀模板中的@RenderSection

如何设置默认页面 asp.net

如何确定服务器端 C# 上的浏览​​器窗口大小

在 Visual Studio 2010 Professional 中找不到请求的 .Net Framework 数据提供程序

如何从 ASP.NET 中的数据表/数据视图中 Select 前 n 行

ASP.NET MVC 4 的 Windows 身份验证 - 它是如何工作的,如何测试它

ContentResult 与字符串

简单的 LINQ 和列表错误:WhereListIterator`1[Task]' to type 'System.Collections.Generic.List`1[Task]'

Application_End global.asax

ASP.NET MVC2/3 中runAllManagedModulesForAllRequests的正确用法是什么?