Cuando intento usar la Interfaz de la línea de comandos de AWS (AWS CLI) para acceder a mi bucket de Amazon Simple Storage Service (Amazon S3), aparece un error.
Resolución
El error “Unable to locate credentials” significa que el servicio de AWS con el que interactúa no puede encontrar las credenciales para autenticar las llamadas a la API de AWS. Por ejemplo, puede tratarse de un servicio de AWS, como Amazon S3. Para resolver este problema, asegúrate de que tus credenciales de AWS estén configuradas correctamente en AWS CLI.
Nota: Si se muestran errores al ejecutar comandos de la AWS CLI, consulta Errores de solución de problemas de la AWS CLI. Además, asegúrate de utilizar la versión más reciente de AWS CLI.
Para comprobar si la AWS CLI está configurada con credenciales, ejecuta el siguiente comando:
$ aws configure list
Si las credenciales están configuradas en el archivo de configuración o en el archivo de credenciales, el comando devuelve una respuesta similar a la siguiente:
Name Value Type Location
---- ----- ---- --------
profile <not set> None None
access_key ****************ABCD config_file ~/.aws/config
secret_key ****************ABCD config_file ~/.aws/config
region us-west-2 env AWS_DEFAULT_REGION
Si las credenciales están configuradas con variables de entorno, el comando devuelve una respuesta similar a la siguiente:
Name Value Type Location
---- ----- ---- --------
profile <not set> None None
access_key ****************N36N env
secret_key ****************cxxy env
region <not set> None None
Si las credenciales están configuradas en un perfil de instancia, el comando devuelve una respuesta similar a la siguiente:
Name Value Type Location
---- ----- ---- --------
profile <not set> None None
access_key ****************YVEQ iam-role
secret_key ****************2a9N iam-role
region <not set> None None
Si no hay credenciales establecidas, el comando devuelve el siguiente resultado:
Name Value Type Location
---- ----- ---- --------
profile <not set> None None
access_key <not set> None None
secret_key <not set> None None
region <not set> None None
Revisa la respuesta para comprobar si faltan credenciales o si las credenciales almacenadas son incorrectas.
Es posible que haya un perfil de instancia adjunto a su instancia de Amazon EC2, pero que sigas sin poder cargar las credenciales debido a problemas con AssumeRole en la política de confianza configurada. Para obtener más información, consulta Recuperar los metadatos de la instancia.
Si el comando devuelve el siguiente resultado al recuperar los metadatos de la instancia, el AssumeRole de la política de confianza está restringido:
{
"Code" : "AssumeRoleUnauthorizedAccess",
"Message" : "EC2 cannot assume the role EXAMPLEROLE. Please see documentation at https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_iam-ec2.html#troubleshoot_iam-ec2_errors-info-doc.",
"LastUpdated" : "2024-04-03T09:49:40Z"
}
Revisa la respuesta para comprobar si faltan credenciales, si la política de confianza de IAM no está configurada correctamente o si las credenciales almacenadas son incorrectas. Para obtener más información, consulta Roles de IAM para Amazon EC2.