Há mais AWS SDK exemplos disponíveis no GitHub repositório AWS Doc SDK Examples
As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Exemplos de Secrets Manager usando AWS CLI
Os exemplos de código a seguir mostram como realizar ações e implementar cenários comuns usando o AWS Command Line Interface with Secrets Manager.
Ações são trechos de código de programas maiores e devem ser executadas em contexto. Embora as ações mostrem como chamar funções de serviço individuais, é possível ver as ações no contexto em seus cenários relacionados.
Cada exemplo inclui um link para o código-fonte completo, onde você pode encontrar instruções sobre como configurar e executar o código no contexto.
Tópicos
Ações
O código de exemplo a seguir mostra como usar batch-get-secret-value
.
- AWS CLI
-
Exemplo 1: Para recuperar o valor secreto de um grupo de segredos listados por nome
O
batch-get-secret-value
exemplo a seguir obtém os segredos do valor secreto para três segredos.aws secretsmanager batch-get-secret-value \ --secret-id-list
MySecret1
MySecret2
MySecret3
Saída:
{ "SecretValues": [ { "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MySecret1-a1b2c3", "Name": "MySecret1", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLEaaaaa", "SecretString": "{\"username\":\"diego_ramirez\",\"password\":\"EXAMPLE-PASSWORD\",\"engine\":\"mysql\",\"host\":\"secretsmanagertutorial.cluster.us-west-2.rds.amazonaws.com\",\"port\":3306,\"dbClusterIdentifier\":\"secretsmanagertutorial\"}", "VersionStages": [ "AWSCURRENT" ], "CreatedDate": "1523477145.729" }, { "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MySecret2-a1b2c3", "Name": "MySecret2", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLEbbbbb", "SecretString": "{\"username\":\"akua_mansa\",\"password\":\"EXAMPLE-PASSWORD\"", "VersionStages": [ "AWSCURRENT" ], "CreatedDate": "1673477781.275" }, { "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MySecret3-a1b2c3", "Name": "MySecret3", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLEccccc", "SecretString": "{\"username\":\"jie_liu\",\"password\":\"EXAMPLE-PASSWORD\"", "VersionStages": [ "AWSCURRENT" ], "CreatedDate": "1373477721.124" } ], "Errors": [] }
Para obter mais informações, consulte Recuperar um grupo de segredos em um lote no Guia do Usuário do AWS Secrets Manager.
Exemplo 2: Para recuperar o valor secreto de um grupo de segredos selecionados pelo filtro
O
batch-get-secret-value
exemplo a seguir obtém os segredos de valor secreto em sua conta que estãoMySecret
no nome. A filtragem por nome diferencia maiúsculas de minúsculas.aws secretsmanager batch-get-secret-value \ --filters Key="name",Values="MySecret"
Saída:
{ "SecretValues": [ { "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MySecret1-a1b2c3", "Name": "MySecret1", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLEaaaaa", "SecretString": "{\"username\":\"diego_ramirez\",\"password\":\"EXAMPLE-PASSWORD\",\"engine\":\"mysql\",\"host\":\"secretsmanagertutorial.cluster.us-west-2.rds.amazonaws.com\",\"port\":3306,\"dbClusterIdentifier\":\"secretsmanagertutorial\"}", "VersionStages": [ "AWSCURRENT" ], "CreatedDate": "1523477145.729" }, { "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MySecret2-a1b2c3", "Name": "MySecret2", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLEbbbbb", "SecretString": "{\"username\":\"akua_mansa\",\"password\":\"EXAMPLE-PASSWORD\"", "VersionStages": [ "AWSCURRENT" ], "CreatedDate": "1673477781.275" }, { "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MySecret3-a1b2c3", "Name": "MySecret3", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLEccccc", "SecretString": "{\"username\":\"jie_liu\",\"password\":\"EXAMPLE-PASSWORD\"", "VersionStages": [ "AWSCURRENT" ], "CreatedDate": "1373477721.124" } ], "Errors": [] }
Para obter mais informações, consulte Recuperar um grupo de segredos em um lote no Guia do Usuário do AWS Secrets Manager.
-
Para API obter detalhes, consulte BatchGetSecretValue
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar cancel-rotate-secret
.
- AWS CLI
-
Para desativar a rotação automática de um segredo
O
cancel-rotate-secret
exemplo a seguir desativa a rotação automática de um segredo. Para retomar a rotação, liguerotate-secret
.aws secretsmanager cancel-rotate-secret \ --secret-id
MyTestSecret
Saída:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }
Para obter mais informações, consulte Rotate a secret no Guia do usuário do Secrets Manager.
-
Para API obter detalhes, consulte CancelRotateSecret
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar create-secret
.
- AWS CLI
-
Exemplo 1: Para criar um segredo a partir das credenciais em um arquivo JSON
O exemplo de
create-secret
a seguir cria um segredo com base em credenciais em um arquivo. Para obter mais informações, consulte Carregando AWS CLI parâmetros de um arquivo no Guia AWS CLI do usuário.aws secretsmanager create-secret \ --name
MyTestSecret
\ --secret-stringfile://mycreds.json
Conteúdo de
mycreds.json
:{ "engine": "mysql", "username": "saanvis", "password": "EXAMPLE-PASSWORD", "host": "my-database-endpoint.us-west-2.rds.amazonaws.com", "dbname": "myDatabase", "port": "3306" }
Saída:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }
Para obter mais informações, consulte Criar um segredo no Guia do usuário do Secrets Manager.
Exemplo 2: Para criar um segredo
O seguinte exemplo de
create-secret
cria um segredo com dois pares de chave/valor. Quando você insere comandos em um shell de comando, existe o risco de o histórico de comandos ser acessado ou de utilitários terem acesso aos seus parâmetros de comando. Isso é uma preocupação se o comando incluir o valor de um segredo. Para obter mais informações, consulte Mitigar os riscos do uso de ferramentas de linha de comando para armazenar segredos no Guia do Usuário do Secrets Manager.aws secretsmanager create-secret \ --name
MyTestSecret
\ --description"My test secret created with the CLI."
\ --secret-string "{\"user\":\"diegor\",\"password\":\"EXAMPLE-PASSWORD\"}"Saída:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "VersionId": "EXAMPLE1-90ab-cdef-fedc-ba987EXAMPLE" }
Para obter mais informações, consulte Criar um segredo no Guia do usuário do Secrets Manager.
-
Para API obter detalhes, consulte CreateSecret
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar delete-resource-policy
.
- AWS CLI
-
Para excluir a política baseada em recursos anexada a um segredo
O exemplo de
delete-resource-policy
a seguir exclui a política baseada em recurso anexada a um segredo.aws secretsmanager delete-resource-policy \ --secret-id
MyTestSecret
Saída:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }
Para obter mais informações, consulte Autenticação e controle de acesso no Guia do Usuário do Secrets Manager.
-
Para API obter detalhes, consulte DeleteResourcePolicy
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar delete-secret
.
- AWS CLI
-
Exemplo 1: como excluir um segredo
O exemplo de
delete-secret
a seguir exclui um segredo. É possível recuperar o segredo comrestore-secret
até a data e a hora presentes no campo de respostaDeletionDate
. Para excluir um segredo que está replicado em outras regiões, primeiro remova suas réplicas comremove-regions-from-replication
e então chamedelete-secret
.aws secretsmanager delete-secret \ --secret-id
MyTestSecret
\ --recovery-window-in-days7
Saída:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "DeletionDate": 1524085349.095 }
Para obter mais informações, consulte Excluir um segredo no Guia do usuário do Secrets Manager.
Exemplo 2: como excluir um segredo instantaneamente
O exemplo de
delete-secret
a seguir exclui imediatamente um segredo sem uma janela de recuperação. Não é possível recuperar esse segredo.aws secretsmanager delete-secret \ --secret-id
MyTestSecret
\ --force-delete-without-recoverySaída:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "DeletionDate": 1508750180.309 }
Para obter mais informações, consulte Excluir um segredo no Guia do usuário do Secrets Manager.
-
Para API obter detalhes, consulte DeleteSecret
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar describe-secret
.
- AWS CLI
-
Como recuperar os detalhes de um segredo
O exemplo de
describe-secret
a seguir mostra os detalhes de um segredo.aws secretsmanager describe-secret \ --secret-id
MyTestSecret
Saída:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-Ca8JGt", "Name": "MyTestSecret", "Description": "My test secret", "KmsKeyId": "arn:aws:kms:us-west-2:123456789012:key/EXAMPLE1-90ab-cdef-fedc-ba987EXAMPLE", "RotationEnabled": true, "RotationLambdaARN": "arn:aws:lambda:us-west-2:123456789012:function:MyTestRotationLambda", "RotationRules": { "AutomaticallyAfterDays": 2, "Duration": "2h", "ScheduleExpression": "cron(0 16 1,15 * ? *)" }, "LastRotatedDate": 1525747253.72, "LastChangedDate": 1523477145.729, "LastAccessedDate": 1524572133.25, "Tags": [ { "Key": "SecondTag", "Value": "AnotherValue" }, { "Key": "FirstTag", "Value": "SomeValue" } ], "VersionIdsToStages": { "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111": [ "AWSPREVIOUS" ], "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222": [ "AWSCURRENT" ], "a1b2c3d4-5678-90ab-cdef-EXAMPLE33333": [ "AWSPENDING" ] }, "CreatedDate": 1521534252.66, "PrimaryRegion": "us-west-2", "ReplicationStatus": [ { "Region": "eu-west-3", "KmsKeyId": "alias/aws/secretsmanager", "Status": "InSync", "StatusMessage": "Replication succeeded" } ] }
Para obter mais informações, consulte Segredo no Guia do usuário do Secrets Manager.
-
Para API obter detalhes, consulte DescribeSecret
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar get-random-password
.
- AWS CLI
-
Para gerar uma senha aleatória
O
get-random-password
exemplo a seguir gera uma senha aleatória de 20 caracteres que inclui pelo menos uma letra maiúscula, minúscula, número e pontuação.aws secretsmanager get-random-password \ --require-each-included-type \ --password-length
20
Saída:
{ "RandomPassword": "EXAMPLE-PASSWORD" }
Para obter mais informações, consulte Criar e gerenciar segredos no Guia do Usuário do Secrets Manager.
-
Para API obter detalhes, consulte GetRandomPassword
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar get-resource-policy
.
- AWS CLI
-
Para recuperar a política baseada em recursos anexada a um segredo
O exemplo de
get-resource-policy
a seguir recupera a política baseada em recurso anexada a um segredo.aws secretsmanager get-resource-policy \ --secret-id
MyTestSecret
Saída:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "ResourcePolicy": "{\n\"Version\":\"2012-10-17\",\n\"Statement\":[{\n\"Effect\":\"Allow\",\n \"Principal\":{\n\"AWS\":\"arn:aws:iam::123456789012:root\"\n},\n\"Action\": \"secretsmanager:GetSecretValue\",\n\"Resource\":\"*\"\n}]\n}" }
Para obter mais informações, consulte Autenticação e controle de acesso no Guia do Usuário do Secrets Manager.
-
Para API obter detalhes, consulte GetResourcePolicy
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar get-secret-value
.
- AWS CLI
-
Exemplo 1: como recuperar o valor secreto criptografado de um segredo
O exemplo de
get-secret-value
a seguir obtém o valor atual do segredo.aws secretsmanager get-secret-value \ --secret-id
MyTestSecret
Saída:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "SecretString": "{\"user\":\"diegor\",\"password\":\"EXAMPLE-PASSWORD\"}", "VersionStages": [ "AWSCURRENT" ], "CreatedDate": 1523477145.713 }
Para obter mais informações, consulte Recuperar segredos no Guia do usuário do Secrets Manager.
Exemplo 2: como recuperar o valor secreto anterior
O seguinte exemplo de
get-secret-value
recupera o valor secreto anterior:aws secretsmanager get-secret-value \ --secret-id
MyTestSecret
--version-stageAWSPREVIOUS
Saída:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "SecretString": "{\"user\":\"diegor\",\"password\":\"PREVIOUS-EXAMPLE-PASSWORD\"}", "VersionStages": [ "AWSPREVIOUS" ], "CreatedDate": 1523477145.713 }
Para obter mais informações, consulte Recuperar segredos no Guia do usuário do Secrets Manager.
-
Para API obter detalhes, consulte GetSecretValue
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar list-secret-version-ids
.
- AWS CLI
-
Para listar todas as versões secretas associadas a um segredo
O
list-secret-version-ids
exemplo a seguir obtém uma lista de todas as versões de um segredo.aws secretsmanager list-secret-version-ids \ --secret-id
MyTestSecret
Saída:
{ "Versions": [ { "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "VersionStages": [ "AWSPREVIOUS" ], "LastAccessedDate": 1523477145.713, "CreatedDate": 1523477145.713 }, { "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "VersionStages": [ "AWSCURRENT" ], "LastAccessedDate": 1523477145.713, "CreatedDate": 1523486221.391 }, { "CreatedDate": 1.51197446236E9, "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE33333;" } ], "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }
Para obter mais informações, consulte Versão no Guia do Usuário do Secrets Manager.
-
Para API obter detalhes, consulte ListSecretVersionIds
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar list-secrets
.
- AWS CLI
-
Exemplo 1: como listar os segredos na conta
O exemplo de
list-secrets
a seguir mostra uma lista dos segredos em sua conta.aws secretsmanager list-secrets
Saída:
{ "SecretList": [ { "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "LastChangedDate": 1523477145.729, "SecretVersionsToStages": { "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111": [ "AWSCURRENT" ] } }, { "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:AnotherSecret-d4e5f6", "Name": "AnotherSecret", "LastChangedDate": 1523482025.685, "SecretVersionsToStages": { "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222": [ "AWSCURRENT" ] } } ] }
Para obter mais informações, consulte Localizar segredos no Guia do usuário do Secrets Manager.
Exemplo 2: como filtrar os segredos na conta
O exemplo de
list-secrets
a seguir obtém uma lista dos segredos em sua conta que têmTest
no nome. A filtragem por nome diferencia maiúsculas de minúsculas.aws secretsmanager list-secrets \ --filter Key="name",Values="Test"
Saída:
{ "SecretList": [ { "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "LastChangedDate": 1523477145.729, "SecretVersionsToStages": { "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111": [ "AWSCURRENT" ] } } ] }
Para obter mais informações, consulte Localizar segredos no Guia do usuário do Secrets Manager.
Exemplo 3: como listar os segredos na conta gerenciada por outro serviço
O
list-secrets
exemplo a seguir retorna os segredos da sua conta que são gerenciados pela AmazonRDS.aws secretsmanager list-secrets \ --filter Key="owning-service",Values="rds"
Saída:
{ "SecretList": [ { "Name": "rds!cluster-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "Tags": [ { "Value": "arn:aws:rds:us-west-2:123456789012:cluster:database-1", "Key": "aws:rds:primaryDBClusterArn" }, { "Value": "rds", "Key": "aws:secretsmanager:owningService" } ], "RotationRules": { "AutomaticallyAfterDays": 1 }, "LastChangedDate": 1673477781.275, "LastRotatedDate": 1673477781.26, "SecretVersionsToStages": { "a1b2c3d4-5678-90ab-cdef-EXAMPLEaaaaa": [ "AWSPREVIOUS" ], "a1b2c3d4-5678-90ab-cdef-EXAMPLEbbbbb": [ "AWSCURRENT", "AWSPENDING" ] }, "OwningService": "rds", "RotationEnabled": true, "CreatedDate": 1673467300.7, "LastAccessedDate": 1673395200.0, "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:rds!cluster-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111-a1b2c3", "Description": "Secret associated with primary RDS DB cluster: arn:aws:rds:us-west-2:123456789012:cluster:database-1" } ] }
Para obter mais informações, consulte o Segredos gerenciados por outros serviços no Guia do usuário do Secrets Manager.
-
Para API obter detalhes, consulte ListSecrets
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar put-resource-policy
.
- AWS CLI
-
Para adicionar uma política baseada em recursos a um segredo
O exemplo de
put-resource-policy
a seguir adiciona uma política de permissões a um segredo, verificando primeiro se a política não fornece acesso amplo ao segredo. A política é lida de um arquivo. Para obter mais informações, consulte Carregando AWS CLI parâmetros de um arquivo no Guia AWS CLI do usuário.aws secretsmanager put-resource-policy \ --secret-id
MyTestSecret
\ --resource-policyfile://mypolicy.json
\ --block-public-policyConteúdo de
mypolicy.json
:{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:role/MyRole" }, "Action": "secretsmanager:GetSecretValue", "Resource": "*" } ] }
Saída:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }
Para obter mais informações, consulte Anexar uma política de permissões a um segredo no Guia do Usuário do Secrets Manager.
-
Para API obter detalhes, consulte PutResourcePolicy
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar put-secret-value
.
- AWS CLI
-
Exemplo 1: como armazenar um novo valor secreto em um segredo
O exemplo de
put-secret-value
a seguir cria uma nova versão de um segredo com dois pares de chave/valor.aws secretsmanager put-secret-value \ --secret-id
MyTestSecret
\ --secret-string "{\"user\":\"diegor\",\"password\":\"EXAMPLE-PASSWORD\"}"Saída:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-1a2b3c", "Name": "MyTestSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "VersionStages": [ "AWSCURRENT" ] }
Para obter mais informações, consulte Modificar um segredo no Guia do usuário do Secrets Manager.
Exemplo 2: Para armazenar um novo valor secreto das credenciais em um arquivo JSON
O exemplo de
put-secret-value
a seguir cria uma nova versão de um segredo com base em credenciais em um arquivo. Para obter mais informações, consulte Carregando AWS CLI parâmetros de um arquivo no Guia AWS CLI do usuário.aws secretsmanager put-secret-value \ --secret-id
MyTestSecret
\ --secret-stringfile://mycreds.json
Conteúdo de
mycreds.json
:{ "engine": "mysql", "username": "saanvis", "password": "EXAMPLE-PASSWORD", "host": "my-database-endpoint.us-west-2.rds.amazonaws.com", "dbname": "myDatabase", "port": "3306" }
Saída:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "VersionStages": [ "AWSCURRENT" ] }
Para obter mais informações, consulte Modificar um segredo no Guia do usuário do Secrets Manager.
-
Para API obter detalhes, consulte PutSecretValue
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar remove-regions-from-replication
.
- AWS CLI
-
Para excluir uma réplica secreta
O exemplo de
remove-regions-from-replication
a seguir exclui um segredo de réplica em eu-west-3. Para excluir um segredo primário que está replicado em outras regiões, primeiro remova as réplicas e então chamedelete-secret
.aws secretsmanager remove-regions-from-replication \ --secret-id
MyTestSecret
\ --remove-replica-regionseu-west-3
Saída:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-1a2b3c", "ReplicationStatus": [] }
Para obter mais informações, consulte Excluir uma réplica secreta no Guia do Usuário do Secrets Manager.
-
Para API obter detalhes, consulte RemoveRegionsFromReplication
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar replicate-secret-to-regions
.
- AWS CLI
-
Para replicar um segredo para outra região
O exemplo de
replicate-secret-to-regions
a seguir replica um segredo para eu-west-3. A réplica é criptografada com a chave AWSaws/secretsmanager
gerenciada.aws secretsmanager replicate-secret-to-regions \ --secret-id
MyTestSecret
\ --add-replica-regionsRegion=eu-west-3
Saída:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-1a2b3c", "ReplicationStatus": [ { "Region": "eu-west-3", "KmsKeyId": "alias/aws/secretsmanager", "Status": "InProgress" } ] }
Para obter mais informações, consulte Replicar um segredo para outra região no Guia do Usuário do Secrets Manager.
-
Para API obter detalhes, consulte ReplicateSecretToRegions
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar restore-secret
.
- AWS CLI
-
Para restaurar um segredo excluído anteriormente
O exemplo de
restore-secret
a seguir restaura um segredo que estava previamente programado para exclusão.aws secretsmanager restore-secret \ --secret-id
MyTestSecret
Saída:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }
Para obter mais informações, consulte Excluir um segredo no Guia do usuário do Secrets Manager.
-
Para API obter detalhes, consulte RestoreSecret
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar rotate-secret
.
- AWS CLI
-
Exemplo 1: Para configurar e iniciar a rotação automática de um segredo
O
rotate-secret
exemplo a seguir configura e inicia a rotação automática de um segredo. O Secrets Manager gira o segredo uma vez imediatamente e depois a cada oito horas em uma janela de duas horas. A saída mostra aVersionId
da nova versão secreta criada por rotação.aws secretsmanager rotate-secret \ --secret-id
MyTestDatabaseSecret
\ --rotation-lambda-arnarn:aws:lambda:us-west-2:1234566789012:function:SecretsManagerTestRotationLambda
\ --rotation-rules "{\"ScheduleExpression\": \"cron(0 8/8 * * ? *)\", \"Duration\": \"2h\"}"Saída:
{ "ARN": "aws:arn:secretsmanager:us-west-2:123456789012:secret:MyTestDatabaseSecret-a1b2c3", "Name": "MyTestDatabaseSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }
Para obter mais informações, consulte Rotate secrets no Guia do Usuário do Secrets Manager.
Exemplo 2: Para configurar e iniciar a rotação automática em um intervalo de rotação
O
rotate-secret
exemplo a seguir configura e inicia a rotação automática de um segredo. O Secrets Manager alterna o segredo uma vez imediatamente e depois a cada 10 dias. A saída mostra aVersionId
da nova versão secreta criada por rotação.aws secretsmanager rotate-secret \ --secret-id
MyTestDatabaseSecret
\ --rotation-lambda-arnarn:aws:lambda:us-west-2:1234566789012:function:SecretsManagerTestRotationLambda
\ --rotation-rules "{\"ScheduleExpression\": \"rate(10 days)\"}"Saída:
{ "ARN": "aws:arn:secretsmanager:us-west-2:123456789012:secret:MyTestDatabaseSecret-a1b2c3", "Name": "MyTestDatabaseSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }
Para obter mais informações, consulte Rotate secrets no Guia do Usuário do Secrets Manager.
Exemplo 3: Para girar um segredo imediatamente
O exemplo de
rotate-secret
a seguir inicia uma alternância imediata. A saída mostra aVersionId
da nova versão secreta criada por rotação. O segredo já deve ter a alternância configurada.aws secretsmanager rotate-secret \ --secret-id
MyTestDatabaseSecret
Saída:
{ "ARN": "aws:arn:secretsmanager:us-west-2:123456789012:secret:MyTestDatabaseSecret-a1b2c3", "Name": "MyTestDatabaseSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }
Para obter mais informações, consulte Rotate secrets no Guia do Usuário do Secrets Manager.
-
Para API obter detalhes, consulte RotateSecret
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar stop-replication-to-replica
.
- AWS CLI
-
Para promover uma réplica secreta para uma primária
O exemplo de
stop-replication-to-replica
a seguir remove o link entre um segredo de réplica e o primário. O segredo de réplica é promovido a um segredo primário na região da réplica. É necessário chamarstop-replication-to-replica
diretamente da região da réplica.aws secretsmanager stop-replication-to-replica \ --secret-id
MyTestSecret
Saída:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3" }
Para obter mais informações, consulte Promover uma réplica secreta no Guia do Usuário do Secrets Manager.
-
Para API obter detalhes, consulte StopReplicationToReplica
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar tag-resource
.
- AWS CLI
-
Exemplo 1: Para adicionar uma tag a um segredo
O exemplo de a seguir mostra como anexar um tag com uma sintaxe abreviada.
aws secretsmanager tag-resource \ --secret-id
MyTestSecret
\ --tagsKey=FirstTag,Value=FirstValue
Este comando não produz saída.
Para obter mais informações, consulte Marcar seus segredos no Guia do Usuário do Secrets Manager.
Exemplo 2: Para adicionar várias tags a um segredo
O exemplo de
tag-resource
a seguir anexa duas tags de chave/valor a um segredo.aws secretsmanager tag-resource \ --secret-id
MyTestSecret
\ --tags '[{"Key": "FirstTag", "Value": "FirstValue"}, {"Key": "SecondTag", "Value": "SecondValue"}]
'Este comando não produz saída.
Para obter mais informações, consulte Segredos de tags no Guia do usuário do Secrets Manager.
-
Para API obter detalhes, consulte TagResource
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar untag-resource
.
- AWS CLI
-
Para remover tags de um segredo
O exemplo de
untag-resource
a seguir remove duas tags de um segredo. Para cada tag, tanto a chave quanto o valor são removidos.aws secretsmanager untag-resource \ --secret-id
MyTestSecret
\ --tag-keys '[ "FirstTag", "SecondTag"]
'Este comando não produz saída.
Para obter mais informações, consulte Segredos de tags no Guia do usuário do Secrets Manager.
-
Para API obter detalhes, consulte UntagResource
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar update-secret-version-stage
.
- AWS CLI
-
Exemplo 1: Para reverter um segredo para a versão anterior
O
update-secret-version-stage
exemplo a seguir move o rótulo AWS CURRENT de teste para a versão anterior de um segredo, o que reverte o segredo para a versão anterior. Para encontrar o ID da versão anterior, uselist-secret-version-ids
. Neste exemplo, a versão com o rótulo é a1b2c3d4-5678-90ab-cdef- e a versão com o AWS CURRENT rótulo é a1b2c3d4-5678-90ab-cdef-. EXAMPLE11111 AWS PREVIOUS EXAMPLE22222 Neste exemplo, você move o AWS CURRENT rótulo da versão 11111 para 22222. Como o AWS CURRENT rótulo é removido de uma versão, moveupdate-secret-version-stage
automaticamente o AWS PREVIOUS rótulo para essa versão (11111). O efeito é que as AWS PREVIOUS versões AWS CURRENT e são trocadas.aws secretsmanager update-secret-version-stage \ --secret-id
MyTestSecret
\ --version-stageAWSCURRENT
\ --move-to-version-ida1b2c3d4-5678-90ab-cdef-EXAMPLE22222
\ --remove-from-version-ida1b2c3d4-5678-90ab-cdef-EXAMPLE11111
Saída:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }
Para obter mais informações, consulte Versão no Guia do Usuário do Secrets Manager.
Exemplo 2: Para adicionar uma etiqueta de teste anexada a uma versão de um segredo
O
update-secret-version-stage
exemplo a seguir adiciona um rótulo de teste a uma versão de um segredo. Você pode revisar os resultados executandolist-secret-version-ids
e visualizando o campo deVersionStages
resposta da versão afetada.aws secretsmanager update-secret-version-stage \ --secret-id
MyTestSecret
\ --version-stageSTAGINGLABEL1
\ --move-to-version-idEXAMPLE1-90ab-cdef-fedc-ba987EXAMPLE
Saída:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }
Para obter mais informações, consulte Versão no Guia do Usuário do Secrets Manager.
Exemplo 3: Para excluir uma etiqueta de teste anexada a uma versão de um segredo
O
update-secret-version-stage
exemplo a seguir exclui um rótulo de teste anexado a uma versão de um segredo. Você pode revisar os resultados executandolist-secret-version-ids
e visualizando o campo deVersionStages
resposta da versão afetada.aws secretsmanager update-secret-version-stage \ --secret-id
MyTestSecret
\ --version-stageSTAGINGLABEL1
\ --remove-from-version-ida1b2c3d4-5678-90ab-cdef-EXAMPLE11111
Saída:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }
Para obter mais informações, consulte Versão no Guia do Usuário do Secrets Manager.
-
Para API obter detalhes, consulte UpdateSecretVersionStage
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar update-secret
.
- AWS CLI
-
Exemplo 1: como atualizar a descrição de um segredo
O exemplo de
update-secret
a seguir retorna a descrição de um segredo.aws secretsmanager update-secret \ --secret-id
MyTestSecret
\ --description"This is a new description for the secret."
Saída:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }
Para obter mais informações, consulte Modificar um segredo no Guia do usuário do Secrets Manager.
Exemplo 2: como atualizar a chave de criptografia associada a um segredo
O
update-secret
exemplo a seguir atualiza a KMS chave usada para criptografar o valor secreto. A KMS chave deve estar na mesma região do segredo.aws secretsmanager update-secret \ --secret-id
MyTestSecret
\ --kms-key-idarn:aws:kms:us-west-2:123456789012:key/EXAMPLE1-90ab-cdef-fedc-ba987EXAMPLE
Saída:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }
Para obter mais informações, consulte Modificar um segredo no Guia do usuário do Secrets Manager.
-
Para API obter detalhes, consulte UpdateSecret
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar validate-resource-policy
.
- AWS CLI
-
Para validar uma política de recursos
O
validate-resource-policy
exemplo a seguir verifica se uma política de recursos não concede amplo acesso a um segredo. A política é lida de um arquivo no disco. Para obter mais informações, consulte Carregando AWS CLI parâmetros de um arquivo no Guia AWS CLI do usuário.aws secretsmanager validate-resource-policy \ --resource-policy
file://mypolicy.json
Conteúdo de
mypolicy.json
:{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:role/MyRole" }, "Action": "secretsmanager:GetSecretValue", "Resource": "*" } ] }
Saída:
{ "PolicyValidationPassed": true, "ValidationErrors": [] }
Para obter mais informações, consulte Referência de permissões para o Secrets Manager no Guia do usuário do Secrets Manager.
-
Para API obter detalhes, consulte ValidateResourcePolicy
na Referência de AWS CLI Comandos.
-