在ASP.NET MVC和Azure AD中创建自定义用户角色

时间:2015-12-02 22:39:49

标签: c# asp.net asp.net-mvc azure azure-active-directory

我正在开发一个使用Azure AD auth开箱即用的ASP.NET MVC应用程序。

我想要做的是为某些用户定义自定义角色。例如,将JohnDoe@contoso标记为"Portal Admin"或将SarahJones@contoso标记为"Site Manager" - 我想这样做而不会干扰AD角色,因为我没有完整访问AD内部。

我可以很好地部署自定义数据库来包含角色。是否有针对此的通用解决方案,还是我必须实现自定义验证层?

更新1:我可以部署custom role provider并将其连接到其他数据库,但我想知道是否有更简单的方法来执行此操作。

1 个答案:

答案 0 :(得分:2)

如果您使用支持ASP.NET MVC的Azure Web Apps,则可以使用Azure Active Directory身份验证机制。这是一篇描述如何设置它的博客文章: https://azure.microsoft.com/en-us/documentation/articles/app-service-mobile-how-to-configure-active-directory-authentication/

完成后,将为您的应用启用auth,您可以在门户中配置AAD应用。有关详细信息,请参阅此博客文章: http://blogs.technet.com/b/ad/archive/2014/12/18/azure-active-directory-now-with-group-claims-and-application-roles.aspx

要修改权限级别,您应该能够使用角色声明。请参阅此示例以获取指导: https://github.com/Azure-Samples/active-directory-dotnet-webapp-roleclaims

访问清单:

enter image description here