Terraform für Key Protect einrichten
Terraform auf IBM Cloud® ermöglicht die vorhersehbare und konsistente Erstellung von IBM Cloud Diensten, so dass Sie schnell komplexe, mehrschichtige Cloud-Umgebungen nach den Prinzipien von Infrastructure as Code ( IaC ) aufbauen können. Ähnlich wie bei der Verwendung der IBM Cloud CLI oder API und SDKs können Sie die Erstellung, Aktualisierung und Löschung Ihrer Key Protect Instanzen mithilfe der HashiCorp Configuration Language (HCL) automatisieren.
Suchen Sie eine verwaltete Lösung für Terraform on IBM Cloud®? Probieren Sie IBM Cloud® Schematics aus. Mit Schematics können Sie die Terraform-Scripting-Sprache verwenden, mit der Sie vertraut sind. Sie müssen sich jedoch nicht um die Einrichtung und Verwaltung der Terraform-Befehlszeile und des IBM Cloud® Provider-Plug-ins kümmern. Schematics stellt auch vordefinierte Terraform-Vorlagen bereit, die Sie ohne großen Aufwand aus dem IBM Cloud®-Katalog installieren können.
Terraform installieren und Ressourcen für Key Protect konfigurieren
Die Bereitstellung einer neuen Key Protect Dedicated-Instanz ist über die IBM Cloud® Konsolen-UI und die IBM Cloud CLI möglich. Die Erstellung neuer Key Protect Dedicated-Instanzen mit Terraform wird nicht unterstützt. Sie können Terraform jedoch
verwenden, um Ressourcen wie Schlüssel bereitzustellen. Zu diesem Zweck muss die Umgebungsvariable IBMCLOUD_KP_API_ENDPOINT auf den öffentlichen oder privaten API-Endpunkt der spezifischen Key Protect Dedicated-Instanz gesetzt
werden.
Bevor Sie eine Autorisierung mit Terraform erstellen können, müssen Sie folgende Schritte durchführen:
- Vergewissern Sie sich, dass Sie über die erforderlichen Zugriffsrechte verfügen, um Key Protect Ressourcen zu erstellen und mit ihnen zu arbeiten.
- Installieren Sie die Terraform CLI und konfigurieren Sie das IBM Cloud Provider Plug-in für Terraform. Weitere Informationen finden Sie in der Anleitung zu den ersten Schritten mit Terraform auf IBM Cloud®. Das Plug-in abstrahiert die IBM Cloud APIs, die zur Erfüllung dieses Tasks verwendet werden.
- Erstellen Sie eine Terraform-Konfigurationsdatei mit dem Namen
main.tf. In dieser Datei definieren Sie die Ressourcen mit Hilfe der HashiCorp Configuration Language. Weitere Informationen finden Sie in der Terraform-Dokumentation.
-
Erstellen Sie eine Key Protect Instanz, indem Sie das
ibm_resource_instanceRessourcenargument in Ihrermain.tfDatei verwenden.Die Instanz Key Protect im folgenden Beispiel trägt den Namen
my_kpund wurde mit dem gestaffelten Preisplan in der Regionus-southerstellt. Deruser@ibm.comwird in der IAM-Zugriffsrichtlinie die Rolle Manager zugewiesen. Für andere unterstützte Regionen siehe Regionen und Endpunkte.resource "ibm_resource_instance" "kms_instance" { name = "my_kp" service = "kms" plan = "tiered-pricing" location = "us-south" } resource "ibm_iam_user_policy" "policy" { ibm_id = "user@ibm.com" roles = ["Manager"] resources { service = "kms" resource_instance_id = element(split(":", ibm_resource_instance.kms_instance.id), 7) } } -
Nachdem Sie Ihre Konfigurationsdatei erstellt haben, initialisieren Sie die Terraform CLI. Weitere Informationen finden Sie unter Initialisierung von Arbeitsverzeichnissen.
terraform init -
Bereitstellung der Ressourcen aus der Datei
main.tf. Weitere Informationen finden Sie unter Bereitstellung der Infrastruktur mit Terraform.-
Führen Sie
terraform planaus, um einen Terraform-Ausführungsplan zu erstellen und eine Vorschau der vorgeschlagenen Aktionen zu erhalten.terraform plan -
Führen Sie
terraform applyaus, um die im Plan definierten Ressourcen zu erstellen.terraform apply
-
-
Wählen Sie in der Ressourcenliste IBM Cloud die von Ihnen erstellte Instanz Key Protect und notieren Sie sich die Instanz-ID.
-
Überprüfen Sie, ob die Zugriffsrichtlinie erfolgreich zugeordnet wurde. Weitere Informationen finden Sie unter Zugewiesene Zugriffsberechtigungen in der Konsole überprüfen.
Weitere Schritte
Nachdem Sie nun erfolgreich Ihre erste Key Protect Service-Instanz mit Terraform auf IBM Cloud erstellt haben, können Sie zwischen den folgenden Aufgaben wählen: