services management iam aws and amazon-web-services amazon-cloudfront amazon-iam

amazon web services - management - Restrinja el acceso a una distribución particular de Cloudfront usando IAM



identity and access management (2)

Intento dar acceso a un usuario de IAM específico a una distribución particular de Cloudfront. Lo he intentado con esta Política:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Stmt1428659042000", "Effect": "Allow", "Action":["cloudfront:*"], "Resource": [ "arn:aws:cloudfront:E3J2B3GMZI73G0" ] } ] }

El verificador de políticas de AWS-IAM dice que el arn no es válido. Según la documentación sobre restricciones de IAM en Cloudfront, AWS no señala ningún ejemplo para restringir el acceso a Distribuciones específicas. Siempre se refieren a:

"Resource":"*"

¿Ideas sobre cómo otorgarle a un usuario particular acceso a una distribución concreta frente a la nube?


Los permisos de administración de identidades y accesos de AWS a nivel de recursos lamentablemente aún no son compatibles con todos los servicios de AWS, y Amazon CloudFront no lo hace según la tabla general de AWS Services that Support IAM , que también se confirma explícitamente en CloudFront Resources :

Utiliza un asterisco (*) como recurso al escribir una política para controlar el acceso a las acciones de CloudFront. Esto se debe a que no puede usar IAM para controlar el acceso a recursos específicos de CloudFront. Por ejemplo, no puede otorgar a los usuarios acceso a una distribución específica . Los permisos otorgados con IAM incluyen todos los recursos que usa con CloudFront. Debido a que no puede especificar los recursos para controlar el acceso, no hay recursos de CloudFront (nombres de recursos de Amazon) que pueda usar en una política de IAM. [...] [énfasis mío]


Tuve un problema similar y con el siguiente formato funcionó:

arn:aws:cloudfront::123456789012:distribution/ABCDEFG1234567

dónde

123456789012 es el ID de cuenta de AWS de su cuenta de AWS y

ABCDEFG1234567 es la identificación de distribución de la distribución a la que le está dando acceso.

Política general:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAllCloudFrontPermissions", "Effect": "Allow", "Action": [ "cloudfront:*" ], "Resource":"arn:aws:cloudfront:: 123456789012:distribution/ABCDEFG1234567" } }