問題
S3のバケットポリシーで GetObject を定義した際、『Action does not apply to any resource(s) in statement』
というエラーが表示されて失敗する。
【エラー画面】
【バケットポリシー 修正前】
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "PublicRead",
"Effect": "Allow",
"Principal": "*",
"Action": [
"s3:GetObject",
"s3:GetObjectVersion"
],
"Resource": "arn:aws:s3:::【バケット名】"
}
]
}
解決方法
Resource部分のバケットの指定方法が間違っていました。
バケット配下のオブジェクトに対応するように部分修正をします
"Resource": "arn:aws:s3:::{mybucket}/*"
【バケットポリシー 修正後】
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "PublicRead",
"Effect": "Allow",
"Principal": "*",
"Action": [
"s3:GetObject",
"s3:GetObjectVersion"
],
"Resource": "arn:aws:s3:::【バケット名】/*"
}
]
}
さいごに
根本的な問題は書き慣れていないことですが、こういったことを踏まえながら手を動かしていきたいと思います。