特定の修復方法に関する問題
SetSSLBucketPolicy が AccessDenied エラーで失敗する
関連コントロール: AWS FSBP v1.0.0 S3.5、PCI v3.2.1 PCI.S3.5、CIS v1.4.0 2.1.2、SC v2.0.0 S3.5
問題: SetSSLBucketPolicy が AccessDenied エラーで失敗します。
PutBucketPolicy オペレーションをコールするとエラー (AccessDenied) が発生した: Access Denied
ブロックパブリックアクセス設定がバケットで有効になっている場合、パブリックアクセスを許可するステートメントを含むバケットポリシーを設定しようとすると、このエラーで失敗します。このような状態にするには、そのようなステートメントを含むバケットポリシーを設定し、そのバケットのパブリックアクセスブロックを有効にします。
ConfigureS3BucketPublicAccessBlock (関連コントロール: AWS FSBP v1.0.0 S3.2、PCI v3.2.1 PCI.S3.2、CIS v1.4.0 2.1.5.2、SC v2.0.0 S3.2) の修復でも、バケットポリシーを変更せずにパブリックアクセスブロック設定を行うため、バケットをこの状態にすることができます。
SetSSLBucketPolicy は、SSL を使用しないリクエストを拒否するステートメントをバケットポリシーに追加します。ポリシー内の他のステートメントは修正されないため、パブリックアクセスを許可するステートメントがある場合は、それらのステートメントがまだ含まれている修正されたバケットポリシーを追加しようとしても、修復は失敗します。
解決策: バケットのパブリックアクセスをブロックする設定と矛盾するパブリックアクセスを許可するステートメントを削除するようにバケットポリシーを修正します。