Praticar de graça

🔑Entenda o IAM

O IAM (Identity and Access Management) é o porteiro da sua conta: define QUEM pode fazer O QUÊ. Nada na AWS acontece sem passar por ele. E a regra de ouro é o menor privilégio: cada identidade começa sem poder nada, e você concede só o necessário.

Pra que serve

Controlar acesso com precisão: dar ao time de suporte só leitura, à aplicação só a permissão de escrever numa tabela, ao estagiário só um serviço. E permitir que serviços conversem entre si com segurança (uma Lambda que precisa gravar no S3, por exemplo).

Onde se usa no mundo real

Vocabulário

Usuário
identidade de uma PESSOA (ou app fixo). Começa sem nenhuma permissão.
Grupo
conjunto de usuários. Dá permissão ao grupo e todos herdam — facilita gerenciar times.
Role (papel)
identidade que SERVIÇOS assumem (não pessoas). Ex.: uma Lambda "veste" uma role pra ter permissões.
Policy (política)
o documento que diz o que pode/não pode. Você anexa a usuários, grupos ou roles.
Menor privilégio
conceder só o mínimo necessário. Se vazar, o estrago é limitado.
💰 Como cobra: O IAM é gratuito. O que ele controla (os outros serviços) é que custa — mas configurar quem acessa o quê não tem custo nenhum.

Comandos que você aprende nesta trilha

Cada um deles roda de verdade no terminal do CLImb, com a mesma saída e as mesmas mensagens de erro que a AWS devolve.

aws iam create-user

aws iam create-user

aws iam create-user --user-name <nome>

aws iam list-users

aws iam list-users

aws iam list-users

aws iam create-group

aws iam create-group

aws iam create-group --group-name <nome>

aws iam add-user-to-group

aws iam add-user-to-group

aws iam add-user-to-group --user-name <usuário> --group-name <grupo>

aws iam attach-group-policy

aws iam attach-group-policy

aws iam attach-group-policy --group-name <grupo> --policy-arn <arn>

aws iam create-role

criar papel (role)

aws iam create-role --role-name <nome>
--assume-role-policy-document file://<trust.json>

aws iam attach-role-policy

aws iam attach-role-policy

aws iam attach-role-policy --role-name <role> --policy-arn <arn>

aws iam create-policy

criar política gerenciada pelo cliente

aws iam create-policy --policy-name <nome> --policy-document file://<doc.json>

aws iam list-policies

listar políticas

aws iam list-policies [--scope Local | AWS | All]

aws iam get-group

aws iam get-group

aws iam get-group --group-name <nome>

aws iam attach-user-policy

aws iam attach-user-policy

aws iam attach-user-policy --user-name <usuário> --policy-arn <arn>

aws iam list-attached-user-policies

aws iam list-attached-user-policies

aws iam list-attached-user-policies --user-name <usuário>

aws iam list-policy-versions

aws iam list-policy-versions

aws iam list-policy-versions --policy-arn <arn>

aws iam detach-group-policy

aws iam detach-group-policy

aws iam detach-group-policy --group-name <grupo> --policy-arn <arn>

aws iam detach-role-policy

aws iam detach-role-policy

aws iam detach-role-policy --role-name <role> --policy-arn <arn>

O que você pratica (22 atividades)

Cada atividade é um pedido de trabalho, do jeito que ele chega no dia a dia — você resolve digitando os comandos, não escolhendo alternativa.

Primeiro usuário

A Ana entrou no time. Crie um usuário IAM chamado ana.

Chegou o Pedro

Um dev novo entrou no time: o Pedro. Crie o usuário pedro.

Estagiária nova

A Júlia começou o estágio hoje. Crie o usuário julia.

Conta do robô de deploy

O CI/CD precisa de uma identidade própria (não use a sua!). Crie o usuário ci-deploy.

Quem está na conta?

Liste todos os usuários da conta pra conferir.

Crie um grupo

Dar permissão um a um não escala. Crie um grupo chamado devs.

Ana entra no time

Coloque a usuária ana dentro do grupo devs.

Permissão pro grupo

Dê ao grupo devs a política gerenciada AmazonS3ReadOnlyAccess (todo mundo do grupo herda).

Time de suporte (só leitura)

O suporte só precisa LER o S3. Crie o grupo suporte e anexe a política AmazonS3ReadOnlyAccess.

DBAs com acesso total ao DynamoDB

Os DBAs gerenciam o DynamoDB. Crie o grupo dbas e anexe AmazonDynamoDBFullAccess.

Crie uma role

Serviços (como o Lambda) assumem roles, não usuários. Crie a role papel-lambda usando o arquivo trust.json do disco local como trust policy.

Role pra uma Lambda

Uma função Lambda vai precisar de permissões. Crie a role role-lambda-logs com o trust.json.

Permissão pra role

Anexe à role papel-lambda a política AWSLambdaBasicExecutionRole (deixa a função escrever logs).

Role com trust pronto

Crie a role papel-ec2 usando o documento de confiança pronto trust.json.

Política gerenciada própria

Crie uma política chamada acesso-s3 a partir do arquivo politica-publica.json.

Suas políticas locais

Liste só as políticas criadas por você (escopo Local).

Analistas só-leitura

Crie o grupo analistas e anexe a ele a política AmazonS3ReadOnlyAccess.

Quem está neste grupo?

Conceder acesso por grupo só é seguro se você souber quem está dentro. Veja os detalhes do grupo analistas e seus membros.

O que esta pessoa pode fazer?

A pergunta que toda auditoria faz. Crie a usuária auditoria-tmp, dê a ela uma política e liste as políticas anexadas a ela. <small>(atenção: isso mostra só as diretas — o que vem por GRUPO não aparece aqui, e é aí que auditoria costuma se enganar)</small>

Que versões esta política teve?

Política guarda histórico. Liste as versões da lab_policy e repare qual está marcada como padrão. <small>(é assim que você descobre desde quando uma permissão existe)</small>

Revogue a permissão do grupo

Tirar a permissão do grupo atinge todos os membros de uma vez. Desanexe a política AmazonS3ReadOnlyAccess do grupo analistas.

Tire o poder da role

Uma role com permissão demais é um risco silencioso — quem a assume herda tudo. Desanexe a AmazonS3ReadOnlyAccess da role papel-ec2.

Continue por aqui

Ler explica. Digitar fixa. No CLImb você roda os comandos de verdade num terminal AWS simulado — o estado persiste entre eles, como na nuvem real.

Esta trilha é inteiramente gratuita — não precisa pagar nem dar cartão.

Praticar de graça
Todas as lições · Praticar no terminal · Sobre