fbpx

Associando Políticas ao AWS IAM Principais

Compartilhar no facebook
Compartilhar no linkedin
Compartilhar no twitter
Compartilhar no whatsapp
Compartilhar no telegram

Existem várias maneiras de associar uma política a um usuário do IAM. Neste artigo vamos cobrir apenas os mais comuns. Uma política pode ser associada diretamente a um usuário do IAM de duas maneiras:

  • Política do usuário – Essas políticas existem apenas no contexto do usuário ao qual estão anexadas. No console, uma política de usuário é inserida na interface do usuário na página de usuário do IAM.
  • Políticas gerenciadas – Essas políticas são criadas na guia Políticas na página do IAM (ou através da CLI e assim por diante) e existem independentemente de qualquer usuário individual. Dessa maneira, a mesma política pode ser associada a muitos usuários ou grupos de usuários.

Há um grande número de políticas gerenciadas predefinidas que você pode revisar na guia Políticas da página IAM no AWS Management Console. Além disso, você pode escrever suas próprias políticas específicas para seus casos de uso.

O uso de políticas gerenciadas predefinidas garante que, quando novas permissões forem adicionadas para novos recursos, seus usuários ainda tenham o acesso correto.

O outro método comum para associar políticas a usuários é o recurso de grupos do IAM. Os grupos simplificam o gerenciamento de permissões para um grande número de usuários. Depois que uma política é atribuída a um grupo, qualquer usuário que seja membro desse grupo assume essas permissões.

Isso simplifica a atribuição de políticas a uma equipe inteira em sua organização.

Por exemplo, se você criar um grupo “Operações” com todos os usuários do IAM para sua equipe de operações atribuídos a esse grupo, é simples associar as permissões necessárias ao grupo, e todos os usuários do IAM da equipe assumirão essas permissões . Novos usuários do IAM podem ser atribuídos diretamente ao grupo.

Esse é um processo de gerenciamento muito mais simples do que ter que revisar quais políticas um novo usuário do IAM para a equipe de operações deve receber e adicionar manualmente essas políticas ao usuário.

Há duas maneiras de associar uma política a um grupo do IAM:

  • Política de Grupo – Essas políticas existem apenas no contexto do grupo ao qual estão anexadas. No AWS Management Console, uma política de grupo é inserida na interface do usuário na página Grupo do IAM.
  • Políticas gerenciadas – Da mesma maneira que as políticas gerenciadas (discutidas na seção “Autorização”) podem ser associadas aos usuários do IAM, elas também podem ser associadas aos grupos do IAM.

Uma boa primeira etapa é usar o usuário root para criar um novo grupo do IAM chamado “Administradores do IAM” e atribuir a política gerenciada, “IAMFullAccess”.

Em seguida, crie um novo usuário do IAM chamado “Administrador”, atribua uma senha e adicione-a ao grupo Administradores do IAM. Nesse ponto, você pode fazer logoff como usuário raiz e realizar toda a administração adicional com a conta de usuário do IAM.

A maneira final de um ator poder ser associado a uma política é assumindo um papel. Nesse caso, o ator pode ser:

  • Um usuário IAM autenticado (pessoa ou processo). Nesse caso, o usuário do IAM deve ter os direitos para assumir a função.
  • Uma pessoa ou processo autenticado por um serviço confiável fora da AWS, como um diretório LDAP exclusivo ou um serviço de autenticação da web. Nessa situação, um serviço da AWS Cloud assumirá a função em nome do ator e devolverá um token ao ator.

Depois que um ator assume uma função, ele recebe um token de segurança temporário associado às políticas dessa função. O token contém todas as informações necessárias para autenticar as chamadas de API.

Essas informações incluem uma chave de acesso padrão e um token de sessão adicional necessário para autenticar chamadas em uma função assumida.

 

Outros recursos principais

Além dos conceitos críticos de entidades, autenticação e autorização, existem vários outros recursos do serviço IAM que são importantes para entender para obter todos os benefícios do IAM.

 

Autenticação Multifator (MFA)

A autenticação multifator (MFA) pode adicionar uma camada extra de segurança à sua infraestrutura, adicionando um segundo método de autenticação além de apenas uma senha ou chave de acesso.

Com o MFA, a autenticação também exige a inserção de uma Senha de uso único (OTP) a partir de um dispositivo pequeno.

O dispositivo MFA pode ser um pequeno dispositivo de hardware que você carrega com você ou um dispositivo virtual por meio de um aplicativo no seu smartphone (por exemplo, o aplicativo AWS Virtual MFA). O MFA exige que você verifique sua identidade com algo que você conhece e algo que possui.

O MFA pode ser atribuído a qualquer conta de usuário do IAM, independentemente de representar uma pessoa ou aplicativo.

Quando uma pessoa que usa um usuário do IAM configurado com o MFA tenta acessar o Console de Gerenciamento da AWS, depois de fornecer sua senha, será solicitado a inserir o código atual exibido no dispositivo MFA antes de receber acesso.

Um aplicativo que usa um usuário do IAM configurado com o MFA deve consultar o usuário do aplicativo para fornecer o código atual, que o aplicativo passará para a API.

É altamente recomendável que os clientes da AWS adicionem proteção MFA ao usuário root.

 

Chaves Rotativas

O risco de segurança de qualquer credencial aumenta com a idade da credencial. Para esse fim, é uma prática recomendada de segurança girar as chaves de acesso associadas aos usuários do IAM.

O IAM facilita esse processo, permitindo duas chaves de acesso ativas por vez. O processo para girar as chaves pode ser conduzido por meio do console, CLI ou SDKs:

  1. Crie uma nova chave de acesso para o usuário.
  2. Reconfigure todos os aplicativos para usar a nova chave de acesso.
  3. Desabilite a chave de acesso original (a desativação em vez de excluir neste estágio é crítica, pois permite a reversão da chave original se houver problemas com a rotação).
  4. Verifique o funcionamento de todos os aplicativos.
  5. Exclua a chave de acesso original.

 

As teclas de acesso devem ser rotacionadas regularmente.

 

Resolvendo Várias Permissões

Ocasionalmente, várias permissões serão aplicáveis ​​ao determinar se um principal tem o privilégio de executar alguma ação.

Essas permissões podem vir de várias políticas associadas a uma política principal ou de recursos anexada ao recurso da AWS em questão. É importante saber como os conflitos entre essas permissões são resolvidos:

  1. Inicialmente, a solicitação é negada por padrão.
  2. Todas as políticas apropriadas são avaliadas; se houver uma “negação” explícita encontrada em qualquer política, a solicitação será negada e a avaliação será interrompida.
  3. Se nenhum “negar” explícito for encontrado e um “permitir” explícito for encontrado em qualquer política, a solicitação será permitida.
  4. Se não houver permissões explícitas de “permitir” ou “negar” encontradas, o padrão “negar” será mantido e a solicitação será negada.

A única exceção a essa regra é que, se uma chamada AssumeRole incluir uma função e uma política, a política não poderá expandir os privilégios da função (por exemplo, a política não poderá substituir nenhuma permissão negada por padrão na função).