Sie können geheime verschlüsselte Werte auf Terraform-Konfigurationen anwenden, die Sie zu Cloud Assembly-Cloud-Vorlagendesigns hinzufügen.
- Fügen Sie in Ihrem Git-Repository eine Terraform-Konfigurationsquelldatei hinzu, die die geheimen Eigenschaften als Variablen behandelt.
In diesem Beispiel einer Terraform-Konfigurationsquelle fungieren die API und Anwendungsschlüssel als geheime Variablen.
variable "datadog_api_key" { description = "Datadog API Key" } variable "datadog_app_key" { description = "Datadog App Key" } provider "datadog" { api_key = "${var.datadog_api_key}" app_key = "${var.datadog_app_key}" } # Create a new monitor resource "datadog_monitor" "default" { # ... } # Create a new timeboard resource "datadog_timeboard" "default" { # ... }
- Navigieren Sie in Cloud Assembly zu und geben Sie die geheimen Eigenschaftswerte ein.
Fügen Sie geheime Namen und entsprechende Werte hinzu. Für die Namen sollte einfach derselbe Name wie der Variablenname aus der Terraform-Quelle eingegeben werden.
Weitere Informationen finden Sie gegebenenfalls unter Geheime Cloud Assembly-Eigenschaften.
- Importieren Sie in Cloud Assembly die Terraform-Konfiguration zur Verwendung in einer Cloud-Vorlage.
Navigieren Sie zu
und klicken Sie auf .Hinweis: Obwohl die zur Auswahl stehenden Variablen auf der letzten Seite des Assistenten angezeigt werden, müssen Sie die geheimen Variablen nicht als „Vertraulich“ festlegen. Geheime Cloud Assembly-Variablen sind bereits verschlüsselt und benötigen die vom Assistenten angewendete Verschlüsselung nicht.Weitere Informationen finden Sie gegebenenfalls unter Entwerfen für Terraform-Konfigurationen in Cloud Assembly.
Die Beispiel-Cloud-Vorlage sollte dem folgenden Code ähneln:
inputs: datadog_api_key: type: string description: Datadog API Key datadog_app_key: type: string description: Datadog App Key resources: terraform: type: Cloud.Terraform.Configuration properties: variables: datadog_api_key: '${input.datadog_api_key}' datadog_app_key: '${input.datadog_app_key}' providers: [] terraformVersion: 0.12.29 configurationSource: repositoryId: 0fbf8f5e-54e1-4da3-9508-2b701gf25f51 commitId: ed12424b249aa50439kr1c268942a4616bd751b6 sourceDirectory: datadog
- Ändern Sie wie angezeigt
input
im Code-Editor manuell insecret
für die geheimen Werte.terraform: type: Cloud.Terraform.Configuration properties: variables: datadog_api_key: '${secret.datadog_api_key}' datadog_app_key: '${secret.datadog_app_key}'
- Entfernen Sie im Abschnitt
inputs:
des Codes die Eingabeeinträge, die durch die Bindungen an geheime Eigenschaften ersetzt wurden.