GitLab CE API: проверьте, есть ли у используемого токена права администратора

Я работаю над модулем Python для GitLab API. Есть ли возможность проверить, если пользователь с private token у вас есть права администратора на сервере GitLab?

Один из способов - получить что-то от API, например, от одного пользователя, и проверить, есть ли в нем элементы, которые может видеть только администратор. two_factor_enabled, Но есть ли лучший, более простой способ?

3 ответа

Решение

Согласно API помочь is_admin ключ теперь включен для всех однопользовательских запросов API, хотя он не упоминается в документации API.

Я только что проверил это с API v4 на gitlab.com с запросом:

curl --header "PRIVATE-TOKEN: Token" https://gitlab.com/api/v4/users/###

и ответ JSON включен "is_admin":false для указанного пользователя с идентификатором ###,

Может выполнять запрос, который работает только для администраторов, например:

curl --header "PRIVATE-TOKEN: Token" https://my.gitlab.host/api/v4/users?admins=true

Потому чтоadmins=trueработает только для пользователей с правами администратора, если вы получили какой-либо ответ, это означает, что токен имеет права администратора.

(из: GitLab Docs: API пользователей — для администраторов )

Если ты GET /users и передать sudo Параметр вы получите обратно JSON, который включает в себя is_admin атрибут с логическим значением. Вы можете использовать это Вот документация

Другие вопросы по тегам