Administración de las contraseñas de administrador de Amazon Redshift mediante AWS Secrets Manager
Amazon Redshift se puede integrar con AWS Secrets Manager para generar y administrar sus credenciales de administrador dentro de un secreto cifrado. Con AWS Secrets Manager, puede sustituir sus contraseñas de administrador por una llamada a la API para recuperar el secreto mediante programación cuando sea necesario. Usar secretos en lugar de credenciales con codificación rígida reduce el riesgo de que dichas credenciales queden expuestas o se vean comprometidas. Para obtener más información sobre AWS Secrets Manager, consulte la Guía del usuario de AWS Secrets Manager.
Puede especificar que Amazon Redshift administre la contraseña de administrador con AWS Secrets Manager cuando realice una de las siguientes operaciones:
-
Crear un clúster aprovisionado o un espacio de nombres sin servidor
-
Editar, actualizar o modificar las credenciales de administrador de un clúster aprovisionado o de un espacio de nombres sin servidor
-
Restaurar un clúster o un espacio de nombres sin servidor a partir de una instantánea
Al especificar que Amazon Redshift administre la contraseña de administrador en AWS Secrets Manager, Amazon Redshift genera la contraseña y la almacena en Secrets Manager. Puede acceder al secreto directamente en AWS Secrets Manager para recuperar las credenciales del usuario administrador. Si lo desea, también puede especificar una clave administrada por el cliente para cifrar el secreto si necesita acceder a él desde otra cuenta de AWS. También puede usar la clave de KMS que proporciona AWS Secrets Manager.
Amazon Redshift administra la configuración del secreto y lo rota cada 30 días de forma predeterminada. Puede rotar el secreto manualmente en cualquier momento. Si elimina un clúster aprovisionado o un espacio de nombres sin servidor que administra un secreto en AWS Secrets Manager, también se eliminarán el secreto y sus metadatos asociados.
Para conectarse a un clúster o espacio de nombres sin servidor con las credenciales administradas de forma secreta, puede recuperar el secreto de AWS Secrets Manager desde la consola de Secrets Manager o la llamada a la API GetSecretValue
de Secrets Manager. Para obtener más información, consulte Recuperar secretos de AWS Secrets Manager y Conexión a una base de datos SQL con credenciales en un secreto de AWS Secrets Manager en la Guía del usuario de AWS Secrets Manager.
Permisos necesarios para la integración de AWS Secrets Manager
Los usuarios deben tener los permisos necesarios para realizar las operaciones relacionadas con la integración de AWS Secrets Manager. Cree políticas de IAM que concedan permisos para realizar operaciones de la API concretas en los recursos especificados que necesiten. A continuación, asocie esas políticas a los roles o conjuntos de permisos de IAM que necesiten esos permisos. Para obtener más información, consulte Administración de identidades y accesos en Amazon Redshift.
El usuario que especifica que Amazon Redshift administre la contraseña de administrador en AWS Secrets Manager debe tener permisos para realizar las siguientes operaciones:
-
secretsmanager:CreateSecret
-
secretsmanager:RotateSecret
-
secretsmanager:DescribeSecret
-
secretsmanager:UpdateSecret
-
secretsmanager:DeleteSecret
-
secretsmanager:GetRandomPassword
-
secretsmanager:TagResource
Si el usuario quiere introducir una clave de KMS en el parámetro MasterPasswordSecretKmsKeyId
de los clústeres aprovisionados o en el parámetro AdminPasswordSecretKmsKeyId
de los espacios de nombres sin servidor, necesitará los siguientes permisos además de los permisos enumerados anteriormente.
-
kms:Decrypt
-
kms:GenerateDataKey
-
kms:CreateGrant
-
kms:RetireGrant
Rotación de secretos de contraseñas de administrador
De forma predeterminada, Amazon Redshift rota automáticamente el secreto cada 30 días para garantizar que sus credenciales no permanezcan iguales durante períodos prolongados. Cuando Amazon Redshift rota el secreto de una contraseña de administrador, AWS Secrets Manager actualiza el secreto existente para incluir una nueva contraseña de administrador. Amazon Redshift cambia la contraseña de administrador del clúster para que coincida con la contraseña del secreto actualizado.
Puede rotar un secreto inmediatamente con AWS Secrets Manager en lugar de esperar a que se programe una rotación. Para obtener más información acerca de la rotación de secretos, consulte Rotar secretos de AWS Secrets Manager en la Guía del usuario de AWS Secrets Manager.
Consideraciones sobre el uso de AWS Secrets Manager con Amazon Redshift
Cuando utilice AWS Secrets Manager para administrar las credenciales de administrador del clúster aprovisionado o del espacio de nombres sin servidor, tenga en cuenta lo siguiente:
-
Si pausa un clúster cuyas credenciales de administrador las administra AWS Secrets Manager, el secreto del clúster no se eliminará y se le seguirá cobrando por él. Los secretos solo se eliminan cuando se elimina el clúster.
-
Si el clúster está pausado cuando Amazon Redshift intenta rotar el secreto que tiene asociado, la rotación fallará. En este caso, Amazon Redshift detiene la rotación automática y no intentará rotarlo de nuevo, incluso después de reanudar el clúster. Debe reiniciar el programa de rotación automática mediante la llamada a la API
secretsmanager:RotateSecret
para que AWS Secrets Manager siga rotando automáticamente el secreto. -
Si su espacio de nombres sin servidor no tiene ningún grupo de trabajo asociado cuando Amazon Redshift intente rotar el secreto que tiene asociado, la rotación fallará y no volverá a intentar rotarlo, incluso después de adjuntar un grupo de trabajo. Debe reiniciar el programa de rotación automática mediante la llamada a la API
secretsmanager:RotateSecret
para que AWS Secrets Manager siga rotando automáticamente el secreto.