2012-05-23 17 views
9

Tengo una sola cuenta S3/AWS. Tengo varios sitios web cada uno que usan su propio cubo en S3 para leer/escribir en el almacenamiento. También recibo muchas cosas personales (copias de seguridad, etc.) en otras cubetas en S3, que no son de acceso público.¿Múltiples access_keys para diferentes privilegios con la misma cuenta S3?

Me gustaría no tener estos sitios web, algunos de los cuales pueden tener otras personas accediendo a su código fuente y propiedades de configuración y viendo las claves S3, ¡teniendo acceso a mis datos privados!

Parece que al leer los documentos de Amazon necesito dividir los privilegios, por Amazon USER por depósito, no por clave de acceso por depósito. Pero eso no va a funcionar. También parece que solo tengo 2 claves de acceso. Necesito tener una clave de acceso, que es la clave maestra, y varias otras que tienen permisos mucho más circunscritos, solo para ciertos segmentos.

¿Hay alguna manera de hacer eso, o para aproximar eso?

+2

¿Has mirado en Amazon IAM? Hay un enlace directamente desde la consola de AWS. Puede controlar los permisos con una precisión increíble y generar tantas claves de acceso como desee, incluso las temporales. –

Respuesta

0

Sí, para acceder a diferentes cuentas de inicio de sesión con diferentes permisos utilizando la misma cuenta de AWS, puede utilizar AWS IAM. Como desarrollador de Bucket Explorer, sugiero probar Bucket Explorer, equipo de edición, si está buscando la herramienta, proporcione su interfaz de usuario con diferentes inicios de sesión y permisos de acceso diferentes. leer http://team20.bucketexplorer.com

8

Usted puede lograr su objetivo, facilitando AWS Identity and Access Management (IAM):

AWS Gestión de Identidad y Acceso (IAM) que permite a segura controlar el acceso a los servicios de AWS y recursos para sus usuarios. IAM le permite crear y administrar usuarios en AWS, y también le permite otorgar acceso a recursos de AWS para usuarios administrados fuera de AWS en su directorio corporativo. IAM ofrece mayor seguridad, flexibilidad, y control cuando se usa AWS.[el énfasis es mío]

Como se subraya, usando IAM es muy recomendable para todas las cosas de AWS de todas formas, es decir, lo ideal es que nunca con los principales credenciales de la cuenta para nada más que la creación de IAM inicialmente (como mentioned by Judge Mental ya, puede generar tantas claves de acceso como desee como tal).

Puede usar IAM muy bien a través del AWS Management Console (es decir, no es necesario que las herramientas de terceros utilicen en principio todas las funciones disponibles).

Generar las políticas requeridas puede ser un poco complicado en ocasiones, pero el AWS Policy Generator es extremadamente útil para comenzar y explorar lo que está disponible.

Para el caso de uso a la mano que necesita una política S3 Bucket , ver Using Bucket Policies en particular y Access Control para obtener una visión general de los diversos mecanismos de control de acceso disponibles S3 (que puede interferir de manera sutil, véase, por ejemplo Using ACLs and Bucket Policies Together)

¡Buena suerte!

0

Basta con crear una directiva de grupo IAM a medida que limita el acceso a un depósito concreto

Tales como ...

{ 
    "Version": "2012-10-17", 
    "Statement": [ 
    { 
     "Effect": "Allow", 
     "Action": ["s3:ListAllMyBuckets"], 
     "Resource": "arn:aws:s3:::*" 
    }, 
    { 
     "Effect": "Allow", 
     "Action": "s3:*", 
     "Resource": 
     [ 
     "arn:aws:s3:::my.bucket", 
     "arn:aws:s3:::my.bucket/*" 
     ] 
    } 
    ] 
} 

La primera acción s3:ListAllMyBuckets permite a los usuarios a la lista de todos los cubos. Sin eso, su cliente S3 no mostrará nada en la lista del cubo cuando los usuarios inicien sesión.

La segunda acción concede privilegios S3 completos al usuario para el depósito llamado 'my.bucket'. Eso significa que son libres de crear/enumerar/eliminar recursos de segmento y ACL de usuario dentro del segmento.

Concesión de s3: * el acceso es bastante laxo. Si desea controles más estrictos en el cubo, simplemente busque las acciones relevantes que desea otorgar y agréguelas como una lista.

"Action": "s3:Lists3:GetObject, s3:PutObject, s3:DeleteObject" 

Sugiero crear esta política como un grupo (ex my.bucket_User) para que pueda asignar a cada usuario que necesita acceder a este cubo sin ninguna copypasta innecesaria.

Cuestiones relacionadas