【问题标题】:Using personal account (live.com) to get an access token for my app使用个人帐户 (live.com) 为我的应用获取访问令牌
【发布时间】:2020-10-17 04:10:58
【问题描述】:

我在使用密码授权授权端点获取访问令牌时遇到问题。

我在我的 Azure 帐户中创建了一个应用注册,该帐户与我的个人 live.com Microsoft 帐户相关联。

在应用程序设置中,我已将 支持的帐户类型设置为 AzureADandPersonalMicrosoftAccount (任何组织目录(任何 Azure AD 目录 - 多租户)和个人中的帐户) Microsoft 帐户(例如 Skype、Xbox))

当我尝试通过我的个人帐户的用户名/密码使用 https://login.microsoftonline.com/{{TenantId}/oauth2/v2.0/token 端点使用 grant_type=password 进行授权时,我收到以下错误:

AADSTS50034:xxx-xxx 目录中不存在用户帐户 {EmailHidden}。要登录此应用程序,必须将帐户添加到目录中。

我不确定这怎么可能,因为我显然是我的 Azure AD 的唯一成员。

应用程序 Todo Inventory 列在用户个人资料中的应用程序下方,如下所示:

请注意,我可以使用此处文档中描述的身份验证代码流成功获取访问令牌:https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-auth-code-flow

但我想改用密码授权,但我尝试的任何方法似乎都不起作用。

我在这里错过了什么吗..?

【问题讨论】:

    标签: azure-active-directory microsoft-graph-api access-token


    【解决方案1】:

    Microsoft 标识平台不支持个人帐户的资源所有者密码流。 https://docs.microsoft.com/azure/active-directory/develop/v2-oauth-ropc

    Microsoft 身份平台终结点仅支持 Azure AD 租户的 ROPC,不支持个人帐户。这意味着您必须使用特定于租户的端点 (https://login.microsoftonline.com/{TenantId_or_Name}) 或组织端点。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-10-15
      • 1970-01-01
      • 2020-07-27
      • 2018-01-18
      • 2012-09-16
      • 1970-01-01
      • 1970-01-01
      • 2018-03-24
      相关资源
      最近更新 更多