Как обновить существующего пользователя в Azure AD с помощью Microsoft Graph API - PullRequest
1 голос
/ 06 июня 2019

Я добавил пользователя в лазурное объявление.Теперь с помощью graph api я хочу обновить отображаемое имя или сказать пароль.Я имею в виду это руководство https://docs.microsoft.com/en-us/graph/api/user-update?view=graph-rest-1.0&tabs=cs

Прежде всего, я не уверен, что использую правильный URL-адрес для обновления пользователя, но ниже я использую:

 https://graph.microsoft.com/v1.0/users/john@<myorg>.onmicrosoft.com

IЯ передаю userName пользователя, которого я хочу обновить в URL.Пожалуйста, дайте мне знать, если это не правильно.

Я включаю OAuth token в качестве токена на предъявителя в свой запрос и публикую следующий json:

{
  "accountEnabled": true,

  "displayName": "john12"

}

Из приведенного выше json я хочу изменить отображаемое имя с johnдо john12.Но я получаю сообщение об ошибке ниже:

{
    "error": {
        "code": "Request_BadRequest",
        "message": "Specified HTTP method is not allowed for the request target.",
        "innerError": {
            "request-id": "536fd7c1-db46-4927-9732-169da778811c",
            "date": "2019-06-06T04:58:26"
        }
    }
}

Может кто-нибудь, пожалуйста, дайте мне знать, как я могу обновить существующие свойства пользователя.Спасибо

1 Ответ

1 голос
/ 06 июня 2019

Скорее всего, вы не используете HTTP-метод PATCH.Я говорю это, глядя на сообщение об ошибке Specified HTTP method is not allowed for the request target.

Если вы используете что-то отличное от PATCH, например POST, вы получите это сообщение об ошибке.

Тело JSONпо вашему запросу выглядит нормально.Я попытался обновить существующего пользователя аналогичным JSON и отправить запрос PATCH из Microsoft Graph Explorer , и он работал нормально.

Я мог воспроизвести то же сообщение об ошибке, которое вы видите, когдаЯ использовал вызов POST или PUT из Microsoft Graph Explorer.

enter image description here

Хотя тот же URL-адрес запроса с тем же телом JSON работал нормально, как только я изменил POST на PATCH.Позже, снова запросив пользователя (GET), я увидел, что displayName было обновлено правильно

enter image description here

...