Авторизация
Для работы с API продуктов Selectel используются:
-
IAM-токены:
- X-Auth-Token (scope: account) — для управления ресурсами, привязанными к аккаунту;
- X-Auth-Token (scope: project) — для управления ресурсами, привязанными к проекту.
-
статические токены:
- X-Token — для управления ресурсами, привязанными к аккаунту.
Используемый токен зависит от продукта.
Адрес (URL) для обращения в запросах можно посмотреть в списке URL.
Вы можете ограничить доступ к API по адресам, которые включают в себя https://api.selectel.ru
.
X-Auth-Token (scope: account)
X-Auth-Token (scope: account) можно выписать только сервисному пользователю.
X-Auth-Token (scope: account) — IAM-токен, который дает доступ к управлению большинством продуктов Selectel и объектами OpenStack API наравне с логином и паролем в панели управления my.selectel.ru. Позволяет управлять ресурсами аккаунта.
Токен передается в заголовке X-Auth-Token
в каждом запросе.
Время жизни токена — 24 часа.
Токен позволяет управлять:
- пользователями и ролями (IAM) и федерациями;
- балансом и статистикой потребления;
- выделенными серверами;
- объектами OpenStack API (облачными серверами, сетевыми дисками и другими) с помощью API проекты и ресурсы облачной платформы, квоты и лимиты проекта, подробнее в документации OpenStack;
- CDN;
- DNS-хостингом (legacy);
- мобильной фермой.
Получить X-Auth-Token (scope: account)
Выписывать X-Auth-Token (scope: account) можно сервисным пользователям с ролями:
- Администратор аккаунта;
- Администратор биллинга;
- Администратор пользователей;
- Наблюдатель аккаунта.
Если вы используете 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.selcloud.ru/identity/v3/auth/tokens'
Укажите:
<username>
— имя сервисного пользователя. Посмотреть имя можно в панели управления: в верхнем меню нажмите Аккаунт и перейдите в раздел Пользователи → вкладка Сервисные пользователи (раздел доступен только Владельцу аккаунта и Администратору пользователей);<account_id>
— номер аккаунта панели управления. Можно посмотреть в панели управления в правом верхнем углу;<password>
— пароль сервисного пользователя, можно посмотреть при создании пользователя или изменить на новый.
При успешной авторизации вернется ответ с кодом 201 Created
в формате:
HTTP/2 201
X-Subject-Token: token
- В заголовке
X-Subject-Token
посмотрите токен.
X-Auth-Token (scope: project)
X-Auth-Token (scope: project) можно выписать только сервисному пользователю.
X-Auth-Token (scope: project) — IAM-токен, который дает доступ к управлению большинством продуктов Selectel и объектами OpenStack API наравне с логином и паролем в панели управления my.selectel.ru. Позволяет управлять ресурсами проекта.
Токен передается в заголовке X-Auth-Token
в каждом запросе.
Время жизни токена — 24 часа.
Токен позволяет управлять:
- выделенными серверами;
- объектами OpenStack API (облачными серверами, сетевыми дисками и другими) с помощью API проекты и ресурсы облачной платформы, ресурсы облачной платформы в проекте, квоты и лимиты проекта, подробнее в документации OpenStack;
- облачной платформой — облачные базы данных, Managed Kubernetes, Container Registry, менеджер секретов (секреты, сертификаты, сертификаты Let’s Encrypt®);
- объектным хранилищем (Swift API и Selectel Storage API);
- DNS-хостингом;
- почтовым сервисом Selectel;
- платформой логов;
- мобильной фер мой.
Получить X-Auth-Token (scope: project)
Выписывать X-Auth-Token (scope: project) можно сервисным пользователям с ролями:
- Администратор аккаунта;
- Администратор биллинга;
- Администратор пользователей;
- Наблюдатель аккаунта;
- Администратор проекта;
- Администратор объектного хранилища;
- Наблюдатель проекта.
Если вы используете 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.selcloud.ru/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 — статический токен, который дает полный доступ к управлению всеми продуктами Selectel, кроме объектов OpenStack API, наравне с логином и паролем в панели управления my.selectel.ru.
Токен передается в запросе в заголовке X-Token
.
Время жизни токена не ограничено.`
Для API, которые не поддерживают X-Auth-Token (scope: account) и X-Auth-Token (scope: project), X-Token является единственным:
Получить X-Token
- В панели управления в верхнем меню нажмите Аккаунт.
- Перейдите в раздел Ключи API.
- Нажмите Добавить ключ.
- Введите название ключа.
- Нажмите Добавить.