Executamos vários serviços da AWS na região eu-west-1. Infelizmente, parece que muitos de nossos desenvolvedores e outros funcionários que precisam criar recursos temporários esquecem esse aspecto da AWS e não selecionam essa região antes de iniciar instâncias do EC2, criar buckets S3, etc. Como resultado, eles geralmente terminam em a região us-east-1, pois parece ser o padrão que a AWS sempre usa.
Existe alguma maneira pelo IAM (ou de alguma outra maneira) de restringir as contas de usuário para iniciar / criar apenas coisas em uma região específica?
fonte
"Condition": { "condition": {} }
, deve indicar"Condition": { "StringEquals": {} }
Use algo assim. Este exemplo restringe o acesso a duas regiões da AWS. Modifique conforme necessário.
fonte
aws:RequestedRegion
, esta é a resposta que é agora mais relevanteDesde 25 de abril de 2018, a AWS possui um recurso global aws: RequestedRegion que você pode usar para limitar as regiões para as quais um usuário pode enviar solicitações. Isso é independente do serviço ser regional ou não, portanto você pode aplicá-lo a todos os serviços.
Blog de segurança da AWS
Infelizmente, você não pode usar isso na Política de Controle de Serviços de uma organização para aplicá-la a uma conta globalmente, e deve anexar a política a cada entidade principal e auditar se é assim, se desejar bloquear uma conta em determinadas regiões.
fonte
Resposta aceita nesta discussão deu
Syntax Error on Policy
. Abaixo trabalhou para mim:}
fonte
Se você solicitar apenas ações do EC2, sim, poderá limitá-lo conforme mencionado em outras respostas. Se houver outros serviços, não tenho certeza de que você possa fazê-lo ... por exemplo, o AWS Lambda parece não ter um que
lambda:region
você pode adicionar a uma condição.fonte
Nas Perguntas frequentes sobre o AWS IAM :
fonte
Achei que isso funcionava melhor (permite iniciar / parar / encerrar / etc.) Para conceder acesso completo ao EC2 para um usuário em apenas uma região - todas as outras regiões mostram erros durante qualquer tentativa de acesso.
fonte
Este funciona para mim, tentei criar uma política com o json mencionado como resposta aceita, mas não funciona para mim.
fonte
Essa é a solução atual - usando "eu-west-1":
fonte