Autorización de API de puntos de conexión regionales con IAM - Amazon Simple Storage Service

Autorización de API de puntos de conexión regionales con IAM

AWS Identity and Access Management (IAM) es un Servicio de AWS que ayuda a los administradores a controlar de forma segura el acceso a los recursos de AWS. Los administradores de IAM controlan quién se puede autenticar (iniciar sesión) y autorizar (tener permisos) para utilizar los recursos de Amazon S3 en S3 Express One Zone. El uso de IAM no está sujeto a ningún cargo adicional.

De forma predeterminada, los usuarios no tienen permisos para los buckets de directorio ni para las operaciones de S3 Express One Zone. Para conceder permisos de acceso a los buckets de directorio, puede usar IAM para crear usuarios, grupos o roles y asociar permisos a esas identidades. Para obtener más información sobre IAM, consulte la sección Prácticas recomendadas de IAM en la Guía del usuario de IAM;.

Para proporcionar acceso, puede agregar permisos a sus usuarios, grupos o roles a través de los siguientes medios:

Para obtener más información acerca de IAM para S3 Express One Zone, consulte los siguientes temas.

Entidades principales

Cuando crea una política basada en recursos para conceder acceso a sus buckets, debe utilizar el elemento Principal para especificar la persona o aplicación que puede realizar una solicitud para realizar una acción o una operación en ese recurso. Para las políticas de buckets de directorio, puede utilizar los siguientes principios:

  • Una cuenta de AWS.

  • Un usuario de IAM

  • Un rol de IAM

  • Un usuario federado

Para obtener más información, consulte Principal en la Guía del usuario de IAM.

Recursos

Los nombres de recursos de Amazon (ARN) para los buckets de directorio contienen el espacio de nombres s3express, la Región de AWS, el ID de cuenta de AWS y el nombre del bucket de directorio, que incluye el ID de zona de disponibilidad. Para acceder y realizar acciones en el bucket de directorio, debe utilizar el formato de ARN siguiente:

arn:aws:s3express:region:account-id:bucket/base-bucket-name--azid--x-s3

Para obtener más información, consulte Amazon Resource Names (ARNs) en la Guía del usuario de IAM. Para obtener más información sobre los recursos, consulte Elementos de política JSON de IAM: Resource en la Guía del usuario de IAM.

Acciones para S3 Express One Zone

En una política basada en identidad de IAM o una política basada en recursos, usted define qué acciones de S3 se permiten o deniegan. Las acciones de S3 Express One Zone corresponden a operaciones de la API concretas. S3 Express One Zone tiene un espacio de nombres de IAM único que es distinto del espacio de nombres estándar de Amazon S3. Este espacio de nombres es s3express.

Al conceder el permiso s3express:CreateSession, la operación de la API CreateSession puede recuperar los tokens de sesión al acceder a las operaciones de la API de puntos de conexión zonales (o de nivel de objeto). Estos tokens de sesión devuelven las credenciales que se utilizan para conceder acceso a todas las demás operaciones de la API de puntos de conexión zonales. Como resultado, no es necesario conceder permisos de acceso a las operaciones de API zonales mediante políticas de IAM. En su lugar, el token de sesión permite el acceso. Para obtener la lista de operaciones y permisos de la API de puntos de conexión zonales, consulte Autenticación y autorización de solicitudes.

Para obtener más información sobre las operaciones de API de puntos de conexión zonales y regionales, consulte Redes para S3 Express One Zone. Para obtener más información sobre la operación de la API CreateSession, consulte CreateSession en la Referencia de la API de Amazon Simple Storage Service.

Puede especificar las siguientes acciones en el elemento Action de una declaración de política de IAM. Utilice políticas para conceder permisos para realizar una operación en AWS. Cuando utiliza una acción en una política, normalmente permite o deniega el acceso a la operación de la API con el mismo nombre. No obstante, en algunos casos, una sola acción controla el acceso a más de una operación de la API. El acceso a las acciones en el nivel de bucket solo se puede conceder en las políticas basadas en identidad de IAM (usuario o rol), no en las políticas de bucket.

En la siguiente tabla se muestran acciones y claves de condición para S3 Express One Zone.

Acción API Descripción Nivel de acceso Claves de condición
s3express:CreateBucket CreateBucket

Concede permiso para crear un nuevo bucket.

Escritura

s3express:authType

s3express:LocationName

s3express:ResourceAccount

s3express:signatureversion

s3express:TlsVersion

s3express:x-amz-content-sha256

s3express:CreateSession CreateSession

Concede permiso para crear un token de sesión, que se utiliza para conceder acceso a todas las operaciones de la API zonal (en el nivel de objeto), como, PutObject, GetObject, etc.

Escritura

s3express:authType

s3express:SessionMode

s3express:ResourceAccount

s3express:signatureversion

s3express:signatureAge

s3express:TlsVersion

s3express:x-amz-content-sha256

s3express:x-amz-server-side-encryption

s3express:x-amz-server-side-encryption-aws-kms-key-id

s3express:DeleteBucket DeleteBucket

Concede permiso para eliminar el bucket nombrado en el URI.

Escritura

s3express:authType

s3express:ResourceAccount

s3express:signatureversion

s3express:TlsVersion

s3express:x-amz-content-sha256

s3express:DeleteBucketPolicy DeleteBucketPolicy

Concede permiso para eliminar la política en un bucket especificado.

Administración de permisos

s3express:authType

s3express:ResourceAccount

s3express:signatureversion

s3express:TlsVersion

s3express:x-amz-content-sha256

s3express:GetBucketPolicy GetBucketPolicy

Concede permiso para devolver la política del bucket especificado.

Leer

s3express:authType

s3express:ResourceAccount

s3express:signatureversion

s3express:TlsVersion

s3express:x-amz-content-sha256

s3express:GetEncryptionConfiguration GetBucketEncryption

Concede permiso para devolver la configuración de cifrado predeterminada de un bucket de directorio.

Leer

s3express:authType

s3express:ResourceAccount

s3express:signatureversion

s3express:TlsVersion

s3express:x-amz-content-sha256

s3express:ListAllMyDirectoryBuckets ListDirectoryBuckets

Concede permiso para enumerar todos los buckets de directorio propiedad del remitente autenticado de la solicitud.

Enumeración

s3express:authType

s3express:ResourceAccount

s3express:signatureversion

s3express:TlsVersion

s3express:x-amz-content-sha256

s3express:PutBucketPolicy PutBucketPolicy

Concede permiso para agregar o reemplazar una política de bucket.

Administración de permisos

s3express:authType

s3express:ResourceAccount

s3express:signatureversion

s3express:TlsVersion

s3express:x-amz-content-sha256

s3express:PutBucketPolicy PutBucketPolicy

Concede permiso para agregar o reemplazar una política de bucket.

Administración de permisos

s3express:authType

s3express:ResourceAccount

s3express:signatureversion

s3express:TlsVersion

s3express:x-amz-content-sha256

s3express:PutEncryptionConfiguration PutBucketEncryption o DeleteBucketEncryption

Concede permiso para establecer la configuración de cifrado para un bucket de directorio

Escritura

s3express:authType

s3express:ResourceAccount

s3express:signatureversion

s3express:TlsVersion

s3express:x-amz-content-sha256

Claves de condición de S3 Express One Zone

S3 Express One Zone define las siguientes claves de condición que se pueden utilizar en el elemento Condition de una política de IAM. Puede utilizar estas claves para ajustar más las condiciones en las que se aplica la instrucción de política.

Clave de condición Descripción Tipo
s3express:authType

Filtra el acceso por método de autenticación. Para restringir las solicitudes entrantes para que usen un método de autenticación específico, puede usar esta clave de condición opcional. Por ejemplo, puede utilizar esta clave de condición para permitir solo el encabezado Authorization de HTTP que se utilizará en la autenticación de solicitudes.

Valores válidos: REST-HEADER, REST-QUERY-STRING

Cadena
s3express:LocationName

Filtra el acceso a la operación de la API CreateBucket mediante un ID de zona de disponibilidad (ID de AZ) específico, por ejemplo, usw2-az1.

Ejemplo de valor: usw2-az1

Cadena
s3express:ResourceAccount

Filtra el acceso por el ID de la Cuenta de AWS del propietario del recurso.

Para restringir el acceso de usuarios, roles o aplicaciones a los buckets de directorio que pertenecen a un ID de Cuenta de AWS específico, puede utilizar la clave de condición de aws:ResourceAccount o s3express:ResourceAccount. Puede usar esta clave de condición en las políticas de identidad de AWS Identity and Access Management (IAM) o en las políticas de puntos de conexión de nube privada virtual (VPC). Por ejemplo, puede usar esta clave de condición para restringir que los clientes dentro de su VPC accedan a los buckets que no posee.

Ejemplo de valor: 111122223333

Cadena
s3express:SessionMode

Filtra el acceso según el permiso solicitado por la operación de la API CreateSession. De forma predeterminada, la sesión es ReadWrite. Puede utilizar esta clave de condición para limitar el acceso a ReadOnly o denegar explícitamente el acceso a ReadWrite. Para obtener más información, consulte Ejemplos de políticas de bucket de directorio para S3 Express One Zone y CreateSession en la Referencia de la API de Amazon Simple Storage Service.

Valores válidos: ReadWrite, ReadOnly

Cadena
s3express:signatureAge

Filtra el acceso por la antigüedad en milisegundos de la firma de la solicitud. Esta condición solo funciona para las direcciones URL prefirmadas.

En AWS Signature Version 4, la clave de firma es válida por un plazo máximo de siete días. Por lo tanto, las firmas también son válidas por un plazo máximo de siete días. Para obtener más información, consulte Introducción a la firma de solicitudes en la Referencia de la API de Amazon Simple Storage Service. Puede usar esta condición para limitar aún más la antigüedad de la firma.

Ejemplo de valor: 600000

Numérico
s3express:signatureversion

Identifica la versión de AWS Signature que desea admitir con las solicitudes autenticadas. Para las solicitudes autenticadas, S3 Express One Zone admite Signature Version 4.

Valores válidos: "AWS4-HMAC-SHA256" (identifica Signature Version 4)

Cadena
s3express:TlsVersion

Filtra el acceso por la versión de TLS que utiliza el cliente

Puede utilizar la clave de condición s3:TlsVersion para escribir políticas de bucket, de punto de conexión de nube privada virtual (VPCE) o de IAM que restrinjan el acceso de aplicaciones o usuarios a buckets de directorio en función de la versión de TLS que utilice el cliente. También puede utilizar esta clave de condición para escribir políticas que requieran una versión mínima de TLS.

Ejemplo de valor: 1.3

Numérico
s3express:x-amz-content-sha256

Filtra el acceso en función del contenido sin firmar en el bucket.

Puede utilizar esta clave de condición para no permitir el contenido sin firmar en su bucket.

Cuando se utiliza Signature Version 4, para las solicitudes que utilizan el encabezado Authorization, agregue el encabezado x-amz-content-sha256 en el cálculo de la firma y luego establezca su valor en la carga de hash.

Puede usar esta clave de condición en su política de bucket para denegar cualquier carga en la que las cargas no estén firmadas. Por ejemplo:

Valor válido: UNSIGNED-PAYLOAD

Cadena
s3express:x-amz-server-side-encryption

Filtra el acceso por cifrado en el lado del servidor

Valores válidos: "AWS256", aws:kms

Cadena
s3express:x-amz-server-side-encryption-aws-kms-key-id

Filtra el acceso por la clave administrada por el cliente de AWS KMS para el cifrado del servidor

Ejemplo de valor: "arn:aws:kms:region:acct-id:key/key-id"

ARN