ヤマムギ

growing hard days.

*

S3オブジェクトロックを試しました

   

S3オブジェクトロックが必要になる要件に今のところ、出会ってないのでまだ設定したことがありません。
なので試しておきます。

バケットの作成

現時点で既存のバケットではオブジェクトロックを有効にできません。
ただし、「Amazon S3は現在、バケット作成後のオブジェクトロックの有効化をサポートしていません。このバケットのオブジェクトロックを有効にするには、カスタマーサポートに連絡してください」と記載があるので、サポートに連絡したらできるのかもしれません。
できるのであれば、そのうちサポートに連絡しなくてもできるようになるかもですね。

今回は新規でバケットを作成して有効化しました。

オブジェクトロックを有効にすると、自動的にバージョニングも有効になりました。
そしてバージョニングは停止することはできない。と。

2つのモードがありますのでその比較をするために2つのオブジェクトをアップロードしました。

コンプライアンスモード

1つはコンプライアンスモードにしました。
ルートユーザーであっても、保持期間内は、削除、上書きできないモードです。
頼もしいですね。
まさに「コンプライアンス要件を満たす」オブジェクトになりました。

とりあえずオブジェクトを選択して削除してみました。
できました。当然です。

バージョニングが有効なので、オブジェクトの実体が削除されたのではなく、新しいバージョンとして削除マーカーが作成されました。

次はバージョン指定して削除してみます。

アクションが拒否されました。
また、1/5になったら削除してしまおうと思います。

ガバナンスモード

s3:BypassGovernanceRetention
s3:GetBucketObjectLockConfiguration

保持期間内であっても上記のアクションが許可されたIAMユーザーなら削除、上書きできます。
ということで、特定ユーザー以外に対してロックされた、「ガバナンスの効いた」オブジェクトにすることができました。

では、こちらは権限のあるユーザーでバージョンを指定して削除してみます。

正常に削除できました。

保持期間内には削除する必要が一切ない場合は、コンプライアンスモードが確実で安全ですね。


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS ,

ad

ad

  関連記事

AWS複数アカウントのリソースをLambda(Python)から一括操作したくて

AWSの複数アカウント(30ちょい)のリソースをまとめて自動処理したくて。 とり …

CodeCommitリポジトリの復号化のCloudTrailログ確認

ユーザーガイドAWS Key Management Service と AWS …

S3 過去のオブジェクトバージョンをコピーしてロールバックしました

バージョニングを有効にしているS3バケットで、オブジェクトを以前のバージョンに戻 …

特定のIAMロールをLambda(Python)で削除する

やりたいこと 特定アカウントの特定の名前が含まれるIAMロールをまとめて削除した …

AWS Glueチュートリアル

AWS Glueのマネジメントコンソールの左ペインの一番下にチュートリアルがあり …

ads.txtをS3に配置してCloudFrontで設定する

ads.txtのダウンロード ads.txt設置してねってメールが来てました。 …

EC2インスタンスの起動で、–cli-input-jsonと–cli-input-yamlを使いました

AWS CloudShellから実行しました。 JSON実行 [crayon-6 …

API GatewayからLambdaを介さずにSNSトピックへ送信

やりたいこと APIリクエストをまずLambdaで受けて、SNSトピックへ送信す …

EC2ハードウェア専有インスタンス(Dedicated Instances)を起動して請求書を確認してみました

EC2ハードウェア専有インスタンスのサイトには、次の料金と表記されています。 * …

AWS Systems Managerパラメータストアで「Parameter name must be a fully qualified name.」

パラメータストアでパラメータ階層を作成しようとして、パラメータ名に例えば「wor …