Almacenamiento de credenciales de base de datos en AWS Secrets Manager
Al llamar a la API de datos, puede transmitir las credenciales del clúster o grupo de trabajo sin servidor con un secreto en AWS Secrets Manager. Para pasar credenciales mediante este método, especifique el nombre del secreto o el Nombre de recurso de Amazon (ARN) del secreto.
Para almacenar credenciales con Secrets Manager, se necesita contar con el permiso de la política administrada SecretManagerReadWrite
. Para obtener más información sobre los permisos mínimos, consulte Creación y administración de secretos con AWS Secrets Manager en la Guía del usuario de AWS Secrets Manager.
Si desea almacenar las credenciales en un secreto para un clúster de Amazon Redshift
-
Utilice la consola de AWS Secrets Manager para crear un secreto que contenga credenciales para el clúster:
-
Cuando elija Store a new secret (Almacenar un secreto nuevo), elija Credentials for Redshift cluster (Credenciales para clúster de Redshift).
-
Almacene sus valores para User name (Nombre de usuario) que es el usuario de la base de datos, Password (Contraseña) y DB cluster (Clúster de base de datos) que es el identificador del clúster, en su secreto.
-
Etiquete el secreto con la clave
RedshiftDataFullAccess
. La política administrada por AWSAmazonRedshiftDataFullAccess
solo permite la acciónsecretsmanager:GetSecretValue
para los secretos etiquetados con la claveRedshiftDataFullAccess
.
Para obtener instrucciones, consulte Creación de un secreto básico en la Guía del usuario de AWS Secrets Manager.
-
-
Utilice la consola de AWS Secrets Manager para ver los detalles del secreto que ha creado, o ejecute el comando de la AWS CLI
aws secretsmanager describe-secret
.Anote el nombre y el ARN del secreto. Puede utilizarlos en las llamadas a la API de datos.
Para almacenar las credenciales en un secreto para un grupo de trabajo sin servidor
-
Utilice los comandos de la AWS CLI de AWS Secrets Manager para almacenar un secreto que contenga credenciales para el grupo de trabajo sin servidor:
-
Cree su secreto en un archivo, por ejemplo, un archivo JSON llamado
mycreds.json
. Proporcione los valores de User name (Nombre de usuario) (usuario de base de datos) y Password (Contraseña) en el archivo.{ "username": "myusername", "password": "mypassword" }
-
Almacene los valores en el secreto y etiquete el secreto con la clave
RedshiftDataFullAccess
.aws secretsmanager create-secret --name MyRedshiftSecret --tags Key="RedshiftDataFullAccess",Value="serverless" --secret-string file://mycreds.json
El ejemplo siguiente muestra la salida.
{ "ARN": "arn:aws:secretsmanager:
region
:accountId
:secret:MyRedshiftSecret-mvLHxf
", "Name": "MyRedshiftSecret", "VersionId": "a1603925-e8ea-4739-9ae9-e509eEXAMPLE" }
Para obtener más información, consulte Creación de un secreto básico con AWS CLI en la Guía del usuario de AWS Secrets Manager.
-
-
Utilice la consola de AWS Secrets Manager para ver los detalles del secreto que ha creado, o ejecute el comando de la AWS CLI
aws secretsmanager describe-secret
.Anote el nombre y el ARN del secreto. Puede utilizarlos en las llamadas a la API de datos.