Hay dos tipos de permisos en un cubo S3.
Para los permisos basados en el usuario, se crea una política de IAM que define el nivel de acceso de un usuario de IAM a los cubos S3 y sus objetos y se adjunta al usuario de IAM. Ahora el usuario de IAM solo tiene acceso a los objetos específicos definidos en la política de IAM.
Los permisos basados en recursos son los permisos asignados a los recursos S3. Usando estos permisos, podemos definir si se puede acceder a este objeto S3 a través de múltiples cuentas S3 o no. Existen los siguientes tipos de políticas basadas en recursos S3.
Este artículo describe las instrucciones detalladas para configurar el cubo S3 utilizando la consola de administración de AWS.
Permisos basados en el usuario
Los permisos basados en el usuario son los permisos asignados al usuario de IAM, que definen si el usuario de IAM tiene acceso a algunos objetos S3 específicos o no. Para este propósito, se escribe una política de IAM y se adjunta al usuario de IAM.
Esta sección escribirá una política de IAM en línea para otorgar permisos específicos al usuario de IAM. Primero, inicie sesión en la consola de gestión de AWS y vaya al servicio IAM.
La política IAM se adjunta a un usuario o un grupo de usuarios en IAM. Si desea aplicar la Política IAM a varios usuarios, agregue todos los usuarios a un grupo y adjunte la Política IAM al grupo.
Para esta demostración, adjuntaremos la política IAM a un solo usuario. Desde la consola IAM, haga clic en el usuarios desde el panel lateral izquierdo.
Ahora en la lista de usuarios, haga clic en el usuario que desea adjuntar la Política de IAM.
Selecciona el Permisos pestaña y haga clic en el Agregar política en línea botón en el lado derecho de la pestaña.
Ahora puede crear la política de IAM utilizando el editor visual o escribir un JSON. Usaremos el editor visual para escribir la política IAM para esta demostración.
Seleccionaremos el servicio, las acciones y los recursos del editor visual. El servicio es el servicio AWS para el que escribiremos la política. Para esta demostración, S3 es el servicio.
Las acciones definen las acciones permitidas o negadas que se pueden realizar en S3. Como si pudiéramos agregar una acción Listbucket en S3, que permitirá al usuario de IAM enumere los cubos S3. Para esta demostración, solo otorgaremos Lista y Leer permisos.
Los recursos definen qué recursos S3 se verán afectados por esta política de IAM. Si seleccionamos un recurso S3 específico, esta política será aplicable solo a ese recurso. Para esta demostración, seleccionaremos todos los recursos.
Después de seleccionar el servicio, la acción y el recurso, ahora haga clic en el Json pestaña, y mostrará un JSON extendido que define todos los permisos. Cambiar el Efecto de Permitir a Denegar para negar las acciones especificadas a los recursos especificados en la política.
Ahora haga clic en el política de revisión botón en la esquina inferior derecha de la consola. Pedirá el nombre de la Política IAM. Ingrese el nombre de la política y haga clic en el Crear política botón para agregar una política en línea al usuario existente.
Ahora el usuario de IAM no puede realizar las acciones especificadas en la política IAM en todos los recursos S3. Siempre que el IAM intente realizar una acción denegada, recibirá el siguiente error en la consola.
Permisos basados en recursos
A diferencia de las políticas de IAM, los permisos basados en recursos se aplican a los recursos S3 como cubos y objetos. Esta sección verá cómo configurar los permisos basados en recursos en el cubo S3.
Políticas de cubo
Las políticas de cubo S3 se utilizan para otorgar permisos al cubo S3 y sus objetos. Solo el propietario del cubo puede crear y configurar la política de cubo. Los permisos aplicados por la Política del cubo afectan todos los objetos dentro del cubo S3, excepto los objetos propiedad de otras cuentas de AWS.
Por defecto, cuando se carga un objeto de otra cuenta de AWS en su cubo S3, es propiedad de su cuenta de AWS (escritor de objetos). Esa cuenta de AWS (escritor de objetos) tiene acceso a este objeto y puede otorgar permisos utilizando ACLS.
Las políticas de cubo S3 se escriben en JSON, y se pueden agregar o negar los permisos para los objetos de los cubos S3 utilizando estas políticas. Esta sección escribirá una política de cubo de demostración S3 y la adjuntará al cubo S3.
Primero, vaya a S3 desde la consola de gestión de AWS.
Vaya al cubo S3 que desea aplicar la Política de Bucket.
Ve a la permisos Pestaña en el cubo S3.
Desplácese hacia abajo hasta el Política de balde sección y haga clic en el editar botón en la esquina superior derecha de la sección para agregar política de cubo.
Ahora agregue la siguiente política de cubo al cubo S3. Esta política de cubo de muestra bloqueará cada acción en el cubo S3 incluso si tiene una política de IAM que otorga acceso a S3 adjunto al usuario. En el Recurso campo de la política, reemplazar el Nombre de balde con el nombre de su cubo S3 antes de colocarlo en el cubo S3.
Para escribir una política personalizada de cubo S3, visite el generador de políticas de AWS de la siguiente URL.
https: // awpolicygen.s3.amazonaws.com/PolicyGen.html
Después de adjuntar la política de cubo S3, ahora intente cargar un archivo en el cubo S3, y lanzará el siguiente error.
Listas de control de acceso
Listas de control de acceso de Amazon S3 Administre el acceso en los niveles de objeto S3 y S3. Cada cubo y objeto S3 tiene una lista de control de acceso asociada con él, y cada vez que se recibe una solicitud, S3 verifica su lista de control de acceso y decide si el permiso se otorgará o no.
Esta sección configurará la lista de control de acceso S3 para hacer público el cubo S3 para que todos en el mundo puedan acceder a los objetos almacenados en el cubo.
NOTA: Asegúrese de no tener datos secretos en el cubo antes de seguir esta sección, ya que haremos que nuestro cubo S3 sea público, y sus datos estarán expuestos a Internet público.
Primero, vaya al servicio S3 desde la consola de administración de AWS y seleccione el cubo que desea configurar la lista de control de acceso para. Antes de configurar la lista de control de acceso, primero, configure el acceso público para permitir el acceso público en el cubo.
En el cubo S3, ve al permisos pestaña.
Desplácese hacia abajo hasta el Bloquear acceso público sección en el permisos pestaña y haga clic en el editar botón.
Abrirá diferentes opciones para bloquear el acceso otorgado a través de diferentes políticas. Desmarque los cuadros que bloquean el acceso otorgado por la lista de control de acceso y haga clic en el guardar cambios botón.
Desde el cubo S3, haga clic en el objeto que desea hacer público y vaya a la pestaña Permisos.
Clickea en el editar botón en la esquina derecha del permisos pestaña y marque las casillas que permiten el acceso a cualquier persona al objeto.
Clickea en el guardar cambios Para aplicar la lista de control de acceso, y ahora el objeto S3 es accesible para cualquier persona a través de Internet. Vaya a la pestaña Propiedades del objeto S3 (no el cubo S3) y copie la URL del objeto S3.
Abra la URL en el navegador y abrirá el archivo en el navegador.
Conclusión
AWS S3 se puede usar para poner datos que puedan ser accesibles a través de Internet. Pero al mismo tiempo, puede haber algunos datos que no desea exponer al mundo. AWS S3 proporciona una configuración de bajo nivel que se puede usar para permitir o bloquear el acceso a nivel de objeto. Puede configurar los permisos de cubo S3 de tal manera que algunos objetos en el cubo pueden ser públicos, y algunos pueden ser privados al mismo tiempo. Este artículo ofrece una guía esencial para configurar los permisos de cubo S3 utilizando la consola de administración de AWS.