Conexiones a Bucket s3
Last updated
Last updated
Cuando ejecutamos aws s3 ls s3://subdomain.domain
sin configurar credenciales, AWS CLI sigue su flujo estándar de autenticación:
1️⃣ Primero, busca credenciales en archivos de configuración (~/.aws/credentials
y ~/.aws/config
)
2️⃣ Si no las encuentra, busca en variables de entorno (AWS_ACCESS_KEY_ID
, AWS_SECRET_ACCESS_KEY
)
3️⃣ Si aún no encuentra credenciales, devuelve el error:
"Unable to locate credentials. You can configure credentials by running aws configure".
Aunque el bucket fuera público, AWS CLI requiere que haya credenciales configuradas para poder operar correctamente.
📌 Cuando configuramos credenciales arbitrarias (temp, temp, temp
), AWS CLI deja de buscar y asume que tenía credenciales válidas, permitiéndonos acceder.
Esto se debe a que AWS CLI siempre intenta autenticar las solicitudes, incluso cuando el recurso es público.
Aunque en teoría podrías acceder a S3 sin credenciales, AWS CLI no tiene un "modo anónimo" por defecto.
AWS CLI intenta firmar las solicitudes, aunque el servidor no lo requiera.
Si quieres forzar a AWS CLI a no usar credenciales, podrías intentar con:
AWS_ACCESS_KEY_ID=none AWS_SECRET_ACCESS_KEY=none aws --endpoint=http://s3.subdomain.domain s3 ls s3://subdomain.domain
Esto simula credenciales vacías, pero engaña a AWS CLI para que siga funcionando.
Para ver un ejemplo practicó ver: