Аутентификация запросов
В зависимости от продукта или его ресурса для работы с API продуктов Servercore и аутентификации запросов вместо логина и пароля используются:
-
IAM-токены — выписываются сервисным пользователям. Время жизни токена — 24 часа. IAM-токены передаются в заголовке
X-Auth-Token
и имеют разную область действия:- IAM-токены для аккаунта (
iam_token_account_scoped
) — для управления ресурсами, привязанными к аккаунту; - IAM-токены для проекта (
iam_token_project_scoped
) — для управления ресурсами, привязанными к проекту;
- IAM-токены для аккаунта (
-
статические токены (
static_token
) — выписываются пользователям панели управления. Время жизни токена не ограничено. Используются для управления ресурсами, привязанными к аккаунту. Передаются в заголовкеX-Token
.
Адрес (URL) для обращения в запросах можно посмотреть в списке URL.
Вы можете ограничить доступ к API по адресам, которые включают в себя https://api.servercore.com
.
IAM-токен для аккаунта (X-Auth-Token)
IAM-токен для аккаунта можно выписать только сервисному пользователю.
Токен передается в заголовке X-Auth-Token
.
IAM-токен для аккаунта (iam_token_account_scoped
) дает доступ к управлению большинством продуктов Servercore и объектами OpenStack API наравне с логином и паролем в панели управления my.servercore.com.
Позволяет управлять ресурсами аккаунта.
Время жизни токена — 24 часа.
Токен позволяет управлять:
- пользователями и ролями (IAM) и федерациями;
- выделенными серверами;
- объектами OpenStack API (облачными серверами, сетевыми дисками и другими) с помощью API проекты и ресурсы облачной платформы, квоты и лимиты проекта, подробнее в документации OpenStack.
Получить IAM-токен для аккаунта
Выписывать IAM-токен для аккаунта можно сервисным пользователям с ролями:
- Администратор аккаунта;
- Администратор биллинга;
- Администратор пользователей;
- Наблюдатель аккаунта.
Если вы используете Windows, в запросах замените одинарные кавычки (''
) на двойные (""
). Мы также рекомендуем использовать для запросов PowerShell и не использовать CMD.
- Выполните запрос:
curl -i -XPOST \
-H 'Content-Type: application/json' \
-d '{"auth":{"identity":{"methods":["password"],"password":{"user":{"name":"<username>","domain":{"name":"<account_id>"},"password":"<password>"}}},"scope":{"domain":{"name":"<account_id>"}}}}' \
'https://cloud.api.servercore.ru/identity/v3/auth/tokens'