- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在尝试构建自定义验证,以检查角色是否包含用户。我在使用字符串数组时遇到问题,检查它是否包含特定值的最佳方法是什么?
public string[] AuthRoles { get; set; }
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
if (AuthRoles.Length > 0)
{
if (!filterContext.HttpContext.User.Identity.IsAuthenticated)
{
RedirectToRoute(filterContext,
new
{
controller = "AdminLogin",
action = "AdminLogin"
});
}
else
{
bool isAuthorized = filterContext.HttpContext.User.IsInRole(this.AuthRoles.??);
if (!isAuthorized)
throw new UnauthorizedAccessException("You are not authorized to view this page");
}
}
else
{
throw new InvalidOperationException("No Role Specified");
}
我应该如何修改 User.IsInRole 的检查以便它处理数组?
最佳答案
怎么样:
bool isAuthorized =
this.AuthRoles.Any(r => filterContext.HttpContext.User.IsInRole(r));
编辑:(假设成为任何角色的成员就足以获得授权。)
关于c# - 如果 User.IsInRole 带有字符串数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2175669/
我在 Site.Master.cs 的 Page_Load 中有这段代码。 if(User.IsInRole("Read")) { NavigationMenu.Visible = false;
所以这是我当前的代码: List rowGroups = GetFileGroups((int)row.Cells["document_security_type"].Value); bool fou
请注意,我使用的是 c# MVC 3,我试图在一个类中使用它,而不是在 Controller 中。 我的程序顶部有以下内容 using System.Web.Security; 我尝试执行以下
目标 教导 User.IsInRole() 方法数据库中存在哪些角色。 问题 我不认识路。 实验室 我创建了以下 View 来测试角色检测: @if (User.IsInRole("Administr
我在周末实现了一个带有自定义身份验证的自定义 RoleProvider。使用 Silverlight 业务模板,我能够在服务请求上放置 [RequiresRole("Admin")] 属性: [Req
我在我的 Controller 代码和我的共享 _Layout View 中添加和删除角色的用户,我正在使用 User.IsInRole 相应地检查和删除链接,但只有当用户退出网站然后 User.Is
有人知道如何使 WindowsPrincipal.IsInRole("domain\role") 与事件目录通用组一起工作吗? 假设当前用户是名为域的域中名为角色的组的成员,并且该角色组是事件目录中的
我有一个连接到 WCF 服务的 WPF 客户端,我想锁定某些功能,以便只有某些用户可以执行某些操作。 WCF 服务在执行服务方法时模拟客户端用户。操作系统为Windows XP。 我正在阅读 this
我正在使用 WindowsPrincipal 的 IsInRole 方法检查 WPF 和 Winforms 应用程序中的组成员身份。我正在生成一个身份 token ,它可以用于任何 AD 用户(不一定
这个问题在这里已经有了答案: Usage of User.IsInRole() in a View (2 个答案) 关闭 7 年前。 我的页面上有 3 个角色,所以我想访问与两个角色的链接。 我试试
我有一个非常基本的 MVC4 应用程序,它通过对象实体模型连接到数据库。应用程序和数据库之间的连接正常,因为用户能够登录并且 Global.asax 中的以下代码正在运行(它成功地从数据库中检索用户角
我无法让我的注册脚本在 PowerShell (admin) 中运行。它可以在 Powershell ISE 中运行,但随后脚本卡在“正在连接到服务器...” 我做错了什么吗? 这是脚本: $Err
其实很简单的问题: 我目前已禁用IIS匿名访问,用户将使用其Windows登录名自动登录。但是,调用User.IsInRole(“角色名称”)将返回false。我仔细检查了User.Identity.
我需要实现基于 Active Directory 组的授权。有人可以解释一下下面的代码是如何工作的吗? User.IsInRole("Human Resouces") 问题: Is role "Hum
...我想在用户是管理员时显示“删除”按钮,在用户是贡献者时显示“添加项目”按钮:
我正在实现一个我想在多个应用程序中使用的自定义 IPrincipal。我有 2 个关于 IsInRole 方法的问题... 1) 是否建议我将自定义 RoleProvider 与自定义 IPrinci
在 ASP.NET MVC 5 应用程序中,我使用 Unity 容器创建 OWIN/Identity 对象并解析所有依赖项。 问题是当我注册为新用户并给他分配这样的角色时 userManager.Ad
我正在尝试构建自定义验证,以检查角色是否包含用户。我在使用字符串数组时遇到问题,检查它是否包含特定值的最佳方法是什么? public string[] AuthRoles { get; set
我有一个严重依赖用户授权的应用程序。在其中,我使用 IPrincipal.IsInRole() 检查用户是否在正确的组中: IPrincipal principal = Thread.CurrentP
我正在处理基于声明的身份验证,它运行良好。现在我想添加角色授权。我有用户的角色声明(例如“管理员”) When the IsInRole() method is called, there is a
我是一名优秀的程序员,十分优秀!