GetBucketPolicy

Documentación: GetBucketPolicy

Descripción

La operación GetBucketPolicy recupera la política asociada con un bucket. Si no se ha establecido una política, la API devolverá un error.

Solicitud

Método: GET

URI:

  • Estilo virtual-host: https://{bucket-name}.s3.latam-scl-x.datageneral.cl/?policy

  • Estilo path: https://s3.latam-scl-x.datageneral.cl/{bucket-name}?policy

Encabezados:

  • Host: Requerido. Especifica el nombre del bucket (para virtual-host) o el host del servicio (para path-style).

  • Date: Requerido. Fecha y hora de la solicitud.

  • Authorization: Requerido. Contiene la firma de la solicitud para la autenticación.

Cuerpo de la solicitud:

  • Vacío. No se requiere un cuerpo de solicitud para obtener la política de un bucket.

Respuesta

Códigos de estado:

  • 200 OK: La solicitud fue exitosa. La política del bucket se devuelve en el cuerpo de la respuesta.

  • 400 Bad Request: La solicitud no se pudo procesar debido a un error del cliente.

  • 403 Forbidden: El cliente no tiene permiso para obtener la política del bucket.

  • 404 Not Found: El bucket no existe, o no tiene una política asociada.

  • Otros códigos de error: Pueden aplicar códigos de error específicos del servicio S3.

Encabezados de la respuesta:

  • Date: Fecha y hora de la respuesta.

  • Content-Type: Requerido. Debe ser application/json.

  • Content-Length: Requerido. La longitud del cuerpo de la respuesta.

  • x-amz-request-id: Un identificador único para la solicitud.

  • x-amz-id-2: Un identificador único extendido para la solicitud.

  • Server: Información sobre el servidor que procesó la solicitud.

Cuerpo de la respuesta:

  • Contiene el documento de política JSON asociado con el bucket.

Ejemplos

Ejemplo de solicitud (usando estilo virtual-host):

GET /?policy HTTP/1.1
Host: my-bucket.s3.latam-scl-x.datageneral.cl
Date: Wed, 28 Jul 2024 17:00:00 GMT
Authorization: AWS AKIAIOSFODNN7EXAMPLE:QWxhZGVpbjEgXA==

Ejemplo de respuesta exitosa:

HTTP/1.1 200 OK
Date: Wed, 28 Jul 2024 17:00:01 GMT
Content-Type: application/json
Content-Length: 512
x-amz-request-id: 65423A7B884B82F1
Server: MyS3Server

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

Ejemplo de respuesta de error (No se encuentra la política):

HTTP/1.1 404 Not Found
Date: Wed, 28 Jul 2024 17:00:01 GMT
Content-Type: application/xml
x-amz-request-id: 65423A7B884B82F1
Server: MyS3Server

<?xml version="1.0" encoding="UTF-8"?>
<Error>
  <Code>NoSuchBucketPolicy</Code>
  <Message>The bucket policy does not exist</Message>
  <RequestId>65423A7B884B82F1</RequestId>
  <HostId>xxxxxxxxxxxxxxxxxxxxx</HostId>
</Error>

Última actualización