Reglas de nomenclatura de buckets de uso general
Cuando cree un bucket de propósito general, asegúrese de tener en cuenta la longitud, los caracteres válidos, el formato y la unicidad de los nombres de bucket. En las siguientes secciones se proporciona información sobre la nomenclatura de buckets de uso general, incluidas las reglas de nomenclatura, las prácticas recomendadas y un ejemplo para crear un bucket de uso general con un nombre que incluya un identificador único global (GUID).
Para obtener información sobre los nombres de claves de objeto, consulte Creación de nombres de claves de objeto.
Para crear un bucket de propósito general, consulte Crear un bucket.
Temas
Reglas de nomenclatura de los buckets de uso general
Las siguientes reglas de nomenclatura se aplican para buckets de uso general.
-
Los nombres de bucket deben tener entre 3 caracteres (mín.) y 63 caracteres (máx.).
-
Los nombres de bucket pueden consistir únicamente de letras minúsculas, números, puntos (
.
) y guiones (-
). -
Los nombres de bucket deben comenzar y terminar con una letra o un número.
-
Los nombres de bucket no deben contener dos puntos adyacentes.
-
Los nombres de bucket no deben tener el formato de una dirección IP (por ejemplo,
192.168.5.4
). -
Los nombres de los buckets no deben comenzar con el prefijo
xn--
. -
Los nombres de los buckets no deben comenzar con el prefijo
sthree-
. -
Los nombres de los buckets no deben comenzar con el prefijo
amzn-s3-demo-
. -
Los nombres de los buckets no deben terminar con el sufijo
-s3alias
. Este sufijo está reservado para nombres de alias de punto de acceso. Para obtener más información, consulte Alias de punto de acceso para buckets de propósito general. -
Los nombres de los buckets no deben terminar con el sufijo
--ol-s3
. Este sufijo está reservado para nombres de alias de punto de acceso de Object Lambda. Para obtener más información, consulte Cómo usar un alias de estilo de bucket para su punto de acceso de Object Lambda de bucket de S3. -
Los nombres de los buckets no deben terminar con el sufijo
.mrap
. Este sufijo está reservado para nombres de punto de acceso multirregionales. Para obtener más información, consulte Reglas para asignar nombres a los puntos de acceso de varias regiones de Amazon S3. -
Los nombres de los buckets no deben terminar con el sufijo
--x-s3
. Este sufijo está reservado para buckets de directorio. Para obtener más información, consulte Reglas de nomenclatura de buckets de directorio. -
Los nombres de los buckets no deben terminar con el sufijo
--table-s3
. Este sufijo está reservado para los buckets de Tablas de S3. Para obtener más información, consulte Reglas de nomenclatura de espacios de nombres, tablas y buckets de tablas de Amazon S3. -
Los buckets utilizados con Aceleración de transferencias de Amazon S3 no pueden tener puntos (
.
) en los nombres. Para obtener más información acerca de Aceleración de transferencias, consulte Configuración de transferencias de archivos rápidas y seguras con Aceleración de transferencias de Amazon S3.
importante
-
Los nombres de bucket deben ser únicos en todas las Cuentas de AWS de todas las Regiones de AWS de una partición. Una partición es una agrupación de regiones. AWS actualmente tiene tres particiones:
aws
(regiones comerciales),aws-cn
(regiones de China) yaws-us-gov
(regiones de AWS GovCloud (US)). -
Otra Cuenta de AWS de la misma partición no puede utilizar el mismo nombre de bucket hasta que se elimine el bucket. Después de eliminar un bucket, tenga en cuenta que otra Cuenta de AWS en la misma partición puede utilizar el mismo nombre de bucket para un nuevo bucket y, por lo tanto, puede recibir potencialmente solicitudes destinadas al bucket eliminado. Si desea evitar esto o seguir utilizando el mismo nombre de bucket, no elimine el bucket. Le recomendamos que vacíe el bucket y lo conserve y que, en su lugar, bloquee las solicitudes de bucket según sea necesario. En el caso de los buckets que ya no se utilicen activamente, recomendamos vaciar el bucket de todos los objetos para minimizar costos y retener el propio bucket.
-
Cuando cree un bucket de uso general, elija el nombre y la Región de AWS donde se creará. Una vez que haya creado un bucket de uso general, no podrá modificar el nombre ni la región.
-
No incluya información confidencial en el nombre del bucket. El nombre del bucket será visible en las URL que señalan a los objetos almacenados en él.
nota
Antes del 1 de marzo de 2018, los buckets creados en la región EE. UU. Este (Norte de Virginia) podían tener nombres de hasta 255 caracteres e incluir letras mayúsculas y guiones bajos. A partir del 1 de marzo de 2018, los nuevos buckets de EE. UU. Este (Norte de Virginia) deben ajustarse a las mismas reglas aplicadas en todas las demás regiones.
Nombres de buckets de uso general de ejemplo
Los siguientes nombres de bucket muestran ejemplos de los caracteres permitidos en los nombres de bucket de uso general: a-z, 0-9 y guiones (-
). El prefijo reservado amzn-s3-demo-
se utiliza aquí solo a modo de ejemplo. Debido a que es un prefijo reservado, no puede crear nombres de bucket que comiencen por amzn-s3-demo-
.
-
amzn-s3-demo-bucket1-a1b2c3d4-5678-90ab-cdef-example11111
-
amzn-s3-demo-bucket
Los nombres de bucket de ejemplo siguientes son válidos, pero no se recomiendan para usos distintos del alojamiento estático de sitios web porque contienen puntos (.
):
-
example.com
-
www.example.com
-
my.example.s3.bucket
Los nombres de bucket de ejemplo siguientes no son válidos:
-
amzn_s3_demo_bucket
(contiene guiones bajos) -
AmznS3DemoBucket
(contiene letras mayúsculas) -
amzn-s3-demo-bucket-
(comienza con el prefijoamzn-s3-demo-
y termina con un guion) -
example..com
(contiene dos puntos seguidos) -
192.168.5.4
(coincide con el formato de una dirección IP)
Prácticas recomendadas
Cuando asigne un nombre a los buckets, tenga en cuenta las siguientes prácticas recomendadas de nomenclatura de buckets.
Elección de un esquema de nomenclatura de buckets que sea poco probable que ocasione conflictos de nomenclatura
Si la aplicación crea buckets automáticamente, elija un esquema de nomenclatura de buckets que sea poco probable que ocasione conflictos de nomenclatura. Asegúrese de que la lógica de su aplicación elija un nombre de bucket diferente si un nombre de bucket ya ha sido usado.
Incorporación de identificadores únicos globales (GUID) a los nombres de bucket
Le recomendamos que cree nombres de bucket que no sean predecibles. No escriba código con la suposición de que el nombre de bucket elegido esté disponible, a menos que ya haya creado el bucket. Un método para crear nombres de bucket que no sean predecibles consiste en adjuntar un identificador único global (GUID) al nombre de bucket, por ejemplo, amzn-s3-demo-bucket-a1b2c3d4-5678-90ab-cdef-example11111
. Para obtener más información, consulte Creación de un bucket que utilice un GUID en el nombre del bucket.
Evitación del uso de puntos (.
) en los nombres de bucket
Para obtener una mejor compatibilidad, se recomienda evitar el uso de puntos (.
) en los nombres de bucket, excepto para los buckets que se utilizan únicamente para el alojamiento estático de sitios web. Si incluye puntos en el nombre de un bucket, no puede usar direccionamiento de estilo host virtual a través de HTTPS, a menos que realice una validación de certificado propia. Los certificados de seguridad utilizados para el alojamiento virtual de los buckets no funcionan para los buckets con puntos en el nombre.
Esta limitación no afecta a los buckets utilizados para el alojamiento de sitios web estáticos, ya que el alojamiento de sitios web estáticos solo está disponible a través de HTTP. Para obtener más información acerca del direccionamiento de tipo de host virtual, consulte Alojamiento virtual de buckets. Para obtener más información sobre el alojamiento estático de sitios web, consulte Alojamiento de un sitio web estático mediante Amazon S3.
Elección de un nombre pertinente
Al asignar un nombre a un bucket, elija uno que sea pertinente para usted o la empresa. Evite el uso de nombres asociados con otros. Por ejemplo, evite el uso de AWS
o Amazon
en el nombre de bucket.
No elimine buckets para poder reutilizar nombres de bucket
Si un bucket está vacío, puede eliminarlo. Después de eliminar un bucket, el nombre vuelve a estar disponible para su reutilización. No obstante, no se garantiza que pueda reutilizar el nombre de inmediato o en absoluto. Después de eliminar un bucket, puede pasar algún tiempo antes de que pueda volver a utilizar el nombre. Además, otra Cuenta de AWS podría crear un bucket con el mismo nombre antes de que pueda reutilizarlo.
Después de eliminar un bucket, tenga en cuenta que otra Cuenta de AWS en la misma partición puede utilizar el mismo nombre de bucket para un nuevo bucket y, por lo tanto, puede recibir potencialmente solicitudes destinadas al bucket eliminado. Si desea evitar esto o seguir utilizando el mismo nombre de bucket, no elimine el bucket. Le recomendamos que vacíe el bucket y lo conserve y que, en su lugar, bloquee las solicitudes de bucket según sea necesario.
Creación de un bucket que utilice un GUID en el nombre del bucket
Los siguientes ejemplos muestran cómo crear un bucket de uso general que utilice un GUID al final del nombre del bucket.
En el siguiente ejemplo de la AWS CLI se crea un bucket en la región Oeste de EE. UU. (Norte de California) (us-west-1
) con un nombre de bucket de ejemplo que utiliza un identificador único global (GUID). Para utilizar este comando de ejemplo, sustituya
por su propia información.user input placeholders
aws s3api create-bucket \ --bucket
amzn-s3-demo-bucket1
$(uuidgen | tr -d - | tr '[:upper:]' '[:lower:]' ) \ --regionus-west-1
\ --create-bucket-configuration LocationConstraint=us-west-1
En el siguiente ejemplo se demuestra cómo crear un bucket con un GUID al final del nombre de bucket en la región Este de EE. UU. (Norte de Virginia) (us-east-1
) mediante AWS SDK para Java. Para utilizar este ejemplo, reemplace los
con su propia información. Para obtener más información sobre otros SDK de AWS, consulte Herramientas para crear en AWSuser input placeholders
import com.amazonaws.regions.Regions; import com.amazonaws.services.s3.AmazonS3; import com.amazonaws.services.s3.AmazonS3ClientBuilder; import com.amazonaws.services.s3.model.Bucket; import com.amazonaws.services.s3.model.CreateBucketRequest; import java.util.List; import java.util.UUID; public class CreateBucketWithUUID { public static void main(String[] args) { final AmazonS3 s3 = AmazonS3ClientBuilder.standard().withRegion(Regions.
US_EAST_1
).build(); String bucketName = "amzn-s3-demo-bucket
" + UUID.randomUUID().toString().replace("-", ""); CreateBucketRequest createRequest = new CreateBucketRequest(bucketName); System.out.println(bucketName); s3.createBucket(createRequest); } }