【问题标题】:Azure AD attribute user.assignedroles not being sent in SAML response, nullAzure AD 属性 user.assignedroles 未在 SAML 响应中发送,null
【发布时间】:2019-08-29 05:56:32
【问题描述】:

为什么“user.assignedroles”为空,导致无法发送token?

我遇到这种情况知道。即使我可以看到我在 azure 和 Active Directory 中被分配了角色,这个值仍然必须设置为 null。

我可以看到这里 https://github.com/MicrosoftDocs/azure-docs/blob/master/articles/active-directory/develop/active-directory-enterprise-app-role-management.md

它声明关于 user.assignedroles “如果角色声明值为 null,则 Azure AD 不会在令牌中发送此值,这是设计的默认值。”

这就是我知道它为空的方式。 (因为它没有被发送)

【问题讨论】:

    标签: azure-active-directory saml


    【解决方案1】:

    您为您的用户分配了一个值为“null”的角色。

    您可以在Microsoft Graph Explorer查看:

    https://graph.microsoft.com/beta/servicePrincipals/{Object ID of your Enterprise App}
    

    在响应中,检查您分配的角色。如果“value”的值为 null,Azure AD 将不会在令牌中发送此值。

    所以当你update an existing role时,记得将“值”设置为有意义的值。

    【讨论】:

    • { "error": { "code": "Request_BadRequest", "message": "服务主体上的一个或多个属性与应用程序对象不匹配。", "innerError": { "请求ID”:“81400867-7f8b-45b5-88e7-0380ce3fd7f6”,“日期”:“2019-08-29T20:15:53”}}}
    • 我创建了一个单独的问题来跟踪我在尝试上述建议时遇到的问题stackoverflow.com/questions/57717751/…此功能是否已禁用?如果我可以成功运行 PATCH,我肯定会将此答案标记为正确。我确实认为您有所作为。
    • 嗨@joey,看来这个问题已经解决了。如果我的回答有帮助,您可以接受它作为答案。谢谢!
    • @AllenWu 确实很有帮助。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-11-18
    • 1970-01-01
    • 2015-01-03
    • 1970-01-01
    • 2022-11-11
    • 2021-10-01
    • 2021-11-10
    相关资源
    最近更新 更多