Marcar usuários e funções do IAM - AWS Identity and Access Management

Marcar usuários e funções do IAM

É possível usar tags do IAM para adicionar atributos personalizados a uma entidade do IAM (usuário ou função) usando um par chave–valor de tag. Por exemplo, para adicionar informações de localização a um usuário, você pode adicionar a chave de tag location e o valor de tag us_wa_seattle. Ou você pode usar três valores de chave–valor da tag de local separados: loc-country = us, loc-state = wa e loc-city = seattle. Você pode usar tags para controlar o acesso de uma entidade a recursos ou para controlar quais tags podem ser anexadas a uma entidade. Para saber mais sobre como usar tags para controlar o acesso, consulte Controlar o acesso a e para usuários e funções do IAM que usam tags de recursos do IAM.

Você também pode usar tags no AWS STS para adicionar atributos personalizados ao assumir uma função ou federar um usuário. Para obter mais informações, consulte Passar tags de sessão no AWS STS.

Escolher uma convenção de nomenclatura de tag da AWS

Quando você começar a anexar tags aos usuários e funções do IAM, escolha a convenção de nomenclatura de tags cuidadosamente. Aplique a mesma convenção a todas as tags da AWS. Isso será especialmente importante se você usar tags em políticas para controlar acesso a recursos da AWS. Se você já usa tags em AWS, revise a convenção de nomenclatura e a ajuste de acordo. Para saber mais sobre como marcar categorias e estratégias, consulte Marcação da AWS de recursos da AWS no Guia de AWS General Reference. Para visualizar os casos de uso e as melhores práticas de marcação, faça download do whitepaper Tagging Best Practices.

Regras para marcação no IAM e no AWS STS

Uma série de convenções regem a criação e a aplicação de tags no IAM e AWS STS.

Nomear tags

Observe as seguintes convenções ao formular uma convenção de nomenclatura de tags para usuários do IAM, funções do IAM, sessões de assumir função do AWS STS e sessões de usuário federado do AWS STS:

  • As chaves e os valores de tag podem incluir qualquer combinação de letras, números, espaços e símbolos _.:/=+- @.

  • Os pares de chave–valor de tag não diferenciam maiúsculas de minúsculas, mas elas são preservadas. Isso significa que você não pode ter chaves de tag Department e department separadas. Se você tiver marcado um usuário com a tag Department=foo e adicionar a tag department=bar, ela substituirá a primeira. Uma segunda tag não é adicionada.

  • Você não pode criar uma chave ou um valor de tag que comece com o texto aws:. Esse prefixo de tag está reservado para uso interno da AWS.

  • Você pode criar uma tag com um valor vazio, como phoneNumber = . Você não pode criar uma chave de tag vazia.

  • Você não pode especificar vários valores em uma única tag, mas pode criar uma estrutura multivalor personalizada no valor único. Por exemplo, suponhamos que o usuário Zhang trabalhe na equipe de engenharia e na equipe de controle de qualidade. Se anexar a tag team = Engineering e, em seguida, anexar a tag team = QA, você alterará o valor da tag de Engineering para QA. Em vez disso, você pode incluir vários valores em uma única tag com um separador personalizado. Neste exemplo, você pode anexar a tag team = Engineering:QA a Zhang.

    nota

    Para controlar o acesso a engenheiros neste exemplo usando a tag team, você deve criar uma política que possibilite todas as configurações que possam incluir Engineering, até mesmo Engineering:QA. Para saber mais sobre como usar tags em políticas, consulte Controlar o acesso a e para usuários e funções do IAM que usam tags de recursos do IAM.

Aplicar e editar tags

Observe as seguintes convenções ao anexar tags a entidades (usuários ou funções) do IAM:

  • Você pode marcar usuários ou funções, mas não grupos nem políticas.

  • Você não pode usar o Tag Editor para marcar entidades do IAM. O Tag Editor não dá suporte para tags do IAM. Para obter informações sobre como usar o Tag Editor com outros serviços, consulte Trabalhar com o Tag Editor no Console de gerenciamento da AWS Guia do usuário.

  • Para marcar uma entidade do IAM, você deve ter permissões específicas. Para marcar ou desmarcar funções e usuários, você também deve ter permissão para listar tags. Para obter mais informações, consulte Permissões necessárias para marcar entidades do IAM a seguir.

  • O número e o tamanho dos recursos do IAM em uma conta da AWS são limitados. Para obter mais informações, consulte Cotas do IAM e do STS.

  • Você pode aplicar a mesma tag a várias entidades do IAM. Por exemplo, suponha que você tenha um departamento chamado AWS_Development com 12 membros. É possível ter 12 usuários e uma função com a chave de tag de department e um valor de awsDevelopment (department = awsDevelopment). Você também pode usar a mesma tag em recursos em outros serviços que dão suporte a tags.

  • Uma entidade do IAM não pode ter várias instâncias da mesma chave de tag. Por exemplo, se tiver um usuário com o par chave–valor de tag costCenter = 1234, você poderá anexar o par chave–valor de tag costCenter = 5678. O IAM atualiza o valor da tag costCenter para 5678.

  • Para editar uma tag anexada a um usuário ou a uma função do IAM, anexe uma tag com um novo valor para substituir a tag existente. Por exemplo, suponhamos que você tenha um usuário com o par chave–valor de tag department = Engineering. Se precisar mover o usuário para o departamento de controle de qualidade, você poderá anexar o par chave–valor de tag department = QA ao usuário. Isso resulta na substituição do Engineering valor da chave de tag department pelo valor QA.

Permissões necessárias para marcar entidades do IAM

Você deve configurar permissões para permitir que uma entidade do IAM (usuário ou função) marque outras entidades. Você pode especificar uma ou todas as seguintes de tag do IAM em uma política do IAM:

  • iam:ListRoleTags

  • iam:ListUserTags

  • iam:TagRole

  • iam:TagUser

  • iam:UntagRole

  • iam:UntagUser

Para permitir que uma entidade do IAM adicione, liste ou remova uma tag de um usuário específico

Adicione a seguinte declaração à política de permissões da entidade do IAM que precisa gerenciar tags. Use o número da conta e substitua <username> pelo nome do usuário que precisa ser gerenciado. Para saber mais sobre como criar uma política usando este exemplo de documento de política JSON, consulte Criar políticas na guia JSON.

{ "Effect": "Allow", "Action": [ "iam:ListUserTags", "iam:TagUser", "iam:UntagUser" ], "Resource": "arn:aws:iam:*:<account-number>:user/<username>" }

Para permitir que um usuário do IAM gerencie tags

Adicione a seguinte instrução à política de permissões para que usuários permitam que outros gerenciem as próprias tags. Para saber mais sobre como criar uma política usando este exemplo de documento de política JSON, consulte Criar políticas na guia JSON.

{ "Effect": "Allow", "Action": [ "iam:ListUserTags", "iam:TagUser", "iam:UntagUser" ], "Resource": "arn:aws:iam:*:user/${aws:username}" }

Para permitir que uma entidade do IAM adicione uma tag a um usuário específico

Adicione a declaração a seguir à política de permissões da entidade do IAM que precisa adicionar, mas não remover, tags de um usuário específico.

nota

As ações iam:AddUserTags e iam:AddRoleTags exigem que você também inclua as ações iam:ListUserTags e iam:ListRoleTags.

Para usar essa política, substitua <username> pelo nome do usuário que precisa ser gerenciado. Para saber mais sobre como criar uma política usando este exemplo de documento de política JSON, consulte Criar políticas na guia JSON.

{ "Effect": "Allow", "Action": [ "iam:ListUserTags", "iam:TagUser" ], "Resource": "arn:aws:iam:*:<account-number>:user/<username>" }

Para permitir que uma entidade do IAM adicione, liste ou remova uma tag de uma função específica

Adicione a seguinte declaração à política de permissões da entidade do IAM que precisa gerenciar tags. Substitua <rolename> pelo nome da função que precisa ser gerenciada. Para saber mais sobre como criar uma política usando este exemplo de documento de política JSON, consulte Criar políticas na guia JSON.

{ "Effect": "Allow", "Action": [ "iam:ListRoleTags", "iam:TagRole", "iam:UntagRole" ], "Resource": "arn:aws:iam:*:<account-number>:role/<rolename>" }

Como alternativa, você pode usar uma política gerenciada da AWS, como IAMFullAccess, para fornecer acesso total ao IAM.

Gerenciar tags em entidades do IAM (console)

Você pode gerenciar tags de usuários ou funções do IAM pelo Console de gerenciamento da AWS.

Para gerenciar tags em usuários ou funções (console)

  1. Faça login no Console de gerenciamento da AWS e abra o console da IAM em https://console.aws.amazon.com/iam/.

  2. No painel de navegação do console, selecione Roles (Funções) ou Users (Usuários) e, em seguida, selecione o nome da entidade que você deseja editar.

  3. Escolha a guia Tags e conclua uma das seguintes ações:

    • Selecione Add tags (Adicionar tags) se a entidade ainda não tiver tags.

    • Escolha Edit tags (Editar tags) para gerenciar o conjunto de tags existente.

  4. Adicione ou remova tags para concluir o conjunto de tags. Em seguida, escolha Save changes (Salvar alterações).

Gerenciar tags em entidades do IAM (AWS CLI ou API da AWS)

Você pode listar, anexar ou remover tags de usuários e funções do IAM. Você pode usar a AWS CLI ou a API da AWS para gerenciar tags de usuários e funções do IAM.

Para listar as tags atualmente anexadas a uma função do IAM (AWS CLI ou API da AWS)

Para listar as tags atualmente anexadas a um usuário do IAM (AWS CLI ou API da AWS)

Para anexar tags a uma função do IAM (AWS CLI ou API da AWS)

Para anexar tags a um usuário do IAM (AWS CLI ou API da AWS)

Para remover tags de uma função do IAM (AWS CLI ou API da AWS)

Para remover tags de um usuário do IAM (AWS CLI ou API da AWS)

Para obter informações sobre como anexar tags a recursos de outros serviços da AWS, consulte a documentação desses serviços.

Para obter informações sobre como usar tags para definir mais permissões granulares com políticas de permissões do IAM, consulte Elementos de política do IAM: variáveis e tags.