Аутентификация запросов
В зависимости от продукта или его ресурса для работы с 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.com/identity/v3/auth/tokens'
Укажите:
<username>
— имя сервисного пользователя. Посмотреть имя можно в панели управления: в верхнем меню нажмите Аккаунт и перейдите в раздел Пользователи → вкладка Сервисные пользователи (раздел доступен только Владельцу аккаунта и Администратору пользователей);<account_id>
— номер аккаунта панели управления. Можно посмотреть в панели управления в правом верхнем углу;<password>
— пароль сервисного пользователя, можно посмотреть при создании пользователя или изменить на новый.
При успешной авторизации вернется ответ с кодом 201 Created
в формате:
HTTP/2 201
X-Subject-Token: token
- В заголовке
X-Subject-Token
посмотрите токен.
IAM-токен для проекта (X-Auth-Token)
IAM-токен для проекта можно вып исать только сервисному пользователю.
Токен передается в заголовке X-Auth-Token
.
IAM-токен для проекта (iam_token_project_scoped
) дает доступ к управлению большинством продуктов Servercore и объектами OpenStack API наравне с логином и паролем в панели управления my.servercore.com.
Позволяет управлять ресурсами проекта.
Время жизни токена — 24 часа.
Токен позволяет управлять:
- выделенными серверами;
- объектами OpenStack API (облачными серверами, сетевыми дисками и другими) с помощью API проекты и ресурсы облачной платформы, ресурсы облачной платформы в проекте, квоты и лимиты проекта, подробнее в документации OpenStack;
- облачной платформой — облачные базы данных, Managed Kubernetes, менеджер секретов (секреты, сертификаты);
- объектным хранилищем (Swift API).
Получить 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":{"project":{"name":"<project_name>","domain":{"name":"<account_id>"}}}}}' \
'https://cloud.api.servercore.com/identity/v3/auth/tokens'
Укажите:
<username>
— имя сервисного пользователя. Посмотреть имя можно в панели управления: в верхнем меню нажмите Аккаунт и перейдите в раздел Пользователи → вкладка Сервисные пользователи (раздел доступен только Владельцу аккаунта и Администратору пользователей);<account_id>
— номер аккаунта панели управления. Можно посмотреть в панели управления в правом верхнем углу;<password>
— пароль сервисного пользователя, можно посмотреть при создании пользователя или изменить на новый;<project_name>
— имя проекта.
При успешной авторизации вернется ответ с кодом 201 Created
в формате:
HTTP/2 201
X-Subject-Token: token
- В заголовке
X-Subject-Token
посмотрите токен.
Статический токен (X-Token)
X-Token можно выписать только пользователю панели управления.
Токен передается в запросе в заголовке X-Token
.
Статический токен (static_token
) дает полный доступ к управлению всеми продуктами Servercore, кроме объектов OpenStack API, наравне с логином и паролем в панели управления my.servercore.com.
Время жизни токена не ограничено.`
Для API, которые не поддерживают IAM-токен для аккаунта и IAM-токен для проекта, X-Token является единственным:
Получить статический токен
- В панели управления в верхнем меню нажмите Аккаунт.
- Перейдите в раздел Ключи API.
- Нажмите Добавить ключ.
- Введите название ключа.
- Нажмите Добавить.