加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – 如何通过MVC Azure AD身份验证从AD获取角色?

发布时间:2020-12-15 23:08:34 所属栏目:asp.Net 来源:网络整理
导读:我设置了MVC 4应用程序,并在我们的Azure AD服务器上添加了身份验证,如下所述: http://msdn.microsoft.com/en-us/library/windowsazure/dn151790.aspx 身份验证按预期工作.但是,我没有默认任何角色.应该创建几个AD组,我想使用它们通过MVC中的[Authorize]属性
我设置了MVC 4应用程序,并在我们的Azure AD服务器上添加了身份验证,如下所述: http://msdn.microsoft.com/en-us/library/windowsazure/dn151790.aspx

身份验证按预期工作.但是,我没有默认任何角色.应该创建几个AD组,我想使用它们通过MVC中的[Authorize]属性来限制应用程序.

我真的找不到一个好的地方,甚至开始搞清楚这一点.任何人都可以给我一个大纲或指向我一个很好的教程吗?

我应该提一下,我不是Azure帐户的管理员,因此如果需要进行任何设置,我需要告诉管理员该怎么做.

解决方法

首先,Azure AD返回的令牌当前不包含角色或组的声明,因此您需要从Graph API获取它们.其次,Graph API返回的Azure AD中的角色不一定用于ISV / LoB应用程序,通常您应该使用安全组进行授权.要执行授权,您应该使用Graph API中的checkMemberGroups或getMemberGroups操作,这些操作是可传递的并且对此有效.

如果您按顺序查看以下资源,我认为您的问题将得到解答.您将学习如何对Graph进行身份验证,调用它,以及如何配置应用程序以使用组操作的结果来执行授权:

> Using the Graph API to Query Windows Azure AD – 这是您完成Web SSO之后的第二个演练.
> Authorization with Windows Azure Active Directory
> MVC Sample App for Azure AD Graph
> Blog post describing checkMemberGroups and getMemberGroups
> How do I get role and group membership claims for users signing in via Windows Azure AD? – 关于身份验证方法和管理用户/组的UI,这个过时了,但它仍然有用.请特别注意自定义ClaimsAuthenticationManager部分,它可以让您了解如何尽早将角色/组数据注入ClaimsPrincipal对象,以便可以在[Authorize]属性或其他授权逻辑中使用它.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读