Авторизация
Токен Selectel
Токен Selectel (ключ API) дает полный доступ к управлению всеми услугами Selectel наравне с логином и паролем от учетной записи панели управления my.selectel.ru.
Токен Selectel используется как основной токен для работы через API с услугами Selectel, у которых нет дополнительной системы авторизации, например, для выделенных серверов или DNS-хостинга, а также для работы с тикетами.
Для управления объектами услуг, у которых есть собственная система авторизации, нужен дополнительный короткоживущий токен. Например, в облачной платформе Selectel для создания любых ресурсов (облачных серверов, дисков и так далее) необходим отдельный токен OpenStack Keystone Identity и используется следующая схема авторизации:
- токен Selectel нужен для работы с проектами и пользователями;
- отдельный токен системы авторизации определенной услуги — для работы с ее ресурсами. Для получения отдельного токена нужен токен Selectel.
Токен Selectel передаётся в запросе в заголовке X-Token. Время жизни токена не ограничено.
Получить токен Selectel
- В панели управления откройте меню в правом верхнем углу и выберите Профиль и настройки.
- Перейдите в раздел Ключи API.
- Нажмите Новый ключ.
- Введите название ключа и нажмите Создать ключ.
Токен для облачной платформы Selectel
Токен для облачной платформы Selectel позволяет работать с ресурсами облачной платформы и объектами OpenStack, например, создавать облачные серверы, диски, сети и так далее.
Для авторизации и работы с OpenStack API используются токены OpenStack Keystone, которые передаются в заголовке X-Auth-Token. Время жизни токена — 24 часа.
С OpenStack API можно работать с помощью методов, которые описаны в документации OpenStack.
URL эндпоинтов зависит от пула:
api.<pool>.selvpc.ru
Например, для работы c OpenStack API в пуле ru-1 используйте URL api.ru-1.selvpc.ru
Получить токен для облачной платформы
- Создайте пользователя проекта и добавьте его в проект с помощью Cloud Management API.
- Получите X-Auth-Token — выполните запрос вида:
curl -i -H "Content-Type: application/json" "https://api.selvpc.ru/identity/v3/auth/tokens" -d ' { "auth": { "identity": { "methods": ["password"], "password": { "user": { "name": "<user_name>", "domain": { "name": "<id_selectel>" }, "password": "<password>" } } }, "scope": { "project": { "name": "<project_name>", "domain": { "name": "<id_selectel>"}}}}}'
Укажите:
<user_name>
— имя пользователя, созданного в проекте;<id_selectel>
— ID аккаунта (номер договора) в панели управления;<password>
— пароль пользователя;<project_name>
— имя проекта.
- В случае успешной авторизации от сервиса авторизации будет получен ответ
201 Created
с заголовкомx-subject-token
, который будет содержать значение токена для авторизации в OpenStack API, например:
HTTP/2 201
x-subject-token: gAABfAzrlSvxr8xoOJ89Q0k98WrZWLcQ