MVC Azure AD授权角色

Luk*_*lja 1 authorization azure asp.net-mvc-4 azure-web-sites azure-active-directory

[Authorize]在MVC中使用该属性时遇到问题.

以下是采取的步骤:

  1. 创建名为的Azure Active Directory TestAD1
  2. 在AD中插入多个用户
  3. 创建一个名为的组 TestGroup1
  4. 使用visual studio 2013 Windows Authentication以身份验证方法创建MVC项目
  5. [Authorize]控制器方法上方插入
  6. 发布网站
  7. 在azure门户中,将网站配置为使用azure活动目录作为身份验证

这些步骤工作正常,当我将authorize属性更改为:

[Authorize(Roles=@"TestAD1\TestGroup1")]

我总是得到"你没有权限查看这个目录或页面."

我知道以下解决方案,但它不符合我的项目需求:*编写我自己的RoleProvider *使用web.config来管理权限

Dus*_*ill 5

Luka,我们最近为Azure AD集成应用程序启用了角色声明.获取详细信息:http://www.dushyantgill.com/blog/2014/12/10/roles-based-access-control-in-cloud-applications-using-azure-ad/.这是一个ASP.NET Web应用程序,它使用Azure AD App角色使用[Authorize]属性执行授权:https://github.com/dushyantgill/VipSwapper/tree/master/TrainingPoint

注册您当前的设置,Azure AD中的安全组名称不会作为角色声明进行传输.Windows身份验证也不能与Azure AD连接您的云服务身份验证.

希望这可以帮助.

如果你遇到困难,请告诉我.