CreateBucket
Documentación: CreateBucket
Descripción
La operación CreateBucket
crea un nuevo bucket en el servicio de almacenamiento de objetos. Un bucket es el contenedor raíz para los objetos (archivos) que se almacenan en S3.
Solicitud
Método: PUT
URI:
Estilo virtual-host:
https://{bucket-name}.s3.latam-scl-x.datageneral.cl/
Estilo path:
https://s3.latam-scl-x.datageneral.cl/{bucket-name}
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.x-amz-acl
: Opcional. Define el Access Control List (ACL) para el bucket. Algunos valores comunes son:private
: El propietario del bucket tiene acceso completo. Todos los demás no tienen acceso.public-read
: El propietario tiene acceso completo. Todos los demás pueden leer.public-read-write
: El propietario tiene acceso completo. Todos los demás pueden leer y escribir.
Otros encabezados opcionales: Dependiendo de las funcionalidades que se quieran agregar (ej:
x-amz-grant-read
,x-amz-grant-write
,x-amz-bucket-object-lock-enabled
)
Cuerpo de la solicitud:
Opcional. Puede contener una configuración XML para especificar propiedades del bucket, como la ubicación. Si no se especifica, el bucket se crea en la región predeterminada.
Ejemplo de XML para especificar la ubicación del bucket (LocationConstraint):
<CreateBucketConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/"> <LocationConstraint>latam-scl-x</LocationConstraint> </CreateBucketConfiguration>
Respuesta
Códigos de estado:
200 OK
: El bucket se creó exitosamente.301 Moved Permanently
: El bucket ya existe y se ha movido a una nueva ubicación.400 Bad Request
: La solicitud no se pudo procesar debido a un error del cliente (ej., nombre de bucket inválido).403 Forbidden
: El cliente no tiene permiso para crear el bucket.409 Conflict
: El bucket ya existe.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.Location
: La ubicación del bucket recién creado.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:
Vacío. No hay contenido en el cuerpo de la respuesta para una creación exitosa del bucket.
Ejemplos
Ejemplo de solicitud (usando estilo virtual-host):
PUT / HTTP/1.1
Host: my-bucket.s3.latam-scl-x.datageneral.cl
Date: Mon, 26 Jul 2024 12:00:00 GMT
Authorization: AWS AKIAIOSFODNN7EXAMPLE:QWxhZGVpbjEgXA==
Content-Type: application/xml
<CreateBucketConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<LocationConstraint>latam-scl-x</LocationConstraint>
</CreateBucketConfiguration>
Ejemplo de respuesta exitosa:
HTTP/1.1 200 OK
Date: Mon, 26 Jul 2024 12:00:01 GMT
Location: https://my-bucket.s3.latam-scl-x.datageneral.cl/
x-amz-request-id: 65423A7B884B82F1
Server: MyS3Server
Ejemplo de respuesta de error (Bucket ya existe):
HTTP/1.1 409 Conflict
Date: Mon, 26 Jul 2024 12:00:01 GMT
Content-Type: application/xml
x-amz-request-id: 65423A7B884B82F1
Server: MyS3Server
<?xml version="1.0" encoding="UTF-8"?>
<Error>
<Code>BucketAlreadyExists</Code>
<Message>The specified bucket already exists.</Message>
<BucketName>my-bucket</BucketName>
<RequestId>65423A7B884B82F1</RequestId>
<HostId>xxxxxxxxxxxxxxxxxxxxx</HostId>
</Error>
Última actualización