Gerenciamento das senhas de administrador do Amazon Redshift usando AWS Secrets Manager
O Amazon Redshift pode se integrar ao AWS Secrets Manager para gerar e gerenciar as credenciais de administrador dentro de um segredo criptografado. Com AWS Secrets Manager, é possível substituir as senhas de administrador por uma chamada de API para recuperar programaticamente o segredo quando necessário. O uso de segredos, em vez de credenciais com codificação rígida, reduz o risco dessas credenciais serem expostas ou comprometidas. Para obter mais informações sobre o AWS Secrets Manager, consulte o Guia do usuário do AWS Secrets Manager.
Você pode especificar que o Amazon Redshift gerencia a senha de administrador usando o AWS Secrets Manager ao realizar uma das seguintes operações:
-
Criação de um cluster provisionado ou de um namespace de tecnologia sem servidor
-
Edição, atualização ou modificação das credenciais de administrador de um cluster provisionado ou um namespace de tecnologia sem servidor
-
Restauração de um cluster ou de um namespace de tecnologia sem servidor usando um snapshot
Quando você especifica que o Amazon Redshift gerencia a senha de administrador no AWS Secrets Manager, o Amazon Redshift gera a senha e a armazena no Secrets Manager. É possível acessar diretamente o segredo no AWS Secrets Manager para recuperar as credenciais do usuário de administrador. Também será possível especificar uma chave gerenciada pelo cliente para criptografar o segredo, se você precisar acessá-lo por outra conta da AWS. Também é possível usar a chave KMS fornecida pelo AWS Secrets Manager.
O Amazon Redshift gerencia as configurações do segredo e o alterna a cada 30 dias por padrão. É possível girar manualmente o segredo a qualquer momento. Se você excluir um cluster provisionado ou um namespace de tecnologia sem servidor que gerencia um segredo no AWS Secrets Manager, o segredo e os metadados associados também serão excluídos.
Para se conectar a um cluster ou a um namespace de tecnologia sem servidor com credenciais gerenciadas por segredo, você pode recuperar o segredo do AWS Secrets Manager usando o console do Secrets Manager ou a chamada de API do Secrets Manager. Para ter mais informações, consulte Recuperar segredos do AWS Secrets Manager e Conecte-se a um banco de dados SQL com credenciais em um segredo do AWS Secrets Manager no Guia do usuário do AWS Secrets Manager.
Permissões necessárias para integração do AWS Secrets Manager
Os usuários devem ter as permissões necessárias para realizar operações relacionadas à integração do AWS Secrets Manager. Crie políticas do IAM que concedam permissões para realizar operações de API específicas nos recursos especificados dos quais eles precisam. Em seguida, anexe essas políticas aos conjuntos de permissões do IAM ou às funções que exigem essas permissões. Para ter mais informações, consulte Gerenciamento de Identidade e Acesso no Amazon Redshift.
O usuário que especifica que o Amazon Redshift gerencie a senha de administrador no AWS Secrets Manager deve ter permissões para realizar as seguintes operações:
-
secretsmanager:CreateSecret
-
secretsmanager:RotateSecret
-
secretsmanager:DescribeSecret
-
secretsmanager:UpdateSecret
-
secretsmanager:DeleteSecret
-
secretsmanager:GetRandomPassword
-
secretsmanager:TagResource
Se quiser passar uma chave KMS no parâmetro MasterPasswordSecretKmsKeyId
para clusters provisionados ou no parâmetro AdminPasswordSecretKmsKeyId
para namespaces de tecnologia sem servidor, o usuário precisará das permissões a seguir, além das permissões listadas acima.
-
kms:Decrypt
-
kms:GenerateDataKey
-
kms:CreateGrant
-
kms:RetireGrant
Alternância de segredo de senha de administrador
Por padrão, o Amazon Redshift troca automaticamente o segredo a cada 30 dias para garantir que as credenciais não continuem as mesmas por períodos prolongados. Quando o Amazon Redshift troca um segredo de senha de administrador, o AWS Secrets Manager atualiza o segredo existente para conter uma nova senha de administrador. O Amazon Redshift altera a senha de administrador do cluster para corresponder à senha no segredo atualizado.
Você pode trocar imediatamente um segredo, em vez de aguardar uma troca programada usando AWS Secrets Manager. Para obter mais informações, consulte Rotate AWS Secrets Manager secrets no Guia de usuário do AWS Secrets Manager.
Considerações sobre como usar o AWS Secrets Manager com o Amazon Redshift
Ao usar AWS Secrets Manager para gerenciar o cluster provisionado ou as credenciais de administrador do namespace de tecnologia sem servidor, considere o seguinte:
-
Quando pausar um cluster cujas credenciais de administrador são gerenciadas pelo AWS Secrets Manager, o segredo do cluster não será excluído e você continuará recebendo a cobrança pelo segredo. Os segredos só são excluídos quando você exclui o cluster.
-
Se o cluster for pausado quando o Amazon Redshift tentar trocar o segredo anexado, a troca vai falhar. Nesse caso, o Amazon Redshift interrompe a troca automática e não vai tentar trocá-la novamente, mesmo depois que você retomar o cluster. Você deve reiniciar a programação de rotação automática usando a chamada de API
secretsmanager:RotateSecret
para fazer o AWS Secrets Manager continuar trocando o segredo automaticamente. -
Se o namespace de tecnologia sem servidor não tiver um grupo de trabalho associado quando o Amazon Redshift tentar trocar o segredo anexado, a troca vai falhar e não tentar trocá-lo novamente, mesmo depois de você anexar um grupo de trabalho. Você deve reiniciar a programação de rotação automática usando a chamada de API
secretsmanager:RotateSecret
para fazer o AWS Secrets Manager continuar trocando o segredo automaticamente.