Funções e políticas do IAM
Escreva documentos de política JSON, associe-os a funções e entenda a diferença entre políticas baseadas em identidade e políticas baseadas em recursos.
Funções e políticas do IAM é uma aula grátis de Cloud & IT Cert Prep no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Cloud & IT Cert Prep, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Cloud & IT Cert Prep inclui 4 aulas no total.
Policies IAM: a linguagem de permissões
Uma policy IAM é um documento JSON que define o que é permitido. Cada declaração tem um Effect (Allow ou Deny), uma Action e um Resource. O código mostra uma delas.
{
'Version': '2012-10-17',
'Statement': [
{
'Effect': 'Allow',
'Action': [
's3:GetObject',
's3:PutObject'
],
'Resource': 'arn:aws:s3:::my-bucket/*'
}
]
}Policies baseadas em identidade e em recurso
Uma policy baseada em identidade é anexada a um usuário ou função e define o que eles podem fazer. Uma policy baseada em recurso é anexada ao próprio recurso e define quem pode acessá-lo.
# Example S3 bucket policy (resource-based)
{
'Version': '2012-10-17',
'Statement': [{
'Effect': 'Allow',
'Principal': {
'AWS': 'arn:aws:iam::123456789012:role/MyAppRole'
},
'Action': 's3:GetObject',
'Resource': 'arn:aws:s3:::my-bucket/*'
}]
}Funções IAM: identidades temporárias
Uma função IAM é uma identidade que você assume por pouco tempo. Ela fornece credenciais temporárias que expiram, ideais para EC2, Lambda e outros serviços.
# Attach an IAM role to an EC2 instance (instance profile)
aws ec2 associate-iam-instance-profile \
--instance-id i-0abcdef1234567890 \
--iam-instance-profile Name=MyEC2RolePolicies de confiança: quem pode assumir a função
Toda função possui uma policy de confiança que define quem tem permissão para assumi-la, além de policies de permissões que definem o que ela pode fazer depois de assumida. Sem policy de confiança, não há acesso.
# Trust policy for a Lambda execution role
{
'Version': '2012-10-17',
'Statement': [{
'Effect': 'Allow',
'Principal': {
'Service': 'lambda.amazonaws.com'
},
'Action': 'sts:AssumeRole'
}]
}Funções de serviço AWS: EC2 e Lambda
Quando EC2 precisa chamar a AWS, forneça a ela um perfil de instance que encapsula uma função. As credenciais são alternadas automaticamente, sem chaves codificadas diretamente. Lambda funciona da mesma forma.
# Retrieve role credentials from EC2 metadata (IMDSv2)
TOKEN=$(curl -X PUT 'http://169.254.169.254/latest/api/token' \
-H 'X-aws-ec2-metadata-token-ttl-seconds: 21600')
curl -H "X-aws-ec2-metadata-token: $TOKEN" \
http://169.254.169.254/latest/meta-data/iam/security-credentials/MyEC2RoleAssunção de função entre contas
Uma função entre contas permite que um usuário de uma conta assuma uma função em outra e acesse seus recursos. É assim que configurações com várias contas evitam usuários duplicados em todos os lugares.
# Assume a cross-account role from Account A
aws sts assume-role \
--role-arn arn:aws:iam::999999999999:role/CrossAccountRole \
--role-session-name my-sessionCondições de policy: controle detalhado
Uma Condition adiciona regras extras a uma policy, como exigir MFA ou limitar o acesso a um determinado intervalo de IP ou região. Ela torna as permissões muito mais restritas.
# Policy that requires MFA for sensitive actions
{
'Effect': 'Deny',
'Action': ['iam:*', 'cloudtrail:*'],
'Resource': '*',
'Condition': {
'BoolIfExists': {
'aws:MultiFactorAuthPresent': 'false'
}
}
}Limites de permissões
Um limite de permissões define o máximo que uma identidade pode ter, mesmo que uma policy conceda mais. É a proteção para permitir que desenvolvedores criem suas próprias funções.
# Attach a permissions boundary to a user
aws iam put-user-permissions-boundary \
--user-name alice \
--permissions-boundary arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccessLógica de avaliação de policies
Quando a AWS verifica uma solicitação, uma regra prevalece sobre todas: um Deny explícito sempre a bloqueia. Depois disso, todas as camadas de policy precisam concordar em permitir o acesso.
Simulador de policy IAM
O IAM Policy Simulator testa se uma identidade pode fazer algo, sem realmente executá-lo. É excelente para depurar permissões antes de entrar em produção.
# Simulate an IAM policy evaluation via CLI
aws iam simulate-principal-policy \
--policy-source-arn arn:aws:iam::123456789012:user/alice \
--action-names s3:PutObject \
--resource-arns arn:aws:s3:::my-bucket/*Funções para acesso federado
Usuários externos do Okta, Google ou Active Directory podem assumir funções por meio de federação (SAML ou OIDC). Você concede acesso a milhões de pessoas sem nenhum usuário IAM.
Verificação rápida
Teste seu entendimento dos conceitos de AWS Solutions Architect (SAA-C03) desta lição.
Resumo da lição
Resumo rápido: as policies são regras JSON para Allow e Deny, as funções fornecem credenciais temporárias e as condições adicionam controle detalhado. A seguir: privilégio mínimo.
Perguntas Frequentes
A aula “Funções e políticas do IAM” é grátis?
Sim — o texto completo de “Funções e políticas do IAM” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Cloud & IT Cert Prep, atualize para CoddyKit PRO. O curso de Cloud & IT Cert Prep inclui 4 aulas no total.
O que vou aprender em “Funções e políticas do IAM”?
Escreva documentos de política JSON, associe-os a funções e entenda a diferença entre políticas baseadas em identidade e políticas baseadas em recursos. Você pratica Cloud & IT Cert Prep com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Cloud & IT Cert Prep?
Nenhuma experiência prévia é necessária. Cloud & IT Cert Prep no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.
Quanto tempo leva a aula “Funções e políticas do IAM”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Cloud & IT Cert Prep?
Sim. Cada aula de Cloud & IT Cert Prep inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Usuários e grupos do IAM
- Funções e políticas do IAM
- Princípio do privilégio mínimo
- Práticas recomendadas do IAM e MFA