Políticas gerenciadas e em linha - AWS Identity and Access Management

Políticas gerenciadas e em linha

Quando você precisa definir as permissões para uma identidade no IAM, deve decidir se deseja usar uma política gerenciada pela AWS, uma política gerenciada pelo cliente ou uma política em linha. As seções a seguir oferecem mais informações sobre cada um dos tipos de políticas baseadas em identidade e quando usá-las.

Políticas gerenciadas pela AWS

Uma política gerenciada pela AWS é uma política independente que é criada e administrada pela AWS. Política independente significa que a política tem seu próprio nome de recurso da Amazon (ARN) que inclui o nome da política. Por exemplo, arn:aws:iam::aws:policy/IAMReadOnlyAccess é uma política gerenciada da AWS. (Para obter mais informações sobre ARNs, consulte ARNs do IAM).

As políticas gerenciadas pela AWS são criadas para fornecer permissões para vários casos de uso comuns. As políticas gerenciadas pela AWS de acesso total, como AmazonDynamoDBFullAccess e IAMFullAccess, definem permissões para administradores de serviço concedendo acesso total a um serviço. As políticas gerenciadas pela AWS de usuário avançado, como AWSCodeCommitPowerUser e AWSKeyManagementServicePowerUser, foram projetadas para usuários avançados. As políticas gerenciadas pela AWS de acesso parcial, como AmazonMobileAnalyticsWriteOnlyAccess e AmazonEC2ReadOnlyAccess, oferecem níveis específicos de acesso a serviços da AWS sem conceder permissões no nível de acesso de gerenciamento de permissões. As políticas gerenciadas pela AWS facilitam a atribuição de permissões apropriadas a usuários, grupos e funções em comparação à elaboração de suas próprias políticas.

Uma categoria especialmente útil de políticas gerenciadas pela AWS são as projetadas para funções de trabalho. Essas políticas se alinham intimamente a funções de trabalho normalmente usadas no setor de TI. O objetivo é tornar a concessão de permissões para essas funções de trabalho comuns algo fácil. Uma das principais vantagens de usar políticas de função de trabalho é que elas são mantidas e atualizadas pela AWS à medida que novos serviços e operações de API são introduzidos. Por exemplo, a função de trabalho AdministratorAccess fornece acesso total e delegação de permissões para cada serviço e recurso na AWS. Recomendamos que essa política seja usada apenas para o administrador da conta. Para usuários avançados que exigem acesso completo a todos os serviços, exceto o acesso limitado ao IAM e ao Organizações, use a função de trabalho PowerUserAccess. Para obter uma lista e as descrições das políticas de função de trabalho, consulte Políticas gerenciadas pela AWS para funções de trabalho.

Você não pode alterar as permissões definidas em políticas gerenciadas pela AWS. Ocasionalmente, a AWS atualizará as permissões definidas em uma política gerenciada da AWS. Quando a AWS fizer isso, a atualização afetará todas as principais entidades (usuários, grupos e funções) às quais a política está anexada. É mais provável que a AWS atualize uma política gerenciada da AWS quando um novo serviço da AWS for iniciado ou novas chamadas de API se tornarem disponíveis para os serviços existentes. Por exemplo, a política gerenciada pela AWS denominada ReadOnlyAccess fornece acesso somente leitura a todos os serviços e recursos da AWS. Quando a AWS lança um novo serviço, a AWS atualiza a política ReadOnlyAccess para adicionar permissões somente leitura para o novo serviço. As permissões atualizadas são aplicadas a todas as entidades principais às quais política estiver anexada.

O seguinte diagrama ilustra as políticas gerenciadas pela AWS. O diagrama mostra três políticas gerenciadas pela AWS: AdministratorAccess, PowerUserAccess e AWSCloudTrailReadOnlyAccess. Uma única política gerenciada pela AWS pode ser anexada a entidades principais em diferentes contas da AWS e a entidades principais diferentes em uma única conta da AWS.


        Diagrama de políticas gerenciadas pela AWS

Políticas gerenciadas pelo cliente

Você pode criar políticas independentes que são administradas em sua própria conta da AWS, o que chamamos de políticas gerenciadas pelo cliente. Em seguida, você pode anexar as políticas a várias entidades principais na sua conta da AWS. Ao anexar uma política a uma entidade principal, você atribui à entidade as permissões que estão definidas na política.

Uma ótima forma de criar uma política gerenciada pelo cliente é começar copiando uma política gerenciada pela AWS. Dessa forma, você sabe que a política está correta no início e basta personalizá-la para seu ambiente.

O seguinte diagrama ilustra as políticas gerenciadas pelo cliente. Cada política é uma entidade no IAM com seu próprio nome de recurso da Amazon (ARN) que inclui o nome da política. A mesma política pode ser anexada a várias entidades principais — por exemplo, a mesma política DynamoDB-books-app é anexada a duas funções diferentes do IAM.


        Diagrama de políticas gerenciadas pelo cliente

Políticas em linha

Uma política em linha é uma política incorporada a uma identidade do IAM (um usuário, grupo ou função). Ou seja, a política é uma parte inerente da identidade. Você pode criar uma política e incorporá-la em uma identidade, seja ao criar a identidade ou posteriormente.

O seguinte diagrama ilustra as políticas em linha. Cada política é uma parte inerente do usuário, do grupo ou da função. Observe que duas funções incluem a mesma política (DynamoDB-books-app), mas elas não compartilham uma única política; cada função tem sua própria cópia da política.


        Diagrama de políticas em linha

Escolher entre políticas gerenciadas e em linha

Os diferentes tipos de políticas são para casos de uso diferentes. Na maioria dos casos, recomendamos que você use políticas gerenciadas em vez de políticas em linha.

As políticas gerenciadas fornecem os seguintes recursos:

Capacidade de reutilização

Uma única política gerenciada pode ser anexada a várias entidades principais (usuários, grupos e funções). Na verdade, você pode criar uma biblioteca de políticas que definem permissões úteis para sua conta da AWS e, em seguida, anexar essas políticas a entidades principais, conforme necessário.

Gerenciamento de alterações central

Quando você alterar uma política gerenciada, a alteração será aplicada a todas as entidades principais às quais a política estiver anexada. Por exemplo, se você deseja adicionar permissões para uma nova API da AWS, poderá atualizar a política gerenciada para adicionar a permissão. (Se você estiver usando uma política gerenciada pela AWS, a AWS atualizará a política.) Quando a política for atualizada, as alterações serão aplicadas a todas as entidades principais às quais a política estiver anexada. Por outro lado, para alterar uma política em linha, é necessário editar individualmente cada identidade que contenha a política. Por exemplo, se um grupo e uma função contiverem a mesma política em linha, você deverá editar individualmente as duas entidades principais para alterar essa política.

Versionamento e reversão

Quando você altera uma política gerenciada pelo cliente, a política alterada não substitui a política existente. Em vez disso, o IAM cria uma nova versão da política gerenciada. O IAM armazena até cinco versões das políticas gerenciadas pelo cliente. Você pode usar as versões da política para reverter uma política para uma versão anterior, se necessário.

Uma versão de política é diferente de um elemento de política Version. O elemento de política Version é usado em uma política e define a versão da linguagem da política. Para saber mais sobre as versões de política, consulte Versionamento de políticas do IAM. Para saber mais sobre o elemento de política Version, consulte Elementos de política JSON do IAM: Version.

Como delegar o gerenciamento de permissões

Você pode permitir que os usuários em sua conta da AWS anexe e desanexe políticas sem deixar de manter o controle das permissões definidas nessas políticas. Na verdade, você pode designar alguns usuários como administradores completos — ou seja, administradores que podem criar, atualizar e excluir políticas. Em seguida, você pode designar outros usuários como administradores limitados. Ou seja, administradores que podem anexar políticas a outras entidades principais, mas somente as políticas que você permitiu que eles anexem.

Para obter mais informações sobre como delegar permissões, consulte Controlar o acesso a políticas.

Atualizações automáticas para políticas gerenciadas pela AWS

A AWS mantém políticas gerenciadas pela AWS e as atualiza quando necessário (por exemplo, para adicionar permissões para novos serviços da AWS), sem precisar fazer alterações. As atualizações são aplicadas automaticamente às principais entidades às quais você tenha anexado a política gerenciada pela AWS.

Usar políticas em linha

As políticas em linha são úteis se você deseja manter um rigoroso relacionamento de um para um entre uma política e a identidade à qual ela é aplicada. Por exemplo, você deseja ter certeza de que as permissões em uma política não sejam atribuídas acidentalmente a uma identidade diferente da pretendida. Quando você usa uma política em linha, as permissões nela não podem ser anexadas acidentalmente à identidade errada. Além disso, quando você usa o Console de gerenciamento da AWS para excluir a identidade, as políticas incorporadas nela também são excluídas. A razão disso é porque elas fazem parte da entidade principal.