【レポート】Security Best Practices on S3 #AWSSummit

2019.06.12

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは、城岸です。

2019/6/12(水)~14(金) の期間で開催されている、AWS Summit 2019 Tokyo からセッションをレポートします。 本記事は「Security Best Practices on S3」のセッションレポートになります。

セッション概要

スピーカー:焼尾 徹氏 (アマゾン ウェブ サービス ジャパン株式会社) セッション名:Security Best Practices on S3

AWSでデータを保管するのに最も基本となるストレージ Amazon Simple Storage Service (S3)を利用するにあたって、AWSで最優先事項となるセキュリティについてどのように考えるか、基本的なところもおさらいしながら紹介します。

レポート

アジェンダ

  • Amazon S3にデータが格納されるシーン
  • Amazon S3をセキュアに活用するにあたっての基本要素
  • Amazon S3への認証
  • Amazon S3のセキュリティとそのベストプラクティス

Amazon S3にデータが格納されるシーン

  • AWSのサービスを利用する際にはAmazon S3を間接的/直接的に利用している
  • ユースケース
  • データの保護、移行(バックアップ、サーバーマイグレーションなど
  • データレイク(機械学習、IoTなど
  • Webサービスのコンテンツオフロード(写真管理サイト、ECサイトなど

Amazon S3をセキュアに活用するにあたっての基本要素

  • 最小権限の原則
  • アクセスは最小限のセットで開始する、必要に応じてアクセス許可を追加
  • 適切なアクセスを管理

  • セキュアに利用するにあたって理解しておくべきAWSサービス

  • AWS Identity and Access Management (IAM)
  • Amazon Virtual Private Cloud (Amazon VPC)
  • Amazon Simple Storage Service(Amazon S3)

  • IAMで「誰が、どのような操作(Get、Putなど)を、どのリソース(S3のXXオプジェクトなど)に対し、どのような条件のときに」を制御できる

  • S3に対しての権限制御

  • IAMユーザーポリシー(IAMユーザーに対して付与
  • S3バケットポリシー(バケットに対して付与

  • S3に対するアクセス経路

  • デフォルトではインターネットを経由したアクセスとなる
  • AWS内部のネットワークを通してS3にアクセスするためにはVPCエンドポイントを利用する
  • VPC内リソースは直接VPCエンドポイントにアクセス
  • オンプレからはVPC内のプロキシサーバー経由でVPCエンドポイントにアクセス

Amazon S3への認証

  • リクエストを許可する方法は以下の4つ、許可/拒否がある場合は拒否が優先される
  • ポリシーの適用
  • ユーザーチェック
  • バケットチェック
  • オブジェクトチェック

  • アカウントを跨いだアクセスを実現するには以下の2通りの方法がある

  • バケットポリシーとIAMユーザーポリシーを利用する
  • AssumeRoleを使ってアクセスする

Amazon S3のセキュリティとそのベストプラクティス

  • 偶発的な情報の開示
  • IAMによる適切な権限管理
  • VPCのネットワークの理解
  • BlockPubliAcsess
  • 暗号化
  • サーバーサイド暗号化(KMSの鍵を利用すればS3への権限とKMSの権限がなければオブジェクトを復元することができない
  • クライアントサイド暗号化(アプリ側で暗号化

  • データの不整合

  • IAMによる適切な権限管理
  • データの整合性チェック
  • バージョニング
  • Object Lock(Write Once Read many

  • 過失による削除

  • バージョニング
  • Object Lock(Write Once Read many
  • MFA Delete

  • 証跡の取得、ユーザー行動の変化を観察

  • Cloud Trailの利用(アプリケーション用のバケットとTrailログのバケットは分ける
  • Macieの利用
  • GardDutyと類似するサービス(S3に対する操作で怪しいところを検知、機微な情報がないかを検知、イベント発火

  • インフラストラクチャの可溶性

  • S3の耐久性
  • ストレージクラスの理解
  • クロスリージョンレプリケーション

まとめ

S3を適切に扱うための要点がまとめられたセッションでした。

俺のS3は大丈夫か?と思われる方はこのセッションを参考にS3の設定をチェックしてみてはいかがでしょうか。