AWS 第38回『クラウドデータの砦!AWS S3でランサムウェアをシャットアウト』

こんにちは。DIS AWS推進チームです。

今回コラムは第36回の AWS WAF に引き続き、セキュリティ対策に役立つ AWS S3 のバージョニングとオブジェクトロック機能のご紹介です。バージョニングは、同じオブジェクト名で新しいデータをアップロードしても、過去のバージョンが自動的に保存され、必要に応じて復元できる機能です。オブジェクトロックは、特定のオブジェクトに対して削除や上書きを防ぐことができ、指定した期間または無期限に保護することが可能です。これらの機能は、世界中で多くの被害をもたらすランサムウェア対策としても有効で、AWS S3単独で構成可能な機能です。 このコラム参考にぜひご活用いただければと思います。また第27回担当者コラムではAWS S3サービスの基本情報をご紹介しておりますので、あわせてご活用ください!

バージョニングとは

バージョニングとは、同じバケット内でオブジェクトの複数のバージョンを管理する機能です。

メリット

<誤操作によるオブジェクトの削除/上書きした場合にも、復元が可能>

  • 削除されても、オブジェクトが削除されず、削除マーカーが付与され削除マーカーが最新のオブジェクトのバージョンになる
  • 上書きされると、上書きしたものが最新のオブジェクトのバージョンになる

注意

<オブジェクトのバージョン毎に課金が発生する>

  • バージョンが5つになった場合は、5つ分のオブジェクトが課金対象になる
  • バージョン1/2/3/4/5がそれぞれ10/20/30/40/50KBの場合は、合計150KBが課金対象です

※各バージョンは以前のバージョンとの増分ではなく、別のオブジェクトとして管理する為

オブジェクトロックとは

ご紹介したバージョニングされたバケットにのみ適用ができるWrite Once Read Many(WORM)機能で、削除/上書きを一定期間/無期限に制限できます。

メリット

<オブジェクト単位で一定の期間、上書き/削除を防止する >

  • 権限のないユーザーは、上書き/削除が不可
  • リーガルホールドを設定することで、保持期間が終了しても上書き/削除が不可

注意

<オブジェクトロックは、バケット作成時に設定し、作成後の有効可/無効化は不可>
・保持期間の有効可/無効化/変更やリテンションモードの変更は可能

<オブジェクトロックの有効可にはバケットのバージョニングが必須>
・バージョニングはオブジェクトロックが裕子になっているバケットでは無効化不可

まずリテンションモードから紹介していきます。
リテンションモードは、期限/権限を元にオブジェクトをロックする機能になります。
また、その中で2つのモードに分かれています。

ガバナンスモード

特定の権限(s3:BypassGovernanceRetention)を持ったユーザーであれば、上書き/削除/設定変更が可能
コンプライアンスモードのテストとしての利用が可能

コンプライアンスモード

いかなるユーザーも上書き/削除/設定変更が不可

続いて有効期間にも種類があるのでご紹介していきます。

保持期間

  1. オブジェクトのバージョンIDごとに適用
  2. 保持期間内は、ガバナンスモード/コンプライアンスモードが適用され、オブジェクトの上書き/削除は不可
  3. 保持期間終了後、リーガルホールドを適用しない限り、オブジェクトの上書き/削除が可能

リーガルホールド

  1. オブジェクトの上書き/削除は不可
  2. 保持期間とは別に設定され、有効期間は無し
  3. 特定の権限を持ったユーザーであれば自由に適用/解除が可能
  4. オブジェクトロックが有効になっているバケットに対して設定可能だが、リテンションモードや保持期間とは別の設定
  5. 保持期間中はリテンションモードが適用され、保持期間終了後はリーガルホールドが適用

保持期間とリーガルホールドの関係

データ保護機能の適用

図のように、バケット作成時にバージョニングとオブジェクトロックを有効にする必要があります。そのあとに、リテンションモードや保持期間を設定するとデータの編集削除ができなくなります。リーガルホールドを設定しておくことで、保持期間が終了後もデータの編集削除はできない状態を維持することができます。特定の権限を持ったユーザーがリーガルホールド解除するまではWORMが適用されます。

ユースケース

  • データが変更される事なく安全な保管が求められる診療録(医師法で5年間保存しなければならない規定有り)
  • 監査ログや取引記録などの重要なビジネスデータ
  • 重要なビジネスファイルや顧客データの保護

まとめ

今回は、バージョニングとオブジェクトロックを紹介いたしました。リテンションモードや保持期間などがあり、要件によって設定することで柔軟に対応できるのではないかと思います。バケットごとに設定が可能なので重要なデータのみを設定することでストレージコストの削減も可能です。また、ランサムウェアにフォーカスを当てましたが、バージョニングは誤操作してしまった際の復元にも有効です。
クラウドに大切なデータを保存することに抵抗がある方も多いですが、今回紹介したような対策をすることで少しでも不安を取り除ければと思います。

参考URL

最後までお読みくださりありがとうございました。

--Let's Enjoy Amazon Web Services!

マルチクラウドの記事