Получение токена

Токен необходим для получения доступа к контроллеру. Ни один из REST API запросов невозможен без токена.

Способы получения токена

Примечание

Все параметры в командах указаны для примера, при использовании подставляйте актуальные параметры.

  1. Получение запросом к API c использованием curl.

    Команда:

    curl -i \
    -H "Content-Type: application/json" \
    -d '
    { "auth": {
    "identity": {
    "methods": ["password"],
    "password": {
    "user": {
    "name": "admin",
    "domain": { "name": "default" },
    "password": "adminpwd"
    }
    }
    }
    }
    }' \
    http://controller:5000/v3/auth/tokens ; echo
    
  2. Посредством консольной утилиты Openstack Client.

    Команда:

    openstack --os-auth-url http://controller:5000/v3   --os-project-domain-name default --os-user-domain-name default   --os-project-name admin --os-username admin token issue
    

Способы получения токена на проект

Токены на проект предназначены для разрешения на работу в рамках определенного проекта. Они содержат каталог услуг, набор ролей и подробную информацию о проекте, на работу в котором выдается разрешение.

Примечание

Все параметры в командах указаны для примера, при использовании подставляйте актуальные параметры.

  1. Получение токена на проект запросом к API c использованием curl.

    Команда:

    curl -i \
    -H "Content-Type: application/json" \
    -d '
    { "auth": {
    "identity": {
    "methods": ["password"],
    "password": {
    "user": {
    "name": "admin",
    "domain":
    { "name": "default" }
    ,
    "password": "adminpwd"
    }
    }
    },
    "scope": {
    "project": {
    "name": "demo",
    "domain":
    { "name": "default" }
    }
    }
    }
    }' \
    "http://controller:5000/v3/auth/tokens" ; echo
    
  2. Получение токена на проект посредством консольной утилиты Openstack Client.

    Команда:

    openstack --os-username=admin --os-user-domain-name=default --os-password=123456 --os-project-name=admin --os-project-domain-name=default token issue