Saya benar-benar menggeliat di AWS mencoba mencari tahu apa yang saya lewatkan di sini. Saya ingin membuatnya agar pengguna IAM dapat mengunduh file dari bucket S3 - tanpa hanya membuat file tersebut sepenuhnya publik - tetapi saya mendapatkan akses ditolak. Jika ada yang bisa mengetahui apa yang salah, saya akan terpacu.
Apa yang telah saya lakukan sejauh ini:
- Dibuat pengguna yang disebut pengguna-saya (misalnya)
- Kunci akses yang dibuat untuk pengguna dan meletakkannya di ~ / .aws pada instance EC2
- Membuat kebijakan bucket yang saya harapkan memberi akses untuk pengguna saya
- Jalankan perintah
aws s3 cp --profile my-user s3://my-bucket/thing.zip .
Kebijakan ember:
{
"Id": "Policy1384791162970",
"Statement": [
{
"Sid": "Stmt1384791151633",
"Action": [
"s3:GetObject"
],
"Effect": "Allow",
"Resource": "arn:aws:s3:::my-bucket/*",
"Principal": {
"AWS": "arn:aws:iam::111122223333:user/my-user"
}
}
]
}
Hasilnya adalah A client error (AccessDenied) occurred: Access Denied
meskipun saya dapat mengunduh menggunakan perintah yang sama dan kunci akses default (akun root?).
Saya sudah mencoba menambahkan kebijakan pengguna juga. Meskipun saya tidak tahu mengapa itu perlu, saya pikir itu tidak ada salahnya, jadi saya lampirkan ini pada pengguna saya.
{
"Statement": [
{
"Sid": "Stmt1384889624746",
"Action": "s3:*",
"Effect": "Allow",
"Resource": "arn:aws:s3:::my-bucket/*"
}
]
}
Hasil yang sama.