Seleccione sus preferencias de cookies

Usamos cookies esenciales y herramientas similares que son necesarias para proporcionar nuestro sitio y nuestros servicios. Usamos cookies de rendimiento para recopilar estadísticas anónimas para que podamos entender cómo los clientes usan nuestro sitio y hacer mejoras. Las cookies esenciales no se pueden desactivar, pero puede hacer clic en “Personalizar” o “Rechazar” para rechazar las cookies de rendimiento.

Si está de acuerdo, AWS y los terceros aprobados también utilizarán cookies para proporcionar características útiles del sitio, recordar sus preferencias y mostrar contenido relevante, incluida publicidad relevante. Para aceptar o rechazar todas las cookies no esenciales, haga clic en “Aceptar” o “Rechazar”. Para elegir opciones más detalladas, haga clic en “Personalizar”.

Enumeración de los buckets de Amazon S3

Modo de enfoque
Enumeración de los buckets de Amazon S3 - Amazon Simple Storage Service

Para obtener una lista de los buckets de uso general que posee, puede usar ListBuckets. Puede enumerar los buckets mediante la consola de Amazon S3, la AWS Command Line Interface o los SDK de AWS. En el caso de las solicitudes ListBuckets que utilizan la AWS CLI, los SDK de AWS y la API de REST de Amazon S3, las Cuentas de AWS que utilizan la cuota de servicio predeterminada para buckets (10 000 buckets), admiten solicitudes paginadas y no paginadas. Independientemente del número de buckets que tenga en la cuenta, puede crear tamaños de página de entre 1 y 10 000 buckets para enumerar todos los buckets. En el caso de las solicitudes paginadas, las solicitudes ListBuckets devuelven tanto los nombres de bucket como las Regiones de AWS correspondientes a cada uno de ellos. En los ejemplos siguientes de AWS Command Line Interface y AWS SDK, se muestra cómo usar la paginación en la solicitud ListBuckets. Tenga en cuenta que algunos SDK de AWS ayudan con la paginación.

Permisos

Para enumerar todos sus buckets, debe tener el permiso de s3:ListAllMyBuckets. Si se produce un error HTTP Access Denied (403 Forbidden), consulte Solución de problemas de errores de acceso rechazado (403 Forbidden) en Amazon S3.

importante

Recomendamos utilizar solo solicitudes ListBuckets paginadas. Las solicitudes ListBuckets no paginadas solo se admiten para las Cuentas de AWS establecidas a la cuota de predeterminada buckets de uso general de 10 000. Si tiene una cuota de buckets de uso general aprobada superior a 10 000, debe enviar solicitudes ListBuckets paginadas para enumerar los buckets de la cuenta. Se rechazarán todas las solicitudes ListBuckets no paginadas para Cuentas de AWS que tengan una cuota de buckets de uso general superior a 10 000.

  1. Inicie sesión en la AWS Management Console y abra la consola de Amazon S3 en https://console.aws.amazon.com/s3/.

  2. En el panel de navegación izquierdo, elija Buckets.

  3. En la pestaña Buckets de uso general, puede ver una lista de los buckets de uso general.

  4. Para buscar buckets por nombre, introduzca un nombre de bucket en el cuadro de búsqueda.

  1. Inicie sesión en la AWS Management Console y abra la consola de Amazon S3 en https://console.aws.amazon.com/s3/.

  2. En el panel de navegación izquierdo, elija Buckets.

  3. En la pestaña Buckets de uso general, puede ver una lista de los buckets de uso general.

  4. Para buscar buckets por nombre, introduzca un nombre de bucket en el cuadro de búsqueda.

Para usar la AWS CLI a fin de generar una lista de buckets de uso general, puedes usar los comandos ls o list-buckets. Los siguientes ejemplos muestran cómo crear una solicitud list-buckets paginada y una solicitud ls no paginada. Para utilizar estos ejemplos, reemplace los marcadores de posición de entrada del usuario.

ejemplo - Enumerar todos los buckets de la cuenta mediante ls (sin paginar)

En el siguiente comando de ejemplo se enumeran los buckets de uso general de la cuenta en una sola llamada no paginada. Esta llamada devuelve una lista de todos los buckets de la cuenta (hasta 10 000 resultados):

$ aws s3 ls

Para obtener más información y ejemplos, consulte Enumerar buckets y objetos.

ejemplo - Enumerar todos los buckets de la cuenta mediante ls (con paginación)

El siguiente comando de ejemplo realiza una o más llamadas paginadas para mostrar todos los grupos de uso general de la cuenta y devuelve 100 buckets por página:

$ aws s3 ls --page-size 100

Para obtener más información y ejemplos, consulte Enumerar buckets y objetos.

ejemplo - Enumerar todos los buckets de la cuenta (con paginación)

En el siguiente ejemplo se proporciona un comando list-buckets para enumerar todos los buckets de uso general de la cuenta. Las opciones --max-items y --page-size limitan el número de buckets de la lista a 100 por página.

$ aws s3api list-buckets / --max-items 100 / --page-size 100

Si el número de elementos de salida (--max-items) es inferior al número total de elementos devueltos por las llamadas a la API subyacente, la salida incluirá un token de continuación especificado por el argumento starting-token que podrá pasar a un comando posterior para recuperar el siguiente conjunto de elementos. En el siguiente ejemplo se muestra cómo utilizar el valor de starting-token devuelto por el ejemplo anterior. Puede especificar el valor de starting-code para recuperar los siguientes 100 buckets.

$ aws s3api list-buckets / --max-items 100 / --page-size 100 / --starting-token eyJNYXJrZXIiOiBudWxsLCAiYm90b190cnVuY2F0ZV9hbW91bnQiOiAxfQ==

ejemplo - Enumerar todos los buckets de una Región de AWS (con paginación)

El siguiente comando de ejemplo usa el parámetro --bucket-region para enumerar hasta 100 buckets en una cuenta que se encuentra en la región us-east-2. No se admiten las solicitudes realizadas a un punto de conexión regional que sea diferente del valor especificado en el parámetro --bucket-region. Por ejemplo, si desea limitar la respuesta a los buckets en us-east-2, debe realizar la solicitud a un punto de conexión en us-east-2.

$ aws s3api list-buckets / --region us-east-2 / --max-items 100 / --page-size 100 / --bucket-region us-east-2

ejemplo - Enumerar todos los buckets que comienzan con un prefijo de nombre de bucket específico (paginado)

El siguiente comando de ejemplo muestra hasta 100 buckets cuyo nombre comienza por el prefijo amzn-s3-demo-bucket.

$ aws s3api list-buckets / --max-items 100 / --page-size 100 / --prefix amzn-s3-demo-bucket

Para usar la AWS CLI a fin de generar una lista de buckets de uso general, puedes usar los comandos ls o list-buckets. Los siguientes ejemplos muestran cómo crear una solicitud list-buckets paginada y una solicitud ls no paginada. Para utilizar estos ejemplos, reemplace los marcadores de posición de entrada del usuario.

ejemplo - Enumerar todos los buckets de la cuenta mediante ls (sin paginar)

En el siguiente comando de ejemplo se enumeran los buckets de uso general de la cuenta en una sola llamada no paginada. Esta llamada devuelve una lista de todos los buckets de la cuenta (hasta 10 000 resultados):

$ aws s3 ls

Para obtener más información y ejemplos, consulte Enumerar buckets y objetos.

ejemplo - Enumerar todos los buckets de la cuenta mediante ls (con paginación)

El siguiente comando de ejemplo realiza una o más llamadas paginadas para mostrar todos los grupos de uso general de la cuenta y devuelve 100 buckets por página:

$ aws s3 ls --page-size 100

Para obtener más información y ejemplos, consulte Enumerar buckets y objetos.

ejemplo - Enumerar todos los buckets de la cuenta (con paginación)

En el siguiente ejemplo se proporciona un comando list-buckets para enumerar todos los buckets de uso general de la cuenta. Las opciones --max-items y --page-size limitan el número de buckets de la lista a 100 por página.

$ aws s3api list-buckets / --max-items 100 / --page-size 100

Si el número de elementos de salida (--max-items) es inferior al número total de elementos devueltos por las llamadas a la API subyacente, la salida incluirá un token de continuación especificado por el argumento starting-token que podrá pasar a un comando posterior para recuperar el siguiente conjunto de elementos. En el siguiente ejemplo se muestra cómo utilizar el valor de starting-token devuelto por el ejemplo anterior. Puede especificar el valor de starting-code para recuperar los siguientes 100 buckets.

$ aws s3api list-buckets / --max-items 100 / --page-size 100 / --starting-token eyJNYXJrZXIiOiBudWxsLCAiYm90b190cnVuY2F0ZV9hbW91bnQiOiAxfQ==

ejemplo - Enumerar todos los buckets de una Región de AWS (con paginación)

El siguiente comando de ejemplo usa el parámetro --bucket-region para enumerar hasta 100 buckets en una cuenta que se encuentra en la región us-east-2. No se admiten las solicitudes realizadas a un punto de conexión regional que sea diferente del valor especificado en el parámetro --bucket-region. Por ejemplo, si desea limitar la respuesta a los buckets en us-east-2, debe realizar la solicitud a un punto de conexión en us-east-2.

$ aws s3api list-buckets / --region us-east-2 / --max-items 100 / --page-size 100 / --bucket-region us-east-2

ejemplo - Enumerar todos los buckets que comienzan con un prefijo de nombre de bucket específico (paginado)

El siguiente comando de ejemplo muestra hasta 100 buckets cuyo nombre comienza por el prefijo amzn-s3-demo-bucket.

$ aws s3api list-buckets / --max-items 100 / --page-size 100 / --prefix amzn-s3-demo-bucket

En los siguientes ejemplos se muestra cómo obtener una lista de buckets de directorio con los SDK de AWS

SDK for Python
ejemplo - Solicitud ListBuckets (paginada)
import boto3 s3 = boto3.client('s3') response = s3.list_buckets(MaxBuckets=100)
ejemplo - Respuesta ListBuckets (paginada)
import boto3 s3 = boto3.client('s3') response = s3.list_buckets(MaxBuckets=1,ContinuationToken="eyJNYXJrZXIiOiBudWxsLCAiYm90b190cnVuY2F0ZV9hbW91bnQiOiAxfQ==EXAMPLE--")
SDK for Java
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.ListBucketsPaginatedRequest; import com.amazonaws.services.s3.model.ListBucketsPaginatedResult; import java.util.List; public class ListBuckets { public static void main(String[] args) { final AmazonS3 s3 = AmazonS3ClientBuilder.standard().withRegion(Regions.DEFAULT_REGION).build(); ListBucketsPaginatedRequest listBucketsPaginatedRequest = new ListBucketsPaginatedRequest().withMaxBuckets(1); ListBucketsPaginatedResult listBucketsPaginatedResult = s3.listBuckets(listBucketsPaginatedRequest); List<Bucket> buckets = listBucketsPaginatedResult.getBuckets(); System.out.println("Your Amazon S3 buckets are:"); for (Bucket b : buckets) { System.out.println("* " + b.getName() + " region: " + b.getRegion()); } System.out.println("continuation token: " + listBucketsPaginatedResult.getContinuationToken()); } }
SDK for Java 2.x
import software.amazon.awssdk.auth.credentials.DefaultCredentialsProvider; import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.s3.S3Client; import software.amazon.awssdk.services.s3.model.Bucket; import software.amazon.awssdk.services.s3.model.ListBucketsRequest; import software.amazon.awssdk.services.s3.model.ListBucketsResponse; import java.util.List; public class ListBuckets { public static void main(String[] args) { // Create an S3 client S3Client s3 = S3Client.builder() .region(Region.US_EAST_1) // Replace with your preferred region .credentialsProvider(DefaultCredentialsProvider.create()) .build(); try { // List buckets ListBucketsRequest listBucketsRequest = ListBucketsRequest.builder() .maxBuckets(10) .build(); ListBucketsResponse listBucketsResponse = s3.listBuckets(listBucketsRequest); List<Bucket> buckets = listBucketsResponse.buckets(); // Print bucket names System.out.println("Your Amazon S3 buckets are:"); for (Bucket bucket : buckets) { System.out.println(bucket.name()); System.out.println(bucket.getBucketRegion()); } } catch (Exception e) { System.err.println("Error listing buckets: " + e.getMessage()); e.printStackTrace(); } finally { // Close the S3 client to release resources s3.close(); } } }
SDK for Go
package main import ( "context" "fmt" "log" "github.com/aws/aws-sdk-go-v2/aws" "github.com/aws/aws-sdk-go-v2/config" "github.com/aws/aws-sdk-go-v2/service/s3" ) func main() { cfg, err := config.LoadDefaultConfig(context.TODO(), config.WithRegion("us-east-2")) if err != nil { log.Fatal(err) } client := s3.NewFromConfig(cfg) maxBuckets := 1000 resp, err := client.ListBuckets(context.TODO(), management portals3.ListBucketsInput{MaxBuckets: aws.Int32(int32(maxBuckets))}) if err != nil { log.Fatal(err) } fmt.Println("S3 Buckets:") for _, bucket := range resp.Buckets { fmt.Println("- Name:", *bucket.Name) fmt.Println("-BucketRegion", *bucket.BucketRegion) } fmt.Println(resp.ContinuationToken == nil) fmt.Println(resp.Prefix == nil) }

En los siguientes ejemplos se muestra cómo obtener una lista de buckets de directorio con los SDK de AWS

SDK for Python
ejemplo - Solicitud ListBuckets (paginada)
import boto3 s3 = boto3.client('s3') response = s3.list_buckets(MaxBuckets=100)
ejemplo - Respuesta ListBuckets (paginada)
import boto3 s3 = boto3.client('s3') response = s3.list_buckets(MaxBuckets=1,ContinuationToken="eyJNYXJrZXIiOiBudWxsLCAiYm90b190cnVuY2F0ZV9hbW91bnQiOiAxfQ==EXAMPLE--")
SDK for Java
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.ListBucketsPaginatedRequest; import com.amazonaws.services.s3.model.ListBucketsPaginatedResult; import java.util.List; public class ListBuckets { public static void main(String[] args) { final AmazonS3 s3 = AmazonS3ClientBuilder.standard().withRegion(Regions.DEFAULT_REGION).build(); ListBucketsPaginatedRequest listBucketsPaginatedRequest = new ListBucketsPaginatedRequest().withMaxBuckets(1); ListBucketsPaginatedResult listBucketsPaginatedResult = s3.listBuckets(listBucketsPaginatedRequest); List<Bucket> buckets = listBucketsPaginatedResult.getBuckets(); System.out.println("Your Amazon S3 buckets are:"); for (Bucket b : buckets) { System.out.println("* " + b.getName() + " region: " + b.getRegion()); } System.out.println("continuation token: " + listBucketsPaginatedResult.getContinuationToken()); } }
SDK for Java 2.x
import software.amazon.awssdk.auth.credentials.DefaultCredentialsProvider; import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.s3.S3Client; import software.amazon.awssdk.services.s3.model.Bucket; import software.amazon.awssdk.services.s3.model.ListBucketsRequest; import software.amazon.awssdk.services.s3.model.ListBucketsResponse; import java.util.List; public class ListBuckets { public static void main(String[] args) { // Create an S3 client S3Client s3 = S3Client.builder() .region(Region.US_EAST_1) // Replace with your preferred region .credentialsProvider(DefaultCredentialsProvider.create()) .build(); try { // List buckets ListBucketsRequest listBucketsRequest = ListBucketsRequest.builder() .maxBuckets(10) .build(); ListBucketsResponse listBucketsResponse = s3.listBuckets(listBucketsRequest); List<Bucket> buckets = listBucketsResponse.buckets(); // Print bucket names System.out.println("Your Amazon S3 buckets are:"); for (Bucket bucket : buckets) { System.out.println(bucket.name()); System.out.println(bucket.getBucketRegion()); } } catch (Exception e) { System.err.println("Error listing buckets: " + e.getMessage()); e.printStackTrace(); } finally { // Close the S3 client to release resources s3.close(); } } }
SDK for Go
package main import ( "context" "fmt" "log" "github.com/aws/aws-sdk-go-v2/aws" "github.com/aws/aws-sdk-go-v2/config" "github.com/aws/aws-sdk-go-v2/service/s3" ) func main() { cfg, err := config.LoadDefaultConfig(context.TODO(), config.WithRegion("us-east-2")) if err != nil { log.Fatal(err) } client := s3.NewFromConfig(cfg) maxBuckets := 1000 resp, err := client.ListBuckets(context.TODO(), management portals3.ListBucketsInput{MaxBuckets: aws.Int32(int32(maxBuckets))}) if err != nil { log.Fatal(err) } fmt.Println("S3 Buckets:") for _, bucket := range resp.Buckets { fmt.Println("- Name:", *bucket.Name) fmt.Println("-BucketRegion", *bucket.BucketRegion) } fmt.Println(resp.ContinuationToken == nil) fmt.Println(resp.Prefix == nil) }
ejemplo - Solicitud ListBuckets (paginada)
import boto3 s3 = boto3.client('s3') response = s3.list_buckets(MaxBuckets=100)
ejemplo - Respuesta ListBuckets (paginada)
import boto3 s3 = boto3.client('s3') response = s3.list_buckets(MaxBuckets=1,ContinuationToken="eyJNYXJrZXIiOiBudWxsLCAiYm90b190cnVuY2F0ZV9hbW91bnQiOiAxfQ==EXAMPLE--")
PrivacidadTérminos del sitioPreferencias de cookies
© 2025, Amazon Web Services, Inc o sus afiliados. Todos los derechos reservados.