Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Abrufen eines sicheren String-Wertes aus dem Systems Manager Parameter Store
In CloudFormation können Sie sensible Daten wie Passwörter oder Lizenzschlüssel verwenden, ohne sie direkt in Ihren Vorlagen offenzulegen, indem Sie die sensiblen Daten als "sichere Zeichenfolge" im AWS Systems Manager Parameter Store speichern. Eine Einführung in den Parameterspeicher finden Sie unter AWS Systems Manager Parameterspeicher im AWS Systems Manager Benutzerhandbuch.
Um einen sicheren String des Parameterspeichers in Ihrer Vorlage zu verwenden, verwenden Sie eine dynamische Referenz ssm-secure . CloudFormation speichert niemals den tatsächlichen sicheren String-Wert. Stattdessen speichert es nur die wörtliche dynamische Referenz, die den Klartext-Parameternamen der sicheren Zeichenfolge enthält.
Bei der Erstellung oder Aktualisierung von Stacks greift CloudFormation bei Bedarf auf den Wert der sicheren Zeichenfolge zu, ohne den tatsächlichen Wert offenzulegen. Sichere Zeichenfolgen können nur für Ressourceneigenschaften verwendet werden, die das dynamische Referenzmuster ssm-secure unterstützen. Weitere Informationen finden Sie unter Ressourcen, die dynamische Parametermuster für sichere Zeichenfolgen unterstützen.
CloudFormation gibt den tatsächlichen Parameterwert für sichere Zeichenketten in API-Aufrufen nicht zurück. Sie gibt nur die wörtliche dynamische Referenz zurück. Beim Vergleich von Änderungen mithilfe von Change Sets vergleicht CloudFormation nur die wörtliche dynamische Referenzzeichenfolge. Es löst die tatsächlichen sicheren String-Werte nicht auf und vergleicht sie nicht.
Bei der Verwendung von dynamischen ssm-secure-Referenzen gibt es einige wichtige Dinge zu beachten:
-
CloudFormation kann nicht auf Parameter Store-Werte von anderen AWS-Kontenzugreifen.
-
CloudFormation unterstützt nicht die Verwendung von Systems Manager Parameter-Labels oder öffentlichen Parametern in dynamischen Referenzen.
-
In den Regionen
cn-north-1undcn-northwest-1werden sichere Zeichenfolgen von Systems Manager nicht unterstützt. -
Dynamische Referenzen für sichere Werte, z. B.
ssm-secure, unterstützen derzeit keine benutzerdefinierten Ressourcen. -
Wenn CloudFormation ein Stack-Update zurücksetzen muss und die zuvor angegebene Version eines sicheren String-Parameters nicht mehr verfügbar ist, schlägt der Rollback-Vorgang fehl. In solchen Fällen haben Sie zwei Möglichkeiten:
-
Verwenden Sie
CONTINUE_UPDATE_ROLLBACK, um die Ressource zu überspringen. -
Erstellen Sie den sicheren String-Parameter im Systems Manager Parameter Store neu und aktualisieren Sie ihn, bis die Parameterversion die in der Vorlage verwendete Version erreicht. Dann verwenden Sie
CONTINUE_UPDATE_ROLLBACK, ohne die Ressource zu überspringen.
-
Ressourcen, die dynamische Parametermuster für sichere Zeichenfolgen unterstützen
Zu den Ressourcen, die das dynamische Referenzmuster ssm-secure unterstützen, gehören:
| Ressource | Eigenschaftstyp | Eigenschaften |
|---|---|---|
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
Referenzmuster
Um einen sicheren String-Wert aus dem Systems Manager Parameter Store in Ihrer CloudFormation-Vorlage zu referenzieren, verwenden Sie das folgende Referenzmuster ssm-secure .
{{resolve:ssm-secure:parameter-name:version}}
Ihre Referenz muss sich an das folgende reguläre Ausdrucksmuster für Parametername und Version halten:
{{resolve:ssm-secure:[a-zA-Z0-9_.\-/]+(:\d+)?}}
parameter-name-
Der Name des Parameters im Parameter Store. Der Parametername unterscheidet Groß- und Kleinschreibung.
Erforderlich
version-
Eine ganze Zahl, die die Version des zu verwendenden Parameters angibt. Wenn Sie nicht die genaue Version angeben, verwendet CloudFormation bei jedem Erstellen oder Aktualisieren des Stacks die neueste Version des Parameters. Weitere Informationen finden Sie unter Arbeiten mit Parameterversionen im AWS Systems Manager Benutzerhandbuch.
Optional.
Beispiel
Das folgende Beispiel verwendet eine dynamische Referenz ssm-secure, um das Passwort für einen IAM-Benutzer auf eine sichere Zeichenkette zu setzen, die im Parameterspeicher gespeichert ist. Wie angegeben, verwendet CloudFormation die Version des 10 Parameters für Stack- und Change-Set-Operationen.IAMUserPassword
JSON
"MyIAMUser": { "Type": "AWS::IAM::User", "Properties": { "UserName": "MyUserName", "LoginProfile": { "Password": "{{resolve:ssm-secure:IAMUserPassword:10}}" } } }
YAML
MyIAMUser: Type: AWS::IAM::User Properties: UserName: 'MyUserName' LoginProfile: Password: '{{resolve:ssm-secure:IAMUserPassword:10}}'