我在MVC中使用[Authorize]
属性时遇到问题。
以下是采取的步骤:
TestAD1
TestGroup1
Windows Authentication
作为身份验证方法的MVC项目[Authorize]
这些步骤工作正常,当我将authorize属性更改为:
时,一切都像预期的那样 [Authorize(Roles=@"TestAD1\TestGroup1")]
我总是得到"您无权查看此目录或页面。"
我知道以下解决方案,但它不符合我的项目需求:
*写我自己的RoleProvider
*使用web.config管理权限
答案 0 :(得分: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 Roles使用[Authorize]属性执行授权:https://github.com/dushyantgill/VipSwapper/tree/master/TrainingPoint
重新设置当前设置,Azure AD中的安全组名称不会作为角色声明进行传输。 Windows身份验证也不能与Azure AD连接您的云服务身份验证。
希望这会有所帮助。
如果你遇到困难,请告诉我。