Написать в техподдержку Позвонить нам
Админпанель Выход

Содержание статьи:

    Использование OS_PROJECT_ID

    После 27 мая 2020 года сервис авторизации и аутентификации переходит на новый способ идентификации проектов.

    Если вы используете API, клиент командной строки openstack-client или локальную утилиту для настройки инфраструктуры Terraform, вам нужно начать использовать идентификатор (OS_PROJECT_ID) проекта вместо его имени (OS_PROJECT_NAME) до 27 мая включительно.

    Значение OS_PROJECT_ID и других параметров проекта можно посмотреть внутри личного кабинета: https://mcs.mail.ru/app/project/keys/


    Примеры корректного использования параметра:

    API

    curl --location --request POST 'https://infra.mail.ru:5000/v3/auth/tokens' \
    --header 'Content-Type: application/json' \
    --data-raw '{
        "auth": {
            "identity": {
                "methods": [
                    "password"
                ],
                "password": {
                    "user": {
                        "domain": {
                            "id": "users"
                        },
                        "name": "YOUR USER NAME",
                        "password": "YOUR PASSWORD"
                    }
                }
            },
            "scope": {
                "project": {
                    "id": "YOUR PROJECT ID"
                }
            }
        }
    }'


    Провайдер Terraform

    terraform.tf:

    provider "openstack" {
        provider "openstack" {
        # the user name to login with
        user_name = "YOUR USER NAME"
    
        # the password to login with
        password = "YOUR PASSWORD"
    
        # the identifier of project to login with
        tenant_id = "YOUR PROJECT ID"
    
        # the domain identifier where the user is located
        user_domain_id = "users"
    
        # an API endpoint to connect to MCS identity service
        auth_url = "https://infra.mail.ru:5000/v3/"
    
        # use octavia to manage load balancers
        use_octavia = true
    }
    
    


    Командная строка OpenStackClient

    openrc.sh:

    #!/usr/bin/env bash
    
    export OS_AUTH_URL=https://infra.mail.ru:5000/v3/
    
    export OS_PROJECT_ID="YOUR PROJECT ID"
    unset OS_PROJECT_NAME
    unset OS_PROJECT_DOMAIN_ID
    
    # unset v2.0 items in case set
    unset OS_TENANT_ID
    unset OS_TENANT_NAME
    
    export OS_USERNAME="YOUR USER NAME"
    export OS_USER_DOMAIN_NAME="users"
    
    # With Keystone you pass the keystone password.
    echo "Please enter your OpenStack Password for project $OS_PROJECT_ID as user $OS_USERNAME: "
    read -sr OS_PASSWORD_INPUT
    export OS_PASSWORD=$OS_PASSWORD_INPUT
    
    export OS_INTERFACE=public
    export OS_IDENTITY_API_VERSION=3

    Полезна ли была эта статья?