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

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

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

我想要做的是为某些用户定义自定义角色。例如,将 JohnDoe@contoso 标记为 “门户管理员” 或将 SarahJones@contoso 标记为 “站点管理员” > - 我想在不干扰 AD 角色的情况下做到这一点,因为我没有完全访问 AD 内部的权限。

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


更新 1:我可以部署 custom role provider并将其连接到不同的数据库,但我想知道是否有更直接的方法来做到这一点。

最佳答案

如果您使用支持 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/

完成后,将为您的应用启用身份验证,您可以在门户中配置 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

访问 list :

enter image description here

关于c# - 在 ASP.NET MVC 和 Azure AD 中创建自定义用户角色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34054502/

相关文章:

c# - 如何从字符串中获取第一组字母字符?

javascript - 显示加载程序直到整个页面在 asp.net 中完全加载

c# - 使用 ASP.NET MVC 获取用户的本地路径

c# - 如何在 Visual C# .NET Web 元素中添加对所有 Web 窗体的 CSS 样式表引用

c# - 弱引用和非弱引用字典

c# - 如何将自定义处理程序仅应用于特定文件夹

asp.net-mvc - 验证传播到相关对象

asp.net-mvc - MVC 中的单选按钮选择事件

c# - 使用网络表单的 Braintree 付款

c# - 在 C# 中一般创建对象