【问题标题】:Access Azure Enterprise Apps using Microsoft Graph使用 Microsoft Graph 访问 Azure 企业应用
【发布时间】:2020-07-21 11:09:18
【问题描述】:

我正在尝试获取此页面上列出的应用程序列表:https://myapplications.microsoft.com/(必须针对 AAD 租户进行身份验证才能查看这些应用程序)。

我正在使用 SPFx,并认为我可以使用以下 microsoft graph 端点来执行此操作; https://docs.microsoft.com/en-us/graph/api/application-list

该端点似乎只返回自定义应用程序注册,而不是 Microsoft Teams 或 Yammer 等其他应用程序。

我看到所有应用页面使用以下端点来获取它的列表; https://myapplications.microsoft.com/api/me/getExpandedAssignedWorkspaces - 但它不喜欢我的 AAD 令牌 (401)。

有什么想法吗?

【问题讨论】:

    标签: azure-active-directory microsoft-graph-api spfx


    【解决方案1】:

    通过使用我浏览器的开发者工具并跟踪所有请求,我发现它实际上使用了一个 id 令牌。

    然后我可以使用 id_token 调用 API:

    https://myapplications.microsoft.com/api/me/getExpandedAssignedWorkspaces 不是已发布的 API,客户端 ID 为 2793995e-0a7d-40d7-bd35-6968ba142197 的应用程序不是公共应用程序。因此,您可以使用OpenID Connect 来获取 id 令牌。

    您需要生成如下所示的 URL:

    https://login.microsoftonline.com/{your_tenant_id}/oauth2/authorize?response_type=id_token&client_id=2793995e-0a7d-40d7-bd35-6968ba142197&redirect_uri=https%3A%2F%2Fmyapplications.microsoft.com&state={new_guid}&nonce={new_guid}
    

    然后您将能够使用开发者工具查看 id 令牌。

    【讨论】:

    • 您将如何以编程方式获取该 id 令牌,例如从 SPFx 获取?
    猜你喜欢
    • 1970-01-01
    • 2018-01-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-29
    • 1970-01-01
    • 2020-05-19
    • 1970-01-01
    相关资源
    最近更新 更多