type
status
date
slug
summary
tags
category
icon
password
 

理論

S3アクセス制御とログ管理のベストプラクティス


1. S3へのユーザーごとのアクセス制御

  • IAM条件キーの活用:
    • aws:PrincipalTag/userNameを利用して、ユーザーごとにプレフィックス(フォルダ)を分離。
    • 例: ユーザー「Alice」にはbucket/Alice/以下のみアクセスを許可。
  • IAM Identity Center(旧AWS SSO)の統合:
    • IAM Identity Centerのカスタム権限セットで、自動的にユーザー名タグを適用し、動的なアクセス制御を実現。

2. アクセスログの収集と可視化

  • AWS CloudTrail:
    • S3データイベントを有効化することで、どのユーザーがどのオブジェクトにアクセスしたかを詳細に記録。
    • 例: GetObject(読み取り)やPutObject(書き込み)の操作ログ。
  • Amazon Athenaでのログ解析:
    • CloudTrailログをS3に保存し、Athenaを使って簡単にクエリを実行。
    • ユーザー別のアクセス状況や月次レポートを自動生成可能。

3. ベストプラクティスまとめ

  1. ユーザーごとにアクセスを分離: IAM条件キーでS3プレフィックスを制御。
  1. ログ収集と監査: CloudTrailでデータイベントを記録し、Athenaでレポート化。
  1. 最小権限の原則: 必要最低限のアクセス権限のみを付与。
これらを組み合わせることで、安全で効率的なデータ管理とログ監査が可能です。

実践

一問道場

質問 #510

ある企業が、データサイエンティストが仕事関連の文書を保存できる単一のAmazon S3バケットを作成したいと考えています。この企業はAWS IAM Identity Center(旧AWS SSO)を使用してすべてのユーザーを認証しています。また、データサイエンティスト用のグループが作成されています。
この企業は以下を実現したいと考えています:
  1. データサイエンティストが自分の作業にのみアクセスできるようにすること。
  1. 各ユーザーがどの文書にアクセスしたかを示す月次レポートを作成すること。
これらの要件を満たすためには、どの手順の組み合わせが適切ですか?(2つ選択してください

選択肢
A. カスタムIAM Identity Center権限セットを作成し、データサイエンティストに自分のユーザー名タグ(aws:PrincipalTag/userName)に一致するS3バケットプレフィックスへのアクセス権限を付与します。ポリシーで条件を使用し、パスを「aws:PrincipalTag/userName/*」に制限します。
B. データサイエンティストグループ用のIAM Identity Centerロールを作成し、そのロールにAmazon S3の読み取りアクセスおよび書き込みアクセスを付与します。また、IAM Identity Centerロールへのアクセスを許可するS3バケットポリシーを追加します。
C. AWS CloudTrailを設定してS3データイベントをログに記録し、ログをS3バケットに配信します。Amazon Athenaを使用して、Amazon S3に保存されたCloudTrailログにクエリを実行し、レポートを生成します。
D. AWS CloudTrailを設定してS3管理イベントをCloudWatchに記録します。Amazon AthenaのCloudWatchコネクタを使用してログにクエリを実行し、レポートを生成します。
E. S3アクセスログをEMRファイルシステム(EMRFS)に有効化します。Amazon S3 Selectを使用してログにクエリを実行し、レポートを生成します。

解説

この問題では、以下の2つの要件を満たす必要があります:
  1. データサイエンティストごとに独立したアクセス権
      • 各データサイエンティストが自分のプレフィックス(パス)にのみアクセスできるようにする。
      • これにより、他のユーザーのデータを保護できる。
  1. アクセスログの収集とレポート作成
      • どのユーザーがどの文書にアクセスしたかを記録し、月次レポートとして確認できるようにする。
以下に各選択肢の詳細な分析を示します。

選択肢の分析

A. カスタムIAM Identity Center権限セットでアクセス制御

  • 解説: IAM Identity Centerのカスタム権限セットを使用し、データサイエンティストに「ユーザー名に基づくプレフィックス」のみアクセス可能なポリシーを設定する方法です。IAMの条件キーaws:PrincipalTag/userNameを使用して、アクセスをユーザー名タグで制限することができます。
    • 例:
      • ユーザー「Alice」は「s3://bucket/Alice/」以下にのみアクセス可能。
      • ユーザー「Bob」は「s3://bucket/Bob/」以下にのみアクセス可能。
    • メリット: 各ユーザーが他のユーザーのデータにアクセスできなくなり、要件を満たします。
  • 評価: 正解

B. IAM Identity CenterロールとS3バケットポリシーでアクセス制御

  • 解説: IAM Identity Centerロールをグループに付与し、Amazon S3の読み取り/書き込みアクセス権を付与する方法です。ただし、この方法では全てのデータサイエンティストがS3バケット全体にアクセス可能になります。他のユーザーのデータにアクセスできてしまうため、要件に反します。
  • 評価: 不正解

C. AWS CloudTrailとAthenaでログ収集・レポート生成

  • 解説: AWS CloudTrailを使用してS3のデータイベント(データレベルの操作)を記録し、そのログをAthenaでクエリする方法です。CloudTrailは、誰がどのオブジェクトにアクセスしたか(GetObjectやPutObjectなど)を詳細に記録できます。Athenaを使用することで、簡単に月次レポートを生成可能です。
  • 評価: 正解

D. CloudTrail管理イベントをCloudWatchでクエリ

  • 解説: S3管理イベント(バケット作成や削除など)をCloudTrailで記録し、CloudWatchを介してAthenaでクエリする方法です。しかし、この方法は「データイベント」ではなく「管理イベント」のみを記録するため、特定のオブジェクトへのアクセス(GetObjectやPutObject)は記録されません。月次レポート要件を満たせません。
  • 評価: 不正解

E. S3アクセスログとS3 Selectでレポート生成

  • 解説: S3アクセスログをEMRFSに保存し、S3 Selectを使用してログをクエリする方法です。ただし、S3アクセスログはCloudTrailと比べて粒度が粗く、アクセス者(IAMユーザーやロール)を特定するのが難しい場合があります。また、S3 Selectは複雑なクエリ処理に不向きです。
  • 評価: 不正解

正解: A, C


解決策の流れ

  1. A: カスタムIAM Identity Center権限セット
      • 各データサイエンティストが、自分のS3プレフィックスにのみアクセス可能になるよう設定。
      • aws:PrincipalTag/userName条件キーを使用。
  1. C: AWS CloudTrailとAthenaでのレポート作成
      • CloudTrailでS3データイベントをログに記録し、Athenaでクエリを実行して、アクセスログをレポート化。
      • 誰がどのデータにアクセスしたかを詳細に追跡可能。
この組み合わせにより、セキュアなデータ管理アクセスログの可視化を両立できます。
相关文章
クラウド技術の共有 | AWS Site-to-Site
Lazy loaded image
EKSでのWordPressデプロイ:KCNA-JP試験対策 (Kubernetes実践編)
Lazy loaded image
初心者向け!コンテナ化WordPressサイト構築ガイド(超詳細版)
Lazy loaded image
EFSを活用!AWS EC2でDockerを使ったWordPressサイト構築
Lazy loaded image
529-AWS SAP AWS 「理論・実践・一問道場」VPCエンドポイント
Lazy loaded image
528-AWS SAP AWS 「理論・実践・一問道場」Migration Evaluator
Lazy loaded image
511-AWS SAP AWS 「理論・実践・一問道場」S3イベント通知509-AWS SAP AWS 「理論・実践・一問道場」マルチリージョン
Loading...
みなみ
みなみ
一个普通的干饭人🍚
最新发布
02-生成AIパスポート試験対策:第2章「生成AI」
2025-2-1
01-生成AIパスポート試験対策:第1章「人口知能」
2025-2-1
究極のAWS認定 AI 実践者 AIF-C01 - 学習メモ
2025-1-27
不要再傻傻的直接买NISA啦
2025-1-27
Kubernetes、仮想マシンとコンテナの概念を超簡単に解説!
2025-1-24
529-AWS SAP AWS 「理論・実践・一問道場」VPCエンドポイント
2025-1-22
公告
🎉欢迎访问我的博客🎉
- 感谢您的支持 --
本站点于2024/09/01建立
👏主要分享IT相关主题👏
系统管理:
Redhat…
容器和编排:
Kubernetes、Openshift…
云计算:
AWS、IBM…
AI入门
以及技术笔记和考证经验
定期更新,欢迎互动。
感谢访问!
快速浏览相关标签