2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

S3でアクセス不可になった時の解消方法

Last updated at Posted at 2022-02-20

S3 でダッシュボードで ACL が見れなくなったり、そのオブジェクトがアクセス不能になったことがあり、その解消方法を記録しておく。

原因

どうやら
別アカウントのIDプールでS3バケットにアップロードしたファイルの所有者が別アカウントになっておりアクセス不可になっていた。

対応概要

別アカウントから bucket-owner-full-contgorl の acl を付加してアクセスできるようになったかも...

コピーすると所有者が変わるが、--metadata で何か変更しないとコピーできなかった
参考:Amazon S3 から 403: Access Denied エラーをトラブルシューティングする方法とは?

作業概要

具体的な作業履歴。

1. 現状確認

aws s3api list-objects --bucket {バケット名} --prefix {キー名プリフィックス} --profile {プロファイル名}

で所有者を確認してS3を使っているAWSアカウントとは異なるAWSアカウントが所有者であることを確認した。

2. アクセス許可付与

aws s3api put-object-acl --bucket {バケット名} --key {オブジェクトキー名} --acl bucket-owner-full-control --profile {プロファイル名}

で別アカウントでもアクセス許可を与える。

3. コピーして所有者変更

aws s3 cp s3://{バケット名}/{キー名} s3://{バケット名}/{キー名} --profile {プロファイル} --cache-control "max-age=30" --metadata "Version=1"

同じファイルにコピー。とりあえず --metadata "Version=1" で metadata を変更。

2
2
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?