【问题标题】:Update user attributes on Azure AD更新 Azure AD 上的用户属性
【发布时间】:2019-12-10 02:19:43
【问题描述】:

我正在使用 Azure AD 进行用户身份验证,并使用用户流进行登录和登录, 我们还有一些通过用户流程本身设置的自定义属性。 我正在尝试使用他的访问令牌为用户更新这些自定义属性 现在阅读我遇到的 Azure Ad graph apis 的 azure ad 文档 但是用户的访问令牌令牌无效(请求如下所示), 我假设我们在这里需要一些管理员令牌,但基于我们需要的要求 使用用户访问令牌本身。

(PATCH) https://graph.windows.net/{myorganization}/users/{user_object_id}?api-version=1.6
Authorization: bearer --user access_token which we get after using the login user flow---

Request body:
{
   "someCustomAttribute": "some updated value"
}

Response:
{
"odata.error": {
    "code": "Authentication_ExpiredToken",
    "message": {
        "lang": "en",
        "value": "Your access token has expired. Please renew it before submitting the request."
    }
}

}

我确保令牌有效且未过期(使用护照测试)。

【问题讨论】:

标签: azure-devops azure-active-directory azure-ad-b2c azure-ad-graph-api azure-devops-rest-api


【解决方案1】:

针对 B2C 应用程序注册进行 B2C 用户身份验证。 B2C 应用注册不能作为资源访问 Graph API。

如果您希望用户能够修改他们的个人资料信息,请改用个人资料编辑用户流程。

如果您作为管理员想要管理用户属性,请在您的 B2C 租户中注册 AAD 应用程序注册并将其配置为访问 AAD Graph API。使用客户端凭证流获取令牌服务器端对B2C目录进行操作。

【讨论】:

    【解决方案2】:

    您必须acquire an access token for the Azure AD Graph API using the Azure AD endpoint -- 而不是 Azure AD B2C 端点。

    您可以使用任何 Azure AD 流,例如隐式授权,例如授权码授予,客户端凭据授予——为此。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-10-16
      • 2021-09-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-21
      相关资源
      最近更新 更多