Create a bucket
While creating the bucket the permissions settings are misleading, so just leave it all default.
Take note of the bucket’s ARN.
Create a policy
Just edit the json.
Create IAM user
Directly and the policy you just created.
Public read bucket
If you want to allow public to read we need to apply the following policy on the bucket.