Control del acceso a los depósitos de S3 con la política de depósitos de AWS S3 – 2xsoftware

Amazon Simple Storage Service (S3) es una popular solución de almacenamiento proporcionada por Amazon Web Services (AWS) que permite a los usuarios almacenar y recuperar grandes cantidades de datos. Al usar S3, es fundamental asegurarse de que el acceso a sus depósitos de S3 se controle correctamente para mantener la seguridad y la privacidad de sus datos.

Una forma de lograrlo es mediante la política de depósito de AWS S3. En esta publicación de blog, exploraremos cómo controlar el acceso a los depósitos de S3 mediante políticas de depósitos de S3 basadas en grupos y en recursos.

Crear un depósito sin acceso público

Antes de configurar los controles de acceso, comencemos creando un depósito S3 sin acceso público. De manera predeterminada, cuando crea un depósito S3, es privado e inaccesible para el público. Sin embargo, es crucial verificar que su depósito no tenga configuraciones de acceso público. Para crear un depósito privado, siga estos pasos:

  1. Inicie sesión en su Consola de administración de AWS usando tu raíz usuario.
  2. Navegue hasta el servicio Amazon S3.
  3. Clickea en el «Crear cubo» botón.
    aws_s3_bucket_policy
  4. Proporcione un nombre de depósito único y seleccione la región de AWS.
    política de depósito de aws
  5. Deje todas las configuraciones predeterminadas intactas, asegurándose de que “Bloquear todo el acceso público» está habilitado.
    política de depósito de aws s3
  6. Complete el proceso de creación del depósito haciendo clic en «Crear cubo» botón.
    aws s3 crear cuboCon esta configuración, tenemos un depósito S3 privado, lo que garantiza que los usuarios no autorizados no puedan acceder a su contenido.
    aws cli crear cubo

Crear un usuario de IAM sin permisos

Para demostrar la efectividad de las políticas de depósito de S3 para controlar el acceso, creemos un usuario de IAM sin permisos. IAM (Administración de identidad y acceso) es un servicio proporcionado por AWS que le permite administrar el acceso de los usuarios a varios recursos de AWS.

Al crear un usuario sin permisos, podemos mostrar cómo las políticas de depósito de S3 anulan los permisos de IAM para otorgar acceso a recursos específicos.

Para crear un usuario de IAM sin permisos, siga estos pasos:

  1. Navegue hasta el servicio IAM en la Consola de administración de AWS.
    aws s3 iam
  2. Haga clic en «Usuarios» y luego «Agregar usuarios.”
    s3 iam acción
  3. Proporcione un nombre para el usuario, marque la casilla «Proporcionar acceso de usuario a la Consola de administración de AWS” y seleccione la casilla “Quiero crear un usuario de IAM” opción como el tipo de usuario.
    permisos de iam de aws s3
  4. Especifica el contraseña personalizada y haga clic Próximo.
    permisos iam s3
  5. Omita el paso de configuración de permisos y haga clic en Próximo.
  6. Haga clic en «Crear usuario» bajo la «Revisar y crear» paso.
    política de iam para el depósito s3
  7. Una vez creado el usuario, anote el URL de inicio de sesión de la consola y Contraseña de la consola. Usaremos estas credenciales para probar las políticas del depósito más adelante.
    política de iam de aws s3
  8. Además, anote el ARN del usuario de IAM. Lo necesitará cuando asigne la política de depósito de S3.
    soy política s3
  9. Abra una nueva pestaña privada o de incógnito en su navegador y vaya a la URL de inicio de sesión de la consola en el paso anterior.
  10. Inicie sesión como usuario de IAM ingresando el nombre de usuario y la contraseña de IAM. El ID de la cuenta ya está rellenado previamente.
    rol de s3 iam
  11. Navegue a los cubos S3 y verá un cartel rojo que dice: «No tienes permisos para enumerar segmentos.”
    crear un usuario iam para el depósito s3Este mensaje confirma que el depósito de S3 es privado y nadie más puede acceder a él, excepto el usuario que lo creó.

Método 1: Política de depósito de S3 basada en grupos (IAM)

La asignación de permisos a través de políticas es más manejable con grupos en lugar de por usuario. Sin embargo, no puede aplicar directamente una política de depósito de S3 a un grupo porque un grupo no está categorizado como principal.

Para implementar una política de depósito de S3 basada en grupos, debemos crear un grupo y una política personalizada en línea adjunta a él.

Crear un grupo de usuarios de IAM

En este ejemplo, crearemos un grupo llamado grupo de demostración s3. El s3-demo-usuario El usuario de IAM será miembro de este grupo.

  1. En la consola de IAM, haga clic en Grupos de usuarios → Crear grupo.
    Crear grupo de usuarios de IAM aws s3
  2. Ingrese el nombre del grupo, seleccione los usuarios para agregar y haga clic en Crea un grupo.
    Crear grupo de usuarios de IAM

Cree una política de depósito de S3 en línea para ver la lista de depósitos

Una vez que se crea el grupo, vamos a crear una política en línea para permitir que sus miembros enumeren los depósitos de S3.

  1. Haz clic en el nuevo grupo que creaste.
    Política de depósito de S3 en línea
  2. Hacer clic permisosAgregar permisosCrear política en línea.
    Crear política en línea aws s3
  3. Haga clic en el JSON para mostrar el editor JSON y pegue el siguiente código:
    { 
    
    "Version": "2012-10-17", 
    
    "Statement": [ 
    
    { 
    
    "Sid": "AllowListMyBuckets", 
    
    "Effect": "Allow", 
    
    "Action": "s3:ListAllMyBuckets", 
    
    "Resource": "*" 
    
    } 
    
    ] 
    
    }
  4. Hacer clic Próximo.
    Crear políticas en línea aws s3 permisos
  5. Introduzca el nombre de la política y haga clic en Crear política.
    lista de permisos del depósito s3La política ha sido creada.
    política de solo lectura del depósito s3
  6. Vuelva a su usuario de IAM y vaya a la consola de depósitos de S3. El usuario de IAM ahora puede enumerar los depósitos de S3. Verá que el usuario tiene «Permisos insuficientes», lo que se espera.
    aws crear clip de cubo s3

Cree una política de depósito S3 en línea con permisos de lectura y escritura

En este paso, crearemos otra política de depósito de S3 en línea que permita a los usuarios leer y escribir en el depósito de S3 y sus objetos.

  1. Hacer clic permisosAgregar permisosCrear política en línea.
    Política de depósito S3 en línea con permisos de lectura y escritura
  2. Haga clic en el JSON para mostrar el editor JSON y pegue el siguiente código:
    { 
    
    "Version": "2012-10-17", 
    
    "Statement": [ 
    
    { 
    
    "Sid": "AllowReadWrite", 
    
    "Effect": "Allow", 
    
    "Action": [ 
    
    "s3:PutObject", 
    
    "s3:GetObjectAcl", 
    
    "s3:GetObject", 
    
    "s3:ListBucket", 
    
    "s3:PutObjectAcl" 
    
    ], 
    
    "Resource": [ 
    
    "arn:aws:s3:::pvtbucket0713", 
    
    "arn:aws:s3:::pvtbucket0713/*" 
    
    ] 
    
    } 
    
    ] 
    
    }
  3. Reemplazar pvtbucket0713 con el nombre de su depósito S3 y haga clic en Próximo.
    aws cubo acl
  4. Introduzca el nombre de la política y haga clic en Crear política.
    acceder a un cubo usando s3Se ha creado la política de depósito S3 en línea.
    acceso al depósito s3

Método 2: Política de depósito de S3 basada en recursos

Este método creará la política de depósito de S3 directamente en el depósito de S3, no como una política de IAM. Las políticas de depósito solo aceptan entidades principales válidas, lo que significa que los grupos no se pueden usar para permisos basados ​​en recursos.

Asigne el permiso ListMyBuckets al usuario de IAM

  1. En la consola de IAM, seleccione el usuario de IAM.
  2. Hacer clic Permisos → Agregar permisos → Crear política en línea.
    cubo público aws s3
  3. Haga clic en JSON para abrir el editor de políticas JSON y pegue el siguiente código:
    { 
    
    "Version": "2012-10-17", 
    
    "Statement": [ 
    
    { 
    
    "Sid": "AllowListAllMyBuckets", 
    
    "Effect": "Allow", 
    
    "Action": "s3:ListAllMyBuckets", 
    
    "Resource": "*" 
    
    } 
    
    ] 
    
    }
  4. Después de pegar el código, haga clic en Próximo.
    acceder al depósito público s3
  5. Introduzca el nombre de la política y haga clic en Crear política.
    aws s3 política de lectura y escritura

Ya agregó el permiso ListAllMyBuckets al usuario de IAM.

Agregar una política de depósito de S3 basada en recursos con permisos de lectura y escritura

  1. Navegue a la consola de S3, seleccione el depósito de S3 y haga clic en permisos.
    Política de depósito de S3 basada en recursos
  2. Desplácese hacia abajo hasta el Política de depósitos sección y haga clic en Editar.
    cubeta acl s3
  3. Pegue el siguiente código en el editor de políticas. Esta política permite al usuario de IAM enumerar el depósito y sus objetos y leer y escribir objetos.
    { 
    
    "Version": "2012-10-17", 
    
    "Statement": [ 
    
    { 
    
    "Sid": "AllowListReadWrite", 
    
    "Principal": { 
    
    "AWS": "arn:aws:iam::679743624295:user/s3-demo-user" 
    
    }, 
    
    "Effect": "Allow", 
    
    "Action": [ 
    
    "s3:ListBucket", 
    
    "s3:GetObject", 
    
    "s3:GetObjectAcl", 
    
    "s3:PutObject", 
    
    "s3:PutObjectAcl" 
    
    ], 
    
    "Resource": [ 
    
    "arn:aws:s3:::pvtbucket0713", 
    
    "arn:aws:s3:::pvtbucket0713/*" 
    
    ] 
    
    } 
    
    ] 
    
    }
  4. Reemplazar «arn:aws:iam::679743624295:user/s3-demo-user” con el ARN de su usuario de IAM.
  5. Reemplazar pvtbucket0713 con el nombre de su depósito S3.
    permisos de lectura s3
  6. Desplácese hasta la parte inferior y haga clic en Guardar cambios.
    bloque de acceso público s3La nueva política de depósito de S3 se guardará correctamente si todo va bien.
    aws s3 crear un ejemplo de depósito

Probar la política de depósito de S3

Vuelva a su usuario de IAM, vaya a la consola de depósitos de S3 y abra el depósito de S3. Como era de esperar, el depósito aún no tiene objetos.

  1. Como era de esperar, el depósito aún no tiene objetos. Hacer clic Subir.
    Probar la política de depósito de S3
  2. Arrastrar y soltar archivos o haga clic Agregar archivos o Agregar carpeta.
    ejemplo de política de aws s3
  3. Una vez que haya agregado todos los archivos y carpetas, haga clic en Subir.
    política de acceso al depósito
  4. Si todo va bien, el archivo se cargará y verá una confirmación similar a la captura de pantalla a continuación. Hacer clic Cerca.
    acceder al cubo de aws s3Ha subido correctamente un archivo con permisos de la política de depósito de S3.

Conclusión

Controlar el acceso a sus depósitos S3 es un aspecto crucial para mantener la seguridad y la integridad de sus datos. Las políticas de depósito de AWS S3 proporcionan un mecanismo eficaz para controlar el acceso y anular los permisos de IAM cuando sea necesario.

Al aprovechar las políticas de depósito de S3 en línea basadas en grupos o las políticas de depósito de S3 basadas en recursos, puede aplicar controles de acceso granulares y asegurarse de que solo las entidades autorizadas puedan interactuar con sus depósitos de S3.

Revise y actualice periódicamente sus políticas de acceso a medida que evolucionan sus requisitos para mantener sus datos seguros y protegidos.

Valora este artculo post

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *