Hay más AWS SDK ejemplos disponibles en el GitHub repositorio de AWS Doc SDK Examples
Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Ejemplos de Secrets Manager usando AWS CLI
Los siguientes ejemplos de código muestran cómo realizar acciones e implementar escenarios comunes AWS Command Line Interface mediante Secrets Manager.
Las acciones son extractos de código de programas más grandes y deben ejecutarse en contexto. Mientras las acciones muestran cómo llamar a las funciones de servicio individuales, es posible ver las acciones en contexto en los escenarios relacionados.
Cada ejemplo incluye un enlace al código fuente completo, donde puede encontrar instrucciones sobre cómo configurar y ejecutar el código en su contexto.
Temas
Acciones
En el siguiente ejemplo de código se muestra cómo usar batch-get-secret-value
.
- AWS CLI
-
Ejemplo 1: Para recuperar el valor secreto de un grupo de secretos enumerados por nombre
En el siguiente
batch-get-secret-value
ejemplo, se obtienen los valores secretos de tres secretos.aws secretsmanager batch-get-secret-value \ --secret-id-list
MySecret1
MySecret2
MySecret3
Salida:
{ "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 obtener más información, consulte Recuperar un grupo de secretos en un lote en la Guía del usuario de AWS Secrets Manager.
Ejemplo 2: Para recuperar el valor secreto de un grupo de secretos seleccionado por el filtro
En el siguiente
batch-get-secret-value
ejemplo, se obtienen los valores secretos de tu cuenta que figuranMySecret
en el nombre. El filtrado por nombres distingue entre mayúsculas y minúsculas.aws secretsmanager batch-get-secret-value \ --filters Key="name",Values="MySecret"
Salida:
{ "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 obtener más información, consulte Recuperar un grupo de secretos en un lote en la Guía del usuario de AWS Secrets Manager.
-
Para API obtener más información, consulte BatchGetSecretValue
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar cancel-rotate-secret
.
- AWS CLI
-
Para desactivar la rotación automática de un secreto
En el siguiente
cancel-rotate-secret
ejemplo, se desactiva la rotación automática de un secreto. Para reanudar la rotación, llamarotate-secret
.aws secretsmanager cancel-rotate-secret \ --secret-id
MyTestSecret
Salida:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }
Para obtener más información, consulte Rotar un secreto en la Guía del usuario de Secrets Manager.
-
Para API obtener más información, consulte CancelRotateSecret
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar create-secret
.
- AWS CLI
-
Ejemplo 1: Para crear un secreto a partir de las credenciales de un JSON archivo
En el siguiente ejemplo de
create-secret
, se crea un secreto a partir de las credenciales de un archivo. Para obtener más información, consulte Carga de AWS CLI parámetros de un archivo en la Guía del AWS CLI usuario.aws secretsmanager create-secret \ --name
MyTestSecret
\ --secret-stringfile://mycreds.json
Contenidos de
mycreds.json
:{ "engine": "mysql", "username": "saanvis", "password": "EXAMPLE-PASSWORD", "host": "my-database-endpoint.us-west-2.rds.amazonaws.com", "dbname": "myDatabase", "port": "3306" }
Salida:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }
Para obtener más información, consulte Creación de un secreto en la Guía del usuario de Secrets Manager.
Ejemplo 2: Para crear un secreto
En el siguiente ejemplo de
create-secret
se crea un secreto con dos pares clave-valor. Cuando utiliza ingresa comandos en un shell de comandos, existe el riesgo de que se acceda al historial de comandos o de que las utilidades tengan acceso a sus parámetros de comando. Esto es preocupante si el comando incluye el valor de un secreto. Para obtener más información, consulte Mitigar los riesgos de usar herramientas de línea de comandos para almacenar secretos en la Guía del usuario de Secrets Manager.aws secretsmanager create-secret \ --name
MyTestSecret
\ --description"My test secret created with the CLI."
\ --secret-string "{\"user\":\"diegor\",\"password\":\"EXAMPLE-PASSWORD\"}"Salida:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "VersionId": "EXAMPLE1-90ab-cdef-fedc-ba987EXAMPLE" }
Para obtener más información, consulte Creación de un secreto en la Guía del usuario de Secrets Manager.
-
Para API obtener más información, consulte la Referencia CreateSecret
de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar delete-resource-policy
.
- AWS CLI
-
Para eliminar la política basada en recursos adjunta a un secreto
En el siguiente ejemplo de
delete-resource-policy
se elimina la política basada en recursos asociada a un secreto.aws secretsmanager delete-resource-policy \ --secret-id
MyTestSecret
Salida:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }
Para obtener más información, consulte Autenticación y control de acceso en la Guía del usuario de Secrets Manager.
-
Para API obtener más información, consulte DeleteResourcePolicy
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar delete-secret
.
- AWS CLI
-
Ejemplo 1: Eliminación de un secreto
En el siguiente ejemplo de
delete-secret
se elimina un secreto. Se puede recuperar el secreto conrestore-secret
hasta la fecha y hora del campo de respuestaDeletionDate
. Para eliminar un secreto que se replica en otras regiones, primero elimine sus réplicas conremove-regions-from-replication
y, a continuación, llame adelete-secret
.aws secretsmanager delete-secret \ --secret-id
MyTestSecret
\ --recovery-window-in-days7
Salida:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "DeletionDate": 1524085349.095 }
Para obtener más información, consulte Eliminación de un secreto en la Guía del usuario de Secrets Manager.
Ejemplo 2: Eliminación de un secreto inmediatamente
En el siguiente ejemplo de
delete-secret
se elimina un secreto inmediatamente sin periodo de recuperación. Este secreto no se puede recuperar.aws secretsmanager delete-secret \ --secret-id
MyTestSecret
\ --force-delete-without-recoverySalida:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "DeletionDate": 1508750180.309 }
Para obtener más información, consulte Eliminación de un secreto en la Guía del usuario de Secrets Manager.
-
Para API obtener más información, consulte DeleteSecret
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar describe-secret
.
- AWS CLI
-
Recuperación de los detalles de un secreto
En el siguiente ejemplo
describe-secret
, se muestran detalles de un secreto.aws secretsmanager describe-secret \ --secret-id
MyTestSecret
Salida:
{ "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 obtener más información, consulte Secreto en la Guía del usuario de Secrets Manager.
-
Para API obtener más información, consulte DescribeSecret
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar get-random-password
.
- AWS CLI
-
Para generar una contraseña aleatoria
El siguiente
get-random-password
ejemplo genera una contraseña aleatoria de 20 caracteres que incluye al menos una letra mayúscula, una letra minúscula, un número y un signo de puntuación.aws secretsmanager get-random-password \ --require-each-included-type \ --password-length
20
Salida:
{ "RandomPassword": "EXAMPLE-PASSWORD" }
Para obtener más información, consulte Crear y administrar secretos en la Guía del usuario de Secrets Manager.
-
Para API obtener más información, consulte GetRandomPassword
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar get-resource-policy
.
- AWS CLI
-
Para recuperar la política basada en recursos adjunta a un secreto
En el siguiente ejemplo de
get-resource-policy
se recupera la política basada en recursos asociada a un secreto.aws secretsmanager get-resource-policy \ --secret-id
MyTestSecret
Salida:
{ "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 obtener más información, consulte Autenticación y control de acceso en la Guía del usuario de Secrets Manager.
-
Para API obtener más información, consulte GetResourcePolicy
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar get-secret-value
.
- AWS CLI
-
Ejemplo 1: Recuperación del valor de secreto cifrado de un secreto
El siguiente ejemplo de
get-secret-value
obtiene el valor de secreto actual.aws secretsmanager get-secret-value \ --secret-id
MyTestSecret
Salida:
{ "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 obtener más información, consulte Recuperación de un secreto en la Guía del usuario de Secrets Manager.
Ejemplo 2: Recuperación del valor de secreto anterior
El siguiente ejemplo de
get-secret-value
obtiene el valor de secreto anterior:aws secretsmanager get-secret-value \ --secret-id
MyTestSecret
--version-stageAWSPREVIOUS
Salida:
{ "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 obtener más información, consulte Recuperación de un secreto en la Guía del usuario de Secrets Manager.
-
Para API obtener más información, consulte GetSecretValue
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar list-secret-version-ids
.
- AWS CLI
-
Para enumerar todas las versiones secretas asociadas a un secreto
En el
list-secret-version-ids
ejemplo siguiente se obtiene una lista de todas las versiones de un secreto.aws secretsmanager list-secret-version-ids \ --secret-id
MyTestSecret
Salida:
{ "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 obtener más información, consulte la versión en la Guía del usuario de Secrets Manager.
-
Para API obtener más información, consulte ListSecretVersionIds
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar list-secrets
.
- AWS CLI
-
Ejemplo 1: Creación de una lista de los secretos de la cuenta
En el siguiente ejemplo de
list-secrets
se obtiene una lista de los secretos de la cuenta.aws secretsmanager list-secrets
Salida:
{ "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 obtener más información acerca de Secrets Manager, consulte Encontrar un secreto en la Guía del usuario de Secrets Manager.
Ejemplo 2: Filtrado de la lista de secretos de la cuenta
En el siguiente ejemplo de
list-secrets
se obtiene una lista de los secretos de la cuenta que incluyenTest
en su nombre. El filtrado por nombres distingue entre mayúsculas y minúsculas.aws secretsmanager list-secrets \ --filter Key="name",Values="Test"
Salida:
{ "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 obtener más información acerca de Secrets Manager, consulte Encontrar un secreto en la Guía del usuario de Secrets Manager.
Ejemplo 3: Creación de una lista de los secretos de su cuenta administrada por otro servicio
En el siguiente
list-secrets
ejemplo, se muestran los secretos de tu cuenta gestionados por AmazonRDS.aws secretsmanager list-secrets \ --filter Key="owning-service",Values="rds"
Salida:
{ "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 obtener más información, consulte Secretos gestionados por otros servicios en la Guía del usuario de Secrets Manager.
-
Para API obtener más información, consulte ListSecrets
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar put-resource-policy
.
- AWS CLI
-
Para añadir una política basada en recursos a un secreto
En el siguiente ejemplo de
put-resource-policy
se agrega una política de permisos a un secreto, pero primero se comprueba que la política no proporciona un acceso amplio al secreto. La política se lee desde un archivo. Para obtener más información, consulte Carga de AWS CLI parámetros desde un archivo en la Guía del AWS CLIusuario.aws secretsmanager put-resource-policy \ --secret-id
MyTestSecret
\ --resource-policyfile://mypolicy.json
\ --block-public-policyContenidos de
mypolicy.json
:{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:role/MyRole" }, "Action": "secretsmanager:GetSecretValue", "Resource": "*" } ] }
Salida:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }
Para obtener más información, consulte Adjuntar una política de permisos a un secreto en la Guía del usuario de Secrets Manager.
-
Para API obtener más información, consulte PutResourcePolicy
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar put-secret-value
.
- AWS CLI
-
Ejemplo 1: Almacenamiento de un nuevo valor de secreto en un secreto
En el siguiente ejemplo de
put-secret-value
se crea una nueva versión de un secreto con dos pares clave-valor.aws secretsmanager put-secret-value \ --secret-id
MyTestSecret
\ --secret-string "{\"user\":\"diegor\",\"password\":\"EXAMPLE-PASSWORD\"}"Salida:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-1a2b3c", "Name": "MyTestSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "VersionStages": [ "AWSCURRENT" ] }
Para obtener más información, consulte Modificación de un secreto en la Guía del usuario de Secrets Manager.
Ejemplo 2: Para almacenar un nuevo valor secreto de las credenciales en un JSON archivo
En el siguiente ejemplo de
put-secret-value
se crea una nueva versión de un secreto a partir de las credenciales de un archivo. Para obtener más información, consulte Carga de AWS CLI parámetros de un archivo en la Guía del AWS CLI usuario.aws secretsmanager put-secret-value \ --secret-id
MyTestSecret
\ --secret-stringfile://mycreds.json
Contenidos de
mycreds.json
:{ "engine": "mysql", "username": "saanvis", "password": "EXAMPLE-PASSWORD", "host": "my-database-endpoint.us-west-2.rds.amazonaws.com", "dbname": "myDatabase", "port": "3306" }
Salida:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "VersionStages": [ "AWSCURRENT" ] }
Para obtener más información, consulte Modificación de un secreto en la Guía del usuario de Secrets Manager.
-
Para API obtener más información, consulte PutSecretValue
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar remove-regions-from-replication
.
- AWS CLI
-
Para eliminar un secreto de réplica
En el siguiente ejemplo de
remove-regions-from-replication
se elimina un secreto de réplica de eu-west-3. Para eliminar un secreto principal que se replica en otras regiones, primero elimine las réplicas y, a continuación, llame adelete-secret
.aws secretsmanager remove-regions-from-replication \ --secret-id
MyTestSecret
\ --remove-replica-regionseu-west-3
Salida:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-1a2b3c", "ReplicationStatus": [] }
Para obtener más información, consulte Eliminar un secreto de réplica en la Guía del usuario de Secrets Manager.
-
Para API obtener más información, consulte RemoveRegionsFromReplication
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar replicate-secret-to-regions
.
- AWS CLI
-
Para replicar un secreto en otra región
En el siguiente ejemplo de
replicate-secret-to-regions
se replica un secreto en eu-west-3. La réplica se cifra con la clave AWS gestionadaaws/secretsmanager
.aws secretsmanager replicate-secret-to-regions \ --secret-id
MyTestSecret
\ --add-replica-regionsRegion=eu-west-3
Salida:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-1a2b3c", "ReplicationStatus": [ { "Region": "eu-west-3", "KmsKeyId": "alias/aws/secretsmanager", "Status": "InProgress" } ] }
Para obtener más información, consulte Replicar un secreto en otra región en la Guía del usuario de Secrets Manager.
-
Para API obtener más información, consulte ReplicateSecretToRegions
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar restore-secret
.
- AWS CLI
-
Para restaurar un secreto previamente borrado
En el siguiente ejemplo de
restore-secret
se restaura un secreto cuya eliminación se había programado previamente.aws secretsmanager restore-secret \ --secret-id
MyTestSecret
Salida:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }
Para obtener más información, consulte Eliminación de un secreto en la Guía del usuario de Secrets Manager.
-
Para API obtener más información, consulte RestoreSecret
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar rotate-secret
.
- AWS CLI
-
Ejemplo 1: Para configurar e iniciar la rotación automática de un secreto
El siguiente
rotate-secret
ejemplo configura e inicia la rotación automática de un secreto. Secrets Manager cambia el secreto una vez de forma inmediata y, después, cada ocho horas en un período de dos horas. El resultado muestraVersionId
la nueva versión secreta creada por rotación.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\"}"Salida:
{ "ARN": "aws:arn:secretsmanager:us-west-2:123456789012:secret:MyTestDatabaseSecret-a1b2c3", "Name": "MyTestDatabaseSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }
Para obtener más información, consulte Rotar secretos en la Guía del usuario de Secrets Manager.
Ejemplo 2: Para configurar e iniciar la rotación automática en un intervalo de rotación
El siguiente
rotate-secret
ejemplo configura e inicia la rotación automática de un secreto. Secrets Manager cambia el secreto una vez inmediatamente y luego cada 10 días. El resultado muestraVersionId
la nueva versión secreta creada por rotación.aws secretsmanager rotate-secret \ --secret-id
MyTestDatabaseSecret
\ --rotation-lambda-arnarn:aws:lambda:us-west-2:1234566789012:function:SecretsManagerTestRotationLambda
\ --rotation-rules "{\"ScheduleExpression\": \"rate(10 days)\"}"Salida:
{ "ARN": "aws:arn:secretsmanager:us-west-2:123456789012:secret:MyTestDatabaseSecret-a1b2c3", "Name": "MyTestDatabaseSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }
Para obtener más información, consulte Rotar secretos en la Guía del usuario de Secrets Manager.
Ejemplo 3: Para rotar un secreto de forma inmediata
En el siguiente ejemplo de
rotate-secret
se inicia una rotación inmediata. El resultado muestraVersionId
la nueva versión secreta creada por rotación. El secreto ya debe tener configurada la rotación.aws secretsmanager rotate-secret \ --secret-id
MyTestDatabaseSecret
Salida:
{ "ARN": "aws:arn:secretsmanager:us-west-2:123456789012:secret:MyTestDatabaseSecret-a1b2c3", "Name": "MyTestDatabaseSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }
Para obtener más información, consulte Rotar secretos en la Guía del usuario de Secrets Manager.
-
Para API obtener más información, consulte RotateSecret
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar stop-replication-to-replica
.
- AWS CLI
-
Para convertir un secreto de réplica en uno principal
En el siguiente ejemplo de
stop-replication-to-replica
, se elimina el enlace entre un secreto de réplica y el principal. El secreto de réplica se promociona a secreto principal en la región de réplica. Debe llamar astop-replication-to-replica
desde la región de réplica.aws secretsmanager stop-replication-to-replica \ --secret-id
MyTestSecret
Salida:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3" }
Para obtener más información, consulte Promocionar un secreto de réplica en la Guía del usuario de Secrets Manager.
-
Para API obtener más información, consulte StopReplicationToReplica
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar tag-resource
.
- AWS CLI
-
Ejemplo 1: Para añadir una etiqueta a un secreto
En el siguiente ejemplo de se muestra cómo asociar una etiqueta con sintaxis abreviada.
aws secretsmanager tag-resource \ --secret-id
MyTestSecret
\ --tagsKey=FirstTag,Value=FirstValue
Este comando no genera ninguna salida.
Para obtener más información, consulte Etiquetar sus secretos en la Guía del usuario de Secrets Manager.
Ejemplo 2: Para añadir varias etiquetas a un secreto
En el siguiente ejemplo de
tag-resource
se asocian dos etiquetas de clave-valor a un secreto.aws secretsmanager tag-resource \ --secret-id
MyTestSecret
\ --tags '[{"Key": "FirstTag", "Value": "FirstValue"}, {"Key": "SecondTag", "Value": "SecondValue"}]
'Este comando no genera ninguna salida.
Para obtener más información, consulte Etiquetar secretos en la Guía del usuario de Secrets Manager.
-
Para API obtener más información, consulte TagResource
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar untag-resource
.
- AWS CLI
-
Para eliminar etiquetas de un secreto
En el siguiente ejemplo de
untag-resource
se eliminan dos etiquetas de un secreto. Se eliminan tanto la clave como el valor de cada etiqueta.aws secretsmanager untag-resource \ --secret-id
MyTestSecret
\ --tag-keys '[ "FirstTag", "SecondTag"]
'Este comando no genera ninguna salida.
Para obtener más información, consulte Etiquetar secretos en la Guía del usuario de Secrets Manager.
-
Para API obtener más información, consulte UntagResource
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar update-secret-version-stage
.
- AWS CLI
-
Ejemplo 1: Para revertir un secreto a la versión anterior
En el siguiente
update-secret-version-stage
ejemplo, se mueve AWS CURRENT la etiqueta provisional a la versión anterior de un secreto, lo que revierte el secreto a la versión anterior. Para encontrar el ID de la versión anterior, utilice.list-secret-version-ids
Para este ejemplo, la versión con la etiqueta es a1b2c3d4-5678-90ab-cdef- y la versión con la AWS CURRENT etiqueta es a1b2c3d4-5678-90ab-cdef-. EXAMPLE11111 AWS PREVIOUS EXAMPLE22222 En este ejemplo, mueves AWS CURRENT la etiqueta de la versión 11111 a la 22222. Como la AWS CURRENT etiqueta se ha eliminado de una versión, la AWS PREVIOUS mueveupdate-secret-version-stage
automáticamente a esa versión (11111). El efecto es que las AWS PREVIOUS versiones AWS CURRENT y se intercambian.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
Salida:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }
Para obtener más información, consulte la versión en la Guía del usuario de Secrets Manager.
Ejemplo 2: Para añadir una etiqueta provisional adjunta a una versión de un secreto
En el siguiente
update-secret-version-stage
ejemplo, se agrega una etiqueta provisional a una versión de un secreto. Para revisar los resultados, ejecutelist-secret-version-ids
y visualice el campo deVersionStages
respuesta de la versión afectada.aws secretsmanager update-secret-version-stage \ --secret-id
MyTestSecret
\ --version-stageSTAGINGLABEL1
\ --move-to-version-idEXAMPLE1-90ab-cdef-fedc-ba987EXAMPLE
Salida:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }
Para obtener más información, consulte la versión en la Guía del usuario de Secrets Manager.
Ejemplo 3: Para eliminar una etiqueta provisional adjunta a una versión de un secreto
En el siguiente
update-secret-version-stage
ejemplo, se elimina una etiqueta provisional adjunta a una versión de un secreto. Para revisar los resultados, ejecutelist-secret-version-ids
y visualice el campo deVersionStages
respuesta de la versión afectada.aws secretsmanager update-secret-version-stage \ --secret-id
MyTestSecret
\ --version-stageSTAGINGLABEL1
\ --remove-from-version-ida1b2c3d4-5678-90ab-cdef-EXAMPLE11111
Salida:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }
Para obtener más información, consulte la versión en la Guía del usuario de Secrets Manager.
-
Para API obtener más información, consulte UpdateSecretVersionStage
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar update-secret
.
- AWS CLI
-
Ejemplo 1: Actualización de la descripción de un secreto
En el siguiente ejemplo de
update-secret
se actualiza la descripción de un secreto.aws secretsmanager update-secret \ --secret-id
MyTestSecret
\ --description"This is a new description for the secret."
Salida:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }
Para obtener más información, consulte Modificación de un secreto en la Guía del usuario de Secrets Manager.
Ejemplo 2: Actualización de la clave de cifrado asociada a un secreto
En el siguiente
update-secret
ejemplo, se actualiza la KMS clave utilizada para cifrar el valor secreto. La KMS clave debe estar en la misma región que el secreto.aws secretsmanager update-secret \ --secret-id
MyTestSecret
\ --kms-key-idarn:aws:kms:us-west-2:123456789012:key/EXAMPLE1-90ab-cdef-fedc-ba987EXAMPLE
Salida:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }
Para obtener más información, consulte Modificación de un secreto en la Guía del usuario de Secrets Manager.
-
Para API obtener más información, consulte UpdateSecret
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar validate-resource-policy
.
- AWS CLI
-
Para validar una política de recursos
El siguiente
validate-resource-policy
ejemplo comprueba que una política de recursos no concede un acceso amplio a un secreto. La política se lee desde un archivo del disco. Para obtener más información, consulte Carga de AWS CLI parámetros desde un archivo en la Guía del AWS CLI usuario.aws secretsmanager validate-resource-policy \ --resource-policy
file://mypolicy.json
Contenidos de
mypolicy.json
:{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:role/MyRole" }, "Action": "secretsmanager:GetSecretValue", "Resource": "*" } ] }
Salida:
{ "PolicyValidationPassed": true, "ValidationErrors": [] }
Para obtener más información, consulte la referencia de permisos para Secrets Manager en la Guía del usuario de Secrets Manager.
-
Para API obtener más información, consulte ValidateResourcePolicy
la Referencia de AWS CLI comandos.
-