Anotações sobre o AWS IAM Policy - Troubleshooting para ajudar na preparação das certificações AWS.
Até o momento as anotações são para as certificações abaixo:
JSON Error Bucket S3
{
"Statement": {
"Effect": "Allow",
"Action": "*",
"Resource": "arn:aws:s3:::examplebucket",
"Resource": "arn:aws:s3:::examplebucket/*"
}
}
Resolução
- Só pode haver 1 Resource
- Inserir o Version
- Tabular e inserir os Resources em []
Policy corrigida
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": "*",
"Resource": [
"arn:aws:s3:::nomedobucket",
"arn:aws:s3:::nomedobucket/*"
]
}
]
}
IAM Policy user access
{
"Statement": [
{
"Action": [
"iam:*AccessKey*"
],
"Effect": "Allow",
"Resource": [
"arn:aws:iam::id-conta-aws:user/${aws:username}"
]
}
]
}
Resolução
- Por não estar difinido na policy o Version está com o padrão
"Version": "2008-10-17"
e os Elementos da Policy são compativeis somente na nova versão -"Version": "2012-10-17"
- Alterar a variável ${aws:username} para o _username _estático
Policy corrigida - Sem Version
{
"Statement": [
{
"Action": [
"iam:*AccessKey*"
],
"Effect": "Allow",
"Resource": [
"arn:aws:iam::id-conta-aws:user/username"
]
}
]
}
Policy corrigida - Com Version
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"iam:*AccessKey*"
],
"Effect": "Allow",
"Resource": [
"arn:aws:iam::id-conta-aws:user/${aws:username}"
]
}
]
}
Policy acesso CloudFront
{
"Version": "2012-10-17",
"Statement": [{
"Effect": "Allow",
"Action": "cloudfront:*",
"Resource": [
"arn:aws:cloudfront:*"
]
}]
}
Resolução
- Cada serviço da AWS pode definir ações, recursos e chaves de contexto de condição para uso em políticas do IAM. No caso do CloudFront basta especificar "*" no Resource.
Policy corrigida
{
"Version": "2012-10-17",
"Statement": [{
"Effect": "Allow",
"Action": "cloudfront:*",
"Resource": "*"
}]
}
Bucket Policy
{
"Version": "2012-10-17",
"Statement": [{
"Effect": "Allow"
"Action": "s3:*"
"Resource": [
"*"
]
}]
}
Resolução
- Validação da estrutura da Policy, falta a "," no Effect
Policy corrigida
{
"Version": "2012-10-17",
"Statement": [{
"Effect": "Allow",
"Action": "s3:*",
"Resource": [
"*"
]
}]
}
Policy 5
{
"Version": "2012-10-17",
"Statement": {
"Effect":"Allow",
"Action":"ec2:Describe*",
"Resource":"*"
}
}
{
"Statement": {
"Effect": "Allow",
"Action": "s3:*",
"Resource": "arn:aws:s3:::my-bucket/*"
}
}
Resolução
- Só pode haver 1 statement
- Quebrar a Police em Blocos c/ []
Policy corrigida
{
"Version": "2012-10-17",
"Statement": [{
"Effect":"Allow",
"Action":"ec2:Describe*",
"Resource":"*"
},
{
"Effect": "Allow",
"Action": "s3:*",
"Resource": "arn:aws:s3:::my-bucket/*"
}
]
}
Top comments (0)