Amazon Simple Storage Service (Amazon S3) バケットへのすべてのユーザーのアクセスを拒否するようにバケットポリシーを誤って設定しました。
解決方法
バケットポリシーの条件が満たされない
バケットポリシーの条件が満たされない場合でも、Amazon S3 バケットへのアクセスを回復できます。バケットへのアクセスを回復するには、AWS アカウントのルートユーザーとして Amazon S3 コンソールにサインインします。次に、バケットポリシーを削除します。
**重要:**ルートユーザーを日常業務に使用しないでください。これらの認証情報の使用は、ルートユーザーとしてサインインする必要があるタスクのみに制限してください。ルート認証情報は、完全な管理者アクセス権を持つ AWS Identity Access Management (IAM) ユーザーまたはロールとは異なります。許可または拒否の権限を持つ IAM ポリシーをルートアカウントにアタッチすることはできません。
- アカウントルートユーザーとして AWS マネジメントコンソールにサインインします。
- Amazon S3 コンソールを開きます。
- 正しく設定されていないバケットに移動します。
- [権限] タブを選択します。
- [バケットポリシー] を選択します。
- [削除] を選択します。
- バケットポリシーの削除ページで、テキストフィールドに「delete」と入力して、バケットポリシーの削除を確認します。
- [削除] を選択します。
- AWS マネジメントコンソールからサインアウトします。
- (オプション) アカウント管理者がルートユーザーのパスワードをローテーションするのがベストプラクティスです。
ルートユーザーがバケットポリシーを削除すると、バケットアクセス権を持つ IAM ユーザーは、正しい権限で新しいバケットポリシーを適用できます。詳細については、「バケットポリシーの例」 と「Amazon S3 コンソールを使用してバケットポリシーを追加する」を参照してください。
バケットポリシーの条件を満たすことができます
ルートユーザーアカウントを使用できない場合は、バケットポリシーの条件を満たしていればポリシーを削除できます。
バケットへのアクセスを回復するには、次の手順を実行してください。
- バケットポリシーを確認して、設定されている条件を満たすことができるかを判断してください。
- バケットポリシーの条件を満たすための手順を実行ください。
- アクセスを回復したら、バケットポリシーを更新して、今後のロックアウトを防ぐために制限条件を削除または変更します。
- 変更をテストし、アクセス制御のレベルが正しいことを確認します。
ロックアウト前にバケットに適用されたポリシーが不明な場合は、AWS CloudTrail を使用してイベントを確認してください。CloudTrail を使用してアカウントの最近の PutBucketPolicy アクションを検索するには、以下の手順を実行してください。
- CloudTrail コンソールを開きます。
- ナビゲーションペインで、[イベント履歴] を選択します。
- イベント履歴ページの [検索属性] で、[イベント名] を選択します。
- [イベント名を入力] フィールドで、[PutBucketPolicy] を選択し、Enter キーを押します。
- 最新のイベントを選択し、イベントの詳細を確認します。イベントには、リクエストとレスポンスのパラメータが表示されます。これには、バケット名と完全なバケットポリシーが含まれます。