Llevamos a cabo una serie de servicios de AWS en la región eu-west-1. Desafortunadamente, parece que muchos de nuestros desarrolladores y otros empleados que necesitan crear recursos temporales se olvidan de este aspecto de AWS y no seleccionan esta región antes de lanzar instancias EC2, crear cubos S3, etc. Como resultado, a menudo terminan en la región us-east-1, ya que parece ser el valor predeterminado que AWS siempre usa.
¿Hay alguna forma a través de IAM (o de alguna otra manera) de restringir las cuentas de usuario para que solo inicien / creen cosas dentro de una región específica?
fuente
"Condition": { "condition": {} }
eso debería decir"Condition": { "StringEquals": {} }
Usa algo como esto. Este ejemplo restringe el acceso a dos regiones de AWS. Modifique según sea necesario.
fuente
aws:RequestedRegion
, esta es la respuesta que ahora es más relevanteDesde el 25 de abril de 2018, AWS tiene un recurso global aws: RequestedRegion que puede usar para limitar las regiones a las que un usuario puede enviar solicitudes. Esto es independiente de que el servicio sea regional o no, por lo que puede aplicarlo a todos los servicios.
Blog de seguridad de AWS
Desafortunadamente, no puede usar esto en la Política de control de servicios de una organización para aplicarlo a una cuenta globalmente, y debe adjuntar la política a cada principal y auditar que esto es así, si desea bloquear una cuenta en ciertas regiones.
fuente
La respuesta aceptada en este hilo dio
Syntax Error on Policy
. A continuación funcionó para mí:}
fuente
Si solo solicita acciones EC2, entonces sí, puede limitarlo como se menciona en otras respuestas. Si se trata de otros servicios, no estoy seguro de que pueda hacerlo ... por ejemplo, AWS Lambda no parece tener un servicio
lambda:region
que pueda agregar a una condición.fuente
De las preguntas frecuentes para AWS IAM :
fuente
Encontré que esto funciona mejor (permite iniciar / detener / finalizar / etc.) para otorgar acceso completo a EC2 para un usuario a solo una región: cada otra región muestra un error durante cualquier intento de acceso.
fuente
Este me funciona, traté de crear una política con el json mencionado como una respuesta aceptada, pero no me funciona.
fuente
Esa es la solución actual: usar "eu-west-1":
fuente