Downloading private S3 bucket from non-AWS machine

hey there,
I want to download s3 bucket which doesnt have public access - i want to download from a non aws machine - how can i do it without creating an IAM user?

AWS CLI? it can also use Identity Center (SSO) and/or AWS Profiles

I think the first question should probably be, how many objects and what is the size of all the objects that you are trying to download?

a couple of files - less than 20M

ok, so then download from the console?

i want a way for the non aws instances to automatically download using aws s3 cp or anything else using ansible playbooks - is there a way to do it without creating iam user

Is it part of a deployment? Meaning, there is an operator doing this? Or it needs to be automatic anytime?

i plan to do it via aws system manager

aws system manager - ansible playbook

so the AWS Systems Manager would be authenticated somehow, right?

I have not worked in aws system manager - but yes i think

I would expect that you could use the same role/authorization to allow read access to the S3 bucket

Without creating IAM user credentials, you could use IAM Roles Anywhere, or possibly create pre-signeds link on the AWS side and pass those to your Ansible machines

iam roles needs to be attached to the non ec2 instance - how can i do that

https://aws.amazon.com/en/blogs/security/extend-aws-iam-roles-to-workloads-outside-of-aws-with-iam-roles-anywhere/

I haven’t used it myself so far