Para acessar um banco de dados Redis ou Tair, armazene a senha da conta como um segredo no Key Management Service (KMS). As aplicações recuperam essas credenciais dinamicamente por meio de um SDK, o que elimina a necessidade de codificar informações sensíveis diretamente no código. O serviço também oferece rotação automática para reduzir o risco de comprometimento de senhas. Este tópico descreve como criar, gerenciar e utilizar segredos do Redis/Tair.
Como funciona
O uso de segredos do Redis/Tair elimina a necessidade de codificar credenciais estáticas de banco de dados nas aplicações. Um administrador cria o segredo do Redis/Tair no KMS e a aplicação chama a operação de API GetSecretValue para recuperar o nome de usuário e a senha necessários ao acesso do banco de dados Redis ou Tair.
O KMS gerencia senhas apenas para contas Redis/Tair recém-criadas e exclusivamente no modo de conta dupla. Não é possível gerenciar senhas de contas Redis ou Tair já existentes.
Ao configurar um segredo do Redis/Tair, defina um nome de conta base. O KMS chama a API do Redis ou Tair para criar duas novas contas de banco de dados com as mesmas permissões e senha. Por exemplo, no Tair (compatível com Redis OSS), se o nome da conta base for definido como
user, o KMS cria duas contas de banco de dados:usereuser_clone.O rótulo de estágio da versão correspondente à conta
useré definido comoACSCurrent, enquanto o rótulo da versão correspondente à contauser_clonerecebe o valorACSPrevious.Visualize essas novas contas no console do Redis. Acesse a página Instances, selecione a instância e clique na aba Account Management.
Esse mecanismo garante que uma aplicação que recupere o valor do segredo durante a rotação sempre receba uma senha válida. O modo de conta dupla melhora a disponibilidade da aplicação em comparação à abordagem de conta única.
Após iniciar o gerenciamento da senha de uma conta Redis/Tair no KMS, não modifique nem exclua a senha diretamente no Tair (compatível com Redis OSS). Caso contrário, as aplicações podem apresentar falhas.
O KMS não oferece suporte ao gerenciamento de senhas para instâncias Redis ou Tair que utilizam arquitetura de cluster. Para obter mais informações sobre as arquiteturas do Tair (compatível com Redis OSS), consulte {{XREF_0}}.
O diagrama a seguir ilustra como utilizar um segredo com o Tair (compatível com Redis OSS).
Pré-requisitos
Uma instância do KMS deve estar adquirida e habilitada. Para mais detalhes, consulte {{XREF_1}}.
É necessário criar uma chave simétrica na instância do KMS para criptografar o segredo. Consulte {{XREF_2}} para mais informações.
Crie uma instância do Alibaba Cloud Redis ou uma instância do Tair. Veja {{XREF_3}} para instruções detalhadas.
Ao utilizar um usuário RAM ou uma função RAM para gerenciar segredos do Redis/Tair, certifique-se de que a política de sistema
AliyunKMSSecretAdminAccessesteja anexada ao usuário ou à função RAM. Consulte {{XREF_4}} ou {{XREF_5}} para saber mais.
Criar um segredo do Redis/Tair
Configure a rotação periódica automática ao criar uma credencial para mitigar riscos de segurança associados a vazamentos.
Faça login no console do Key Management Service. Na barra de navegação superior, selecione uma região. No painel de navegação à esquerda, escolha .
Clique na aba Database Secrets, selecione um Instance ID e clique em Create Secret.
-
Selecione Create Single Secret ou Create Bulk Secrets, configure os parâmetros e clique em OK.
NotaDurante a criação de um segredo, o sistema gera automaticamente uma Service-linked Role in ApsaraDB for Redis e anexa a ela a política de permissões
AliyunServiceRolePolicyForKMSSecretsManagerForRedis. O KMS assume essa função para gerenciar segredos do Redis e executar tarefas como a rotação de senhas.Acesse o console do RAM para visualizar detalhes sobre funções vinculadas ao serviço e políticas de permissões. Para mais informações, consulte {{XREF_6}} e {{XREF_7}}.
Parâmetro
Descrição
Database Type
Selecione ApsaraDB for Redis/Tair Instance.
Secret Name
Nome personalizado da credencial. Deve ser único na região atual.
ApsaraDB for Redis/Tair Instance
Escolha uma instância do Redis ou do Tair associada à sua conta Alibaba Cloud.
Account Management
Somente a opção Manage Dual Accounts é suportada.
Secret Value
Apenas novas contas são suportadas. Contas existentes do Redis/Tair não podem ser gerenciadas.
-
Account Name: Especifique um prefixo para o nome de usuário. O KMS cria duas contas de banco de dados com permissões idênticas por meio de chamada de API. Por exemplo, ao especificar
user, o KMS criausereuser_clone. -
Permissions: Defina como Read/Write ou Read-Only. Ambas as novas contas receberão as mesmas permissões.
CMK
Selecione a chave simétrica usada para criptografar o valor da credencial. A chave e a credencial devem pertencer à mesma instância do KMS.
ImportanteA chave e a credencial devem pertencer à mesma instância do KMS, sendo obrigatório o uso de uma chave simétrica. Para mais detalhes sobre as chaves simétricas suportadas pelo KMS, consulte {{XREF_8}}.
Caso utilize um usuário RAM ou uma função RAM, este deve possuir permissões para executar a operação GenerateDataKey usando a chave mestra de criptografia.
Automatic Rotation
Indique se deseja ativar a rotação automática. Quando ativada, o KMS atualiza periodicamente o valor da credencial para reduzir riscos de vazamento.
Rotation Period
Configure este parâmetro apenas quando a rotação automática estiver habilitada. Valores válidos: de 6 horas a 365 dias.
Define o intervalo de rotação. O KMS atualiza o valor da credencial periodicamente com base nesta configuração.
Description
Descrição opcional da credencial para facilitar sua identificação e gestão.
Defina a política de acesso da credencial para controlar quais usuários ou funções RAM podem lê-la ou modificá-la.
Selecione inicialmente a política padrão e modifique-a posteriormente conforme necessário.
-
Integrar aplicações com segredos do Redis/Tair
O KMS disponibiliza SDKs do Alibaba Cloud, SDK de Instância do KMS e um cliente de segredos para recuperação de valores. Utilize essas ferramentas para integrar suas aplicações aos segredos do Redis/Tair. Para mais informações sobre os SDKs, consulte {{XREF_9}}.
Recomendamos implementar um mecanismo de nova tentativa ao utilizar outros SDKs para aumentar a estabilidade do serviço.
Operações de gerenciamento, como a criação de segredos do Redis/Tair ou a modificação de suas tags, exigem o uso de um SDK do Alibaba Cloud.
Rotacionar um segredo do Redis/Tair
Durante a rotação de um segredo do Redis/Tair, o KMS redefine apenas a senha da conta associada, mantendo a conta intacta. Geralmente, a rotação é concluída instantaneamente. Caso uma tarefa de rotação não termine em dois minutos, verifique o status da instância Redis/Tair e das contas relacionadas.
Antes da rotação
Durante o processo, o KMS solicita ao serviço Redis ou Tair que redefina a senha da conta. Antes de rotacionar um segredo, garanta que todas as aplicações recuperem o segredo via KMS para evitar interrupções no serviço.
Não exclua a instância Redis/Tair associada ou suas contas enquanto a rotação estiver em andamento, pois isso causará falha no processo.
Recomenda-se realizar uma verificação de conta antes da rotação. Prossiga somente após a confirmação de sucesso. Se a instância ou as contas correspondentes no Redis ou Tair tiverem sido excluídas, o KMS não conseguirá rotacionar o segredo.
Funcionamento da rotação
Ao hospedar segredos do Redis ou Tair no KMS, utiliza-se um mecanismo de rotação alternada de conta dupla. Esse mecanismo mantém duas contas de banco de dados com as mesmas permissões e seus respectivos estágios de versão de segredo no KMS (ACSCurrent e `ACSPrevious) para garantir uma rotação contínua. O processo específico ocorre da seguinte forma:
-
Configuração inicial
Ao configurar uma conta personalizada (por exemplo,
user) no KMS, o sistema chama automaticamente a API do Redis/Tair para criar duas contas de banco de dados:usereuser_clone.-
Mapeamento do estado inicial:
O estágio da versão do segredo no KMS para a conta
useréACSCurrent(versão ativa no momento).O estágio da versão do segredo no KMS para a conta
user_cloneéACSPrevious(versão anterior/em espera).
-
Primeira rotação
O KMS chama a API para alterar a senha da conta em espera (
user_clone).-
Troca de status: a versão atual é rebaixada e a versão em espera é promovida:
O status de
usermuda deACSCurrentparaACSPrevious.O status de
user_clonemuda deACSPreviousparaACSCurrent.
-
Rotações subsequentes: a cada nova rotação acionada, o KMS alterna a alteração de senhas entre as duas contas e sincroniza seus estágios de versão, garantindo credenciais de acesso continuamente disponíveis.
Configurar a rotação automática periódica de credenciais reduz eficazmente o risco de vazamentos decorrentes da falta de atualizações prolongadas. Além disso, o console permite a rotação manual imediata, facilitando a resposta rápida a incidentes de segurança e a mitigação oportuna de ameaças potenciais.
Faça login no console do Key Management Service. Na barra de navegação superior, selecione uma região. No painel de navegação à esquerda, escolha .
Clique na aba Database Secrets. Selecione um Instance ID. Na lista suspensa Type, selecione Redis. Localize o segredo que deseja rotacionar e clique em Details na coluna Actions.
-
Na seção Versions, clique em Configure Rotation e defina a política de rotação.
Rotação automática: Se habilitada, escolha um período de rotação entre 6 horas e 365 dias.
Rotacionar agora: Aciona manualmente uma rotação imediata.
Mais operações
Verificação de conta
O KMS verifica se a conta de banco de dados associada a um segredo pertence à instância Redis configurada. Uma verificação bem-sucedida indica que o segredo pode ser rotacionado. Em caso de falha, será necessário excluir e recriar o segredo do Redis/Tair.
Faça login no console do Key Management Service. Na barra de navegação superior, selecione uma região. No painel de navegação à esquerda, escolha .
Clique na aba Database Secrets. Selecione um Instance ID. Na lista suspensa Type, selecione ApsaraDB for Redis Secrets. Localize o segredo que deseja verificar e clique em Details na coluna Actions.
Na seção Versions, clique em Check Account. Após a conclusão da verificação, visualize o resultado.
Excluir um segredo do Redis/Tair
Antes de excluir um segredo, certifique-se de que ele não está mais em uso. A exclusão de um segredo ativo pode causar falhas em suas aplicações.
Dois métodos de exclusão são suportados: exclusão agendada e exclusão imediata. A remoção de um segredo do Redis/Tair no KMS elimina apenas o segredo em si, sem excluir as contas de banco de dados correspondentes na instância Redis ou Tair.
Faça login no console do Key Management Service. Na barra de navegação superior, selecione uma região. No painel de navegação à esquerda, escolha .
Clique na aba Database Secrets. Selecione um Instance ID. Na lista suspensa Type, selecione Redis. Localize o segredo que deseja excluir e clique em Schedule Deletion na coluna Actions.
-
Na caixa de diálogo Schedule Deletion, escolha o método de exclusão do segredo e clique em OK.
Schedule Deletion: Especifique um período de recuperação de 7 a 30 dias. O sistema excluirá o segredo após o término desse prazo.
Delete Immediately: O sistema exclui o segredo imediatamente.
Durante o período de recuperação, localize o segredo e clique em Restore Secret na coluna Actions para cancelar a exclusão.
Configurar tags de credenciais
Atribua tags às credenciais para organizá-las e gerenciá-las. Cada tag consiste em um par chave-valor (Chave : Valor), composto por uma chave de tag (Chave) e um valor de tag (Valor).
Observações sobre o uso de tags
Uma chave ou valor de tag pode conter até 128 caracteres, incluindo letras, dígitos, barras (/), barras invertidas (\), sublinhados (_), hifens (-), pontos (.), sinais de adição (+), sinais de igual (=), dois-pontos (:), arrobas (@) e espaços.
Uma chave de tag não pode começar com aliyun ou acs:. Essa restrição não se aplica aos valores de tag.
Cada credencial pode ter até 20 tags.
Procedimentos
Marcar uma única credencial
Faça login no console do Key Management Service. Na barra de navegação superior, selecione uma região. No painel de navegação à esquerda, escolha .
Clique na aba correspondente ao tipo de credencial, selecione um Instance ID e localize a credencial desejada.
-
Abra o editor de tags utilizando um dos métodos abaixo:
Método 1: Na lista de credenciais, clique no ícone
na coluna Tags da credencial alvo.Método 2: Clique em Actions > Details para acessar a página de detalhes da credencial e, em seguida, clique no ícone
ao lado de Tag.
Marcar múltiplas credenciais em massa
Faça login no console do Key Management Service. Na barra de navegação superior, selecione uma região. No painel de navegação à esquerda, escolha .
-
Clique na aba correspondente ao tipo de credencial, selecione um Instance ID e marque as credenciais desejadas na lista.
Adicionar tags: Na parte inferior da lista de credenciais, clique em Add Tag, insira a Tag Key e o Tag Value, e clique em OK.
Excluir tags: Na parte inferior da lista de credenciais, clique em Remove Tag, selecione as tags a serem desvinculadas na caixa de diálogo Batch Remove, clique em Cancel e, em seguida, clique em Close na caixa de diálogo de confirmação.