Как обрабатывать аутентификацию для поставщиков без использования общих учетных данных, когда несколько человек используют Altantis/Terraform
Мы используем Atlantis в Bitbucket VCS для запуска Terraform v0.12.28. Мы терраформируем Cloudflare . Многие люди имеют доступ к репозиторию битбакетов и запускают Atlantis. Однако в настоящее время мы используем общий токен API Cloudflare для аутентификации в Cloudflare, который настраивается в файле provider.tf. Значения сохраняются и извлекаются из AWS SSM.
Есть ли способ динамически передавать разные учетные данные во время плана / применения? Мне нужно удалить общий токен API Cloudflare и заставить пользователей запускать план / применять со своими собственными учетными данными Cloudflare. Их учетные данные не должны быть доступны другим пользователям или отображаться в репо.
### Inside provider.tf ###
provider "cloudflare" {
version = "~>2.0"
api_token = data.aws_ssm_parameter.CloudflareApiTokenForTerraform.value
account_id = data.aws_ssm_parameter.CloudflareAccountID.value
}
provider "aws" {
# Allow any 2.x version of the AWS provider
version = "~>2.0"
region = "us-east-1"
profile = "temp-profile"
max_retries = 1
}
### Inside data.tf ###
data "aws_ssm_parameter" "CloudflareAccountID" {
name = "CloudflareAccountID"
}
data "aws_ssm_parameter" "CloudflareApiTokenForTerraform" {
name = "CloudflareApiTokenForTerraform"
}
Любая помощь будет принята с благодарностью! Спасибо!