14 KiB
Список аргументов для инициализации
Перед началом использования любой Terraform провайдер должен быть инициализирован.
В процессе инициализации Terraform провайдера DYNAMIX проверяется корректность переданных аргументов и выполняется авторизация в указанном контроллере облачной инфраструктуры. Подробнее о способах авторизации в платформе DYNAMIX смотри соответствующий раздел.
При инициализации Terraform провайдера DYNAMIX используются следующие аргументы:
Аргумент | Переменная окружения | Описание |
---|---|---|
allow_unverified_ssl | - | Если данный аргумент явно установлен в true , то провайдер не будет проверять SSL сертификаты при взаимодействии с авторизационным сервисом OAuth2 и контроллером облачной платформы.Отключение проверок может быть полезным при работе в доверенной среде, использующей самоподписанные SSL сертификаты. Однако, так как отключение проверок несёт потенциальные риски безопасности, данную настройку следует использовать с осторожностью. Разрешённые значения: false (значение по умолчанию) и true . |
app_id | DYNAMIX_APP_ID | Идентификатор приложения (клиента) для авторизации в контроллере облачной платформы в режиме decs3o или bvs .Аргументы app_id и app_secret являются обязательными для режимов авторизации authenticator=decs3o и authenticator=bvs .Если app_id не задан в tf-файле, то провайдер будет использовать значение из переменной окружения DYNAMIX_APP_ID . |
app_secret | DYNAMIX_APP_SECRET | Секретный код приложения (клиента) для авторизации в контроллере облачной платформы в режиме decs3o или bvs .Аргументы app_id и app_secret являются обязательными для режимов авторизации authenticator=decs3o и authenticator=bvs .Если app_secret не задан в tf-файле, то провайдер будет использовать значение из переменной окружения DYNAMIX_APP_SECRET . |
authenticator | - | Режим авторизации при подключении к контроллеру облачной платформы. Доступные режимы: decs3o , legacy , jwt или bvs .Данный аргумент является обязательным. |
bvs_user | DYNAMIX_BVS_USER | Имя пользователя для авторизации в контроллере облачной платформы в режиме bvs .Аргументы bvs_password и bvs_user являются обязательными для режима авторизации authenticator=bvs .Если bvs_user не задан в tf-файле, то провайдер будет использовать значение из переменной окружения DYNAMIX_BVS_USER . |
bvs_password | DYNAMIX_BVS_PASSWORD | Пароль пользователя для авторизации в контроллере облачной платформы в режиме bvs .Аргументы bvs_user и bvs_password являются обязательными для режима авторизации authenticator=bvs .Если bvs_password не задан в tf-файле, то провайдер будет использовать значение из переменной окружения DYNAMIX_BVS_PASSWORD . |
domain | DYNAMIX_DOMAIN | Имя домена в контроллере облачной платформы в режиме bvs .Данный аргумент является обязательным. Если domain не задан в tf-файле, то провайдер будет использовать значение из переменной окружения DYNAMIX_DOMAIN . |
controller_url | DYNAMIX_CONTROLLER_URL | URL контроллера облачной платформы, через который будет осуществляться управление облачными ресурсами. Данный аргумент является обязательным. |
jwt | DYNAMIX_JWT | JSON Web Token (JWT), который используется для авторизации в контроллере облачной платформы в режиме jwt .Данный аргумент является обязательным для режима авторизации authenticator=jwt .Если jwt не задан в tf-файле, то провайдер будет использовать значение из переменной окружения DYNAMIX_JWT |
oauth2_url | DYNAMIX_OAUTH2_URL | URL авторизационного сервиса OAuth2, который используется для управления доступом пользователей (или программных клиентов) к контроллеру облачной платформы. Данный аргумент является обязательным для режимов авторизации authenticator=decs3o , authenticator=bvs и authenticator=jwt .Если oauth2_url не задан в tf-файле, то провайдер будет использовать значение из переменной окружения DYNAMIX_OAUTH2_URL |
password | DYNAMIX_PASSWORD | Пароль для авторизации в контроллере облачной платформы в режиме legacy .Аргументы password и user являются обязательными для режима авторизации authenticator=legacy .Если password не задан в tf-файле, то провайдер будет использовать значение из переменной окружения DYNAMIX_PASSWORD . |
user | DYNAMIX_USER | Имя пользователя для авторизации в контроллере облачной платформы в режиме legacy .Аргументы user и password являются обязательными для режима авторизации authenticator=legacy .Если user не задан в tf-файле, то провайдер будет использовать значение из переменной окружения DYNAMIX_USER . |
Пример инициализации в режиме авторизации decs3o
Пример инициализации Terraform провайдера DYNAMIX:
provider "dynamix" {
authenticator = "decs3o"
controller_url = "https://ctrl.decort.online"
oauth2_url = "https://oauth2.decort.online:7777"
}
В данном примере используется режим авторизации decs3o
.
Как отмечено выше, в данном режиме требуется указать аргументы app_id
и app_secret
, идентифицирующие пользователя (или приложение-клиент), от лица которого будут выполняться дальнейшие действия. Однако, так как данная информация является конфиденциальной (по сути, она эквивалентна паре имя пользователя : пароль), то в общем случае заносить такого рода данные в tf-файл не следует. Рекомендуется определять в среде запуска Terraform переменные окружения DYNAMIX_APP_ID
и DYNAMIX_APP_SECRET
, из которых провайдер извлечёт нужные данные. Приведенный пример подразумевает, что нужная информация будет получена из этих переменных окружения.
Пользователь, от лица которого Terrafrom будет выполнять действия в облачной платформе, должен заранее создать пару Application ID и Application Secret в авторизационном приложении OAuth2. Именно эти значения, а также URL авторизационного приложения Oauth2, должны присваиваться аргументам app_id
, app_secret
и oauth2_url
соответственно для успешной инициализации провайдера.
Также обратите внимание на формат задания аргументов controller_url
и oauth2_url
. В общем случае они должны содержать идентификатор протокола (https://) и сетевой порт, если он отличается от порта по умолчанию (в примере для авторизационного сервиса OAuth2 указан порт 7777). Эту информацию вы можете узнать у администратора вашей облачной инфраструктуры.
Пример инициализации в режиме авторизации bvs
Пример инициализации Terraform провайдера DYNAMIX:
provider "dynamix" {
authenticator = "bvs"
controller_url = "https://delta.qa.loc"
oauth2_url = "https://bvs-delta.qa.loc:8443"
app_id = "delta"
app_secret = ""
bvs_password = ""
bvs_user = ""
domain = "dynamix"
}
В данном примере используется режим авторизации bvs
.
Как отмечено выше, в данном режиме требуется указать аргументы app_id
- идентификатор площадки - delta, alpha, poc, etc. Можно найти на странице администратора по следующему пути: вкладка безопасность - клиентские сервисы - наименование площадки. app_secret
- пароль площадки. Можно найти на странице администратора по следующему пути: вкладка безопасность - клиентские сервисы - наименование площадки (символ i) - поле "Пароль". Однако, так как данная информация является конфиденциальной, то в общем случае заносить такого рода данные в tf-файл не следует. Рекомендуется определять в среде запуска Terraform переменные окружения DYNAMIX_APP_ID
и DYNAMIX_APP_SECRET
, из которых провайдер извлечёт нужные данные. Приведенный пример подразумевает, что нужная информация будет получена из этих переменных окружения.
Также обязательными аргументами являются: bvs_user
- имя пользователя, bvs_password
- пароль пользователя. Рекомендуется не заносить их в tf-файл, а определять в среде запуска Terraform переменные окружения DYNAMIX_BVS_USER
и DYNAMIX_BVS_PASSWORD
, из которых провайдер извлечёт нужные данные. Приведенный пример подразумевает, что нужная информация будет получена из этих переменных окружения.
Домен для подключения domain
- указывается наименование площадки. Данный аргумент является обязательным. Рекомендуется не заносить его в tf-файл, а определять в среде запуска Terraform переменную окружения DYNAMIX_DOMAIN
, из которой провайдер извлечёт нужные данные. Приведенный пример подразумевает, что нужная информация будет получена из этих переменных окружения.
Пользователь, от лица которого Terrafrom будет выполнять действия в облачной платформе, должен заранее получить от администратора Application ID и Application Secret, bvs user и bvs password, а также domain. А также осуществить первичный вход на платформу посредством браузера.
Также обратите внимание на формат задания аргументов controller_url
и oauth2_url
. В общем случае они должны содержать идентификатор протокола (https://) и сетевой порт, если он отличается от порта по умолчанию (в примере для авторизационного сервиса OAuth2 указан порт 8443). Эту информацию вы можете узнать у администратора вашей облачной инфраструктуры.