Aplique o princípio do menor privilégio a identidades humanas e programáticas no Alibaba Cloud, minimizando a duração e a superfície de exposição das credenciais.
As identidades na nuvem se dividem em duas categorias: identidades humanas e identidades programáticas.
Uma identidade humana representa um indivíduo — como um administrador de segurança, engenheiro de operações ou desenvolvedor — que gerencia recursos da nuvem por meio do console do Alibaba Cloud, da CLI ou de clientes especializados.
Uma identidade programática representa uma aplicação ou serviço que acessa recursos e dados da nuvem por meio das APIs do Alibaba Cloud.
O gerenciamento de identidades no Alibaba Cloud segue dois princípios fundamentais de menor privilégio: minimizar a duração da exposição e minimizar a superfície de exposição.
Para reduzir a duração da exposição, utilize identidades temporárias ou credenciais temporárias em vez de estáticas e faça a rotação regular das credenciais estáticas.
Para diminuir a superfície de exposição, armazene chaves e credenciais com segurança e nunca as compartilhe ou reutilize entre aplicações ou tipos de identidade.
As seções a seguir abordam as melhores práticas para cada tipo de identidade.
Identidades humanas
Evite usar a identidade raiz
A identidade raiz possui permissões totais sobre todos os recursos da conta. Caso sua senha seja vazada, o risco é crítico. Compartilhar essa identidade entre várias pessoas aumenta a probabilidade de comprometimento e impede o rastreamento de responsabilidade nos logs operacionais. Exceto em alguns cenários específicos, use identidades do Resource Access Management (RAM) para acessar os recursos da nuvem. Para proteger a identidade raiz, siga as práticas descritas na seção "Estabeleça um mecanismo de login mais seguro" abaixo.
Implemente autenticação unificada para identidades humanas
Um Provedor de Identidade (IdP) centralizado simplifica o gerenciamento de identidades e mantém a consistência entre as identidades locais e na nuvem. Alterações de pessoal exigem atualizações em apenas um local, eliminando a necessidade de credenciais separadas para usuários RAM. Algumas organizações restringem ainda mais o acesso ao IdP à rede corporativa interna.
O Alibaba Cloud oferece suporte a SSO baseado em SAML 2.0. Integre seu IdP por meio do SSO do RAM para unificar a autenticação de identidades humanas. Para organizações com múltiplas contas do Alibaba Cloud, utilize o CloudSSO para centralizar a configuração de SSO entre as contas.
Estabeleça um mecanismo de login mais seguro
Credenciais vazadas permitem que invasores façam login e causem danos irreparáveis. Proteja todas as credenciais de identidades humanas com as seguintes práticas:
Aumente a complexidade das senhas. Exija senhas mais longas, combinando números, letras maiúsculas e minúsculas e caracteres especiais. Para usuários RAM, os administradores podem definir regras de complexidade de senha para impor requisitos de segurança.
Evite reutilizar senhas. O uso da mesma senha em diferentes serviços ou usuários amplia a superfície de exposição. Se uma credencial for comprometida, os invasores poderão acessar todos os serviços que utilizam aquela senha. Atribua senhas exclusivas para cada serviço e usuário.
Faça a rotação regular de senhas. Quanto mais tempo uma senha existir, maior será o risco de vazamento. Para usuários RAM, os administradores podem configurar uma política de expiração de senha nas regras de complexidade de senha para impor a rotação periódica.
Use autenticação multifator (MFA). O MFA adiciona uma segunda camada de verificação durante o login ou a execução de operações sensíveis. O Alibaba Cloud suporta diversos métodos de verificação, incluindo dispositivos MFA virtuais e chaves de segurança U2F. Ative o MFA para todas as identidades humanas. Organizações que utilizam um IdP local também devem ativar o MFA no lado do IdP.
Use assunção de função em vez de identidades estáticas
Identidades temporárias minimizam a superfície de exposição e reduzem o risco de vazamento de credenciais. O acesso baseado em funções também permite modelar permissões por cargo, padronizando o controle de acesso.
Gerencie identidades humanas por meio de SSO baseado em assunção de função.
Identidades programáticas
Não use AccessKeys da conta Alibaba Cloud
Um AccessKey da conta Alibaba Cloud concede controle administrativo total e irrestrito, equivalente à identidade raiz. Ele não pode ser limitado por condições como IP de source ou horário de acesso, e suas permissões não podem ser reduzidas. Sempre utilize AccessKeys de usuários RAM para acesso programático.
Evite compartilhar AccessKeys
AccessKeys compartilhados exigem permissões excessivamente amplas e amplificam o impacto de qualquer vazamento. Compartilhar chaves entre ambientes é especialmente arriscado — um vazamento em um ambiente de testes menos seguro pode comprometer diretamente a produção.
Crie um AccessKey exclusivo para cada aplicação, módulo e ambiente. Conceda a cada chave apenas as permissões necessárias para seu caso de uso específico.
Faça a rotação regular de AccessKeys
Quanto mais tempo um AccessKey existir, maior será o risco de vazamento. Crie periodicamente uma nova chave, substitua a ativa e, em seguida, desative e exclua a chave antiga. Use o Secrets Manager no KMS para automatizar esse processo de rotação.
Realize a rotação regular também de todas as outras credenciais programáticas.
Use credenciais temporárias em vez de credenciais estáticas
Um AccessKey estático consiste em um AccessKey ID e um Secret fixos que persistem até serem excluídos. Credenciais estáticas apresentam riscos significativos — por exemplo, um desenvolvedor pode codificar uma chave diretamente no código e enviá-la a um repositório público, causando um vazamento.
Utilize a assunção de função para obter um token temporário do Security Token Service (STS) em vez de um AccessKey estático. Os tokens STS expiram automaticamente após a duração máxima da sessão da função (em horas), limitando a janela de exposição.
O Alibaba Cloud integra tokens STS aos seguintes métodos de implantação:
Para instâncias do Elastic Compute Service (ECS), use uma função RAM de instância. Sua aplicação poderá então obter um token de autorização temporário por meio do serviço de metadados da instância.
Para o Container Service for Kubernetes (ACK), use o recurso RRSA para vincular uma função RAM a um ServiceAccount específico e assumi-la no nível do pod para obter um token STS.
Para o Function Compute, conceda ao serviço ao qual a função pertence permissões para acessar outros serviços do Alibaba Cloud para obter um token STS.
Independentemente do método de implantação, utilize os SDKs oficiais do Alibaba Cloud. Defina a configuração de credenciais adequada para o seu tipo de implantação, e o SDK cuidará automaticamente do cache e da renovação dos tokens STS.