By using AWS re:Post, you agree to the Terms of Use
/Cli "Unable to locate credentials" on EC2 instance/

Cli "Unable to locate credentials" on EC2 instance


I'm trying to use the AWS CLI tool on an EC2 instance running Amazon Linux.

I configured it by using the "aws configure" command to set up an access key and secret key. When I run it directly from the linux prompt, it works fine.

However, I need to run it as part of a script that is executed nightly with cron. I put a link to my script in cron.daily. The script runs, but when it reaches the aws command, it fails with the error "Unable to locate credentials".

I suspect that cron must be running the script under some user other than the default ec2-user, but I can't figure out which user, or how to configure the credentials for that user.

I tried typing "sudo su" and then re-issuing the commands to set the credentials, but that did not fix the problem.

Thanks, Frank

1 Answers

I suspect you're on the right path - the credentials are set up for a particular user and the cron job is executing as another user; or in some way cannot locate the file where the credentials are stored.

My recommendation is not to use static credentials. Instead, create a role for the instance - that way you don't have to worry about rotating credentials or even storing them on the instance.

answered 13 days ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions