Наша организация использует SAML для SSO в Google Apps. Чтобы использовать SSO, мы должны управлять функциональностью паролей изменений с помощью API. Поскольку API Provisioning API устарел в пользу API каталогов Admin SDK, я развиваюсь против этого API.Какие привилегии необходимы для вызова directory.user.update api?
Поток, который я разрабатываю, заключается в том, что конечный пользователь войдет в систему с помощью Google OAuth2 в мое приложение. Затем, используя токен доступа пользователей, я пытаюсь вызвать API https://www.googleapis.com/admin/directory/v1/users/, чтобы поместить новый пароль, но я получаю сообщение об ошибке 403 «Не авторизовано для доступа к этому ресурсу/api».
Мой вопрос: какая привилегия требуется для того, чтобы пользователь мог обновить свой собственный пароль? При вызове этого API с помощью GET я могу успешно получить информацию о моем пользователе, но попытка сменить новый пароль (или любое другое поле) не удастся.
Вот пример моего запроса и ответа: Запрос:
PUT https://www.googleapis.com/admin/directory/v1/users/user%40domain.org?key={YOUR_API_KEY}
Content-Type: application/json
Authorization: Bearer ya29.AHES6ZT_7onp48edpClD72X-*************************
X-JavaScript-User-Agent: Google APIs Explorer
{
"password": "wlKsf.##2af"
}
Ответ:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "forbidden",
"message": "Not Authorized to access this resource/api"
}
],
"code": 403,
"message": "Not Authorized to access this resource/api"
}
}
Джей, спасибо за ответ, что имеет смысл, что я не могу изменить свой пароль. Я просто тестировал тестовую учетную запись, и она работала правильно. –