【问题标题】:Get Job info (Job title, Department and Manager ID) from Azure AD in Claims在声明中从 Azure AD 获取职位信息(职位、部门和经理 ID)
【发布时间】:2018-11-23 02:46:11
【问题描述】:

我一直在阅读Azure Active Directory application manifest,但我没有看到任何有关工作信息的信息。

https://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-application-manifest

我能够像下面的答案一样将组添加到索赔中,但我无法获得工作信息。这可能吗?

https://stackoverflow.com/a/50836460/3850405

如果我登录https://portal.azure.com 并查看Azure Active Directory 中的用户,我可以看到信息。

我也可以从Azure Active Directory Graph API获取信息

https://developer.microsoft.com/en-us/graph/graph-explorer#

https://graph.microsoft.com/v1.0/me/

https://graph.microsoft.com/v1.0/me/manager

【问题讨论】:

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


    【解决方案1】:

    那么,当您可以通过图形 API 获取这些信息时,为什么还要考虑将这些信息纳入声明中。您只需执行一次 - 当用户登录并且您的中间件已验证令牌时。然后,您可以调用图形 API 并提取其他信息以将其打包为声明。甚至,仅当您真正需要该信息时。我正在详细说明这一点,因为我们对代币的声明越多,代币就越大。令牌越大,保存该信息的 cookie 就越大。在一天结束时 - 整体信息臃肿。

    说了以上所有内容,您的职位和部门问题就有了解决方案。然而,经理的问题没有解决方案。

    您可以使用custom claims mapping policies in Azure AD 包含职位和部门信息。两个属性 - 职位和部门都在那里并且可以使用。

    即使使用声明映射策略,您也只能获得部分解决方案,因为它不支持管理器链接。您可能真的想查看仅在登录时调用图形 API 的选项并提取您需要的任何其他信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-11-04
      • 2022-11-22
      相关资源
      最近更新 更多