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). Эту информацию вы можете узнать у администратора вашей облачной инфраструктуры.