Questa è la guida per sviluppatori AWS CDK v2. Il vecchio CDK v1 è entrato in manutenzione il 1° giugno 2022 e ha terminato il supporto il 1° giugno 2023.
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
AWS Cloud Development Kit (AWS CDK) Possono recuperare il valore degli attributi di AWS Systems Manager Parameter Store. Durante la sintesi, AWS CDK produce un token che viene risolto da AWS CloudFormation durante la distribuzione.
AWS CDK Supporta il recupero di valori semplici e sicuri. Puoi richiedere una versione specifica di entrambi i tipi di valore. Per valori semplici, puoi omettere la versione dalla tua richiesta per recuperare la versione più recente. Per i valori sicuri, è necessario specificare la versione quando si richiede il valore dell'attributo secure.
Nota
Questo argomento mostra come leggere gli attributi dal AWS Systems Manager Parameter Store. Puoi anche leggere i segreti di AWS Secrets Manager (vediOttieni un valore da AWS Secrets Manager).
Argomenti
Leggi i valori di Systems Manager al momento dell'implementazione
Per leggere i valori dall'archivio dei parametri di Systems Manager, utilizzare il valueForStringparametro e valueForSecureStringParameteri metodi. Scegliete un metodo in base al fatto che l'attributo desiderato sia una stringa semplice o un valore di stringa sicuro. Questi metodi restituiscono i token, non il valore effettivo. Il valore viene risolto da AWS CloudFormation durante la distribuzione. Di seguito è riportato un esempio:
import * as ssm from 'aws-cdk-lib/aws-ssm';
// Get latest version or specified version of plain string attribute
const latestStringToken = ssm.StringParameter.valueForStringParameter(
this, 'my-plain-parameter-name'); // latest version
const versionOfStringToken = ssm.StringParameter.valueForStringParameter(
this, 'my-plain-parameter-name', 1); // version 1
// Get specified version of secure string attribute
const secureStringToken = ssm.StringParameter.valueForSecureStringParameter(
this, 'my-secure-parameter-name', 1); // must specify version
Attualmente questa funzionalità è supportata da un numero limitato di AWS servizi.
Leggi i valori di Systems Manager al momento della sintesi
A volte è utile fornire un parametro al momento della sintesi. In questo modo, il AWS CloudFormation modello utilizzerà sempre lo stesso valore invece di risolvere il valore durante la distribuzione.
Per leggere un valore dal Systems Manager Parameter Store al momento della sintesi, utilizzate il valueFromLookupmetodo (Python:value_from_lookup
). Questo metodo restituisce il valore effettivo del parametro come I valori di contesto e il AWS CDK valore. Se il valore non è già stato memorizzato nella cache cdk.json
o passato nella riga di comando, viene recuperato dall'account corrente AWS . Per questo motivo, lo stack deve essere sintetizzato con informazioni ambientali esplicite. AWS
Di seguito è riportato un esempio:
import * as ssm from 'aws-cdk-lib/aws-ssm';
const stringValue = ssm.StringParameter.valueFromLookup(this, 'my-plain-parameter-name');
È possibile recuperare solo stringhe di Systems Manager semplici. Le stringhe sicure non possono essere recuperate. Verrà sempre restituita la versione più recente. Non è possibile richiedere versioni specifiche.
Importante
Il valore recuperato finirà nel modello sintetizzato AWS CloudFormation . Questo potrebbe rappresentare un rischio per la sicurezza, a seconda di chi ha accesso ai AWS CloudFormation modelli e del tipo di valore. In genere, non utilizzate questa funzionalità per password, chiavi o altri valori che desiderate mantenere privati.
Scrivi valori in Systems Manager
È possibile utilizzare la AWS CLI AWS Management Console, o un AWS SDK per impostare i valori dei parametri di Systems Manager. Negli esempi seguenti viene utilizzato il comando SSM put-parameter CLI.
aws ssm put-parameter --name "parameter-name" --type "String" --value "parameter-value" aws ssm put-parameter --name "secure-parameter-name" --type "SecureString" --value "secure-parameter-value"
Quando aggiorni un valore SSM già esistente, includi anche l'opzione. --overwrite
aws ssm put-parameter --overwrite --name "parameter-name" --type "String" --value "parameter-value" aws ssm put-parameter --overwrite --name "secure-parameter-name" --type "SecureString" --value "secure-parameter-value"