type
status
date
slug
summary
tags
category
icon
password
理論
AWSで複数のアカウント間でデータを共有する際、セキュリティとアクセス管理が重要です。特に、S3バケットへのアクセスとその暗号化には、IAMポリシー、S3バケットポリシー、KMSキー管理が関わります。
- IAMロールとポリシー: AWSでは、異なるアカウント間でリソースにアクセスするためにIAMロールとポリシーを使用します。これにより、どのユーザーやサービスが特定のリソースにアクセスできるかを細かく制御できます。
- S3バケットポリシー: S3バケットポリシーは、バケットに対するアクセス許可を管理するためのもので、アクセス元アカウントやIAMロールを指定することができます。これにより、外部アカウントからの安全なアクセスが可能になります。
- KMSキー管理: S3バケットがKMS(Key Management Service)で暗号化されている場合、暗号化キーのアクセス権限も管理する必要があります。これにより、他のアカウントが暗号化されたデータを復号する際のアクセスを制御します。
これらの管理は、最小限の運用負荷でセキュアなアクセスを確保するために、適切に設定される必要があります。
実践
略
一問道場
質問 #101
トピック 1
ある会社は、AWSのマルチアカウント環境でアプリケーションを実行しています。営業チームとマーケティングチームはAWS Organizationsで別々のAWSアカウントを使用しています。
営業チームはペタバイト規模のデータをAmazon S3バケットに保存しています。マーケティングチームは、データの可視化のためにAmazon QuickSightを使用しています。マーケティングチームは、営業チームがS3バケットに保存したデータにアクセスする必要があります。会社は、S3バケットをAWS Key Management Service (AWS KMS)キーで暗号化しています。マーケティングチームはすでにQuickSight用のIAMサービスロールを作成し、マーケティングAWSアカウントでQuickSightアクセスを提供しています。会社は、AWSアカウント間でS3バケットのデータに安全にアクセスできるソリューションを必要としています。
どのソリューションが、最も運用上のオーバーヘッドを最小限に抑えながらこれらの要件を満たすでしょうか?
A. マーケティングアカウントに新しいS3バケットを作成します。営業アカウントでS3レプリケーションルールを作成して、営業アカウントのオブジェクトをマーケティングアカウントの新しいS3バケットにコピーします。QuickSightの権限をマーケティングアカウントで更新して、新しいS3バケットへのアクセスを許可します。
B. SCP(サービスコントロールポリシー)を作成して、S3バケットへのマーケティングアカウントのアクセスを許可します。AWSリソースアクセスマネージャー(AWS RAM)を使用して、営業アカウントからマーケティングアカウントにKMSキーを共有します。QuickSightの権限をマーケティングアカウントで更新して、S3バケットへのアクセスを許可します。
C. マーケティングアカウントのS3バケットポリシーを更新して、QuickSightロールにアクセスを許可します。S3バケットで使用されている暗号化キーのためにKMS権限を作成します。QuickSightロールに復号化アクセスを許可します。QuickSightの権限をマーケティングアカウントで更新して、S3バケットへのアクセスを許可します。
D. 営業アカウントにIAMロールを作成し、S3バケットへのアクセスを許可します。マーケティングアカウントから、営業アカウントのIAMロールを引き受けてS3バケットにアクセスします。QuickSightロールを更新して、営業アカウントの新しいIAMロールとの信頼関係を作成します。
解説
この質問は、AWSアカウント間でデータを安全にアクセスする方法を尋ねており、具体的には、営業チームが保持しているS3バケットのデータにマーケティングチームがアクセスできる方法を問うものです。AWS KMS(Key Management Service)を使用してデータが暗号化されており、マーケティングチームはQuickSightを使ってデータを可視化するためにアクセスが必要です。
解説を順に見ていきます。
A. 新しいS3バケットを作成し、レプリケーションを使用する
- 新しいS3バケットを作成し、営業アカウントのデータをレプリケーションルールでマーケティングアカウントにコピーするという方法です。これにより、データは2つのバケットに複製され、マーケティングチームがアクセスできるようになります。
- 問題点: データのレプリケーションには運用コストがかかり、また、常に最新のデータを同期する必要があるため、オーバーヘッドが増えます。また、暗号化されたデータのキー共有に関する設定も別途必要になります。
- 結論: この方法は運用負荷が高いため、最小限のオーバーヘッドを求める要件に合いません。
B. SCPを使用してアクセスを許可し、AWS RAMでKMSキーを共有する
- *SCP(サービスコントロールポリシー)**を使って、営業アカウントのS3バケットへのアクセスをマーケティングアカウントに許可します。そして、**AWSリソースアクセスマネージャー(AWS RAM)**を使用して、営業アカウントのKMSキーをマーケティングアカウントに共有します。
- 問題点: SCPはAWS Organizations全体のポリシーを制御するため、他のアカウントにアクセスを許可することが目的であれば、細かな権限設定が必要となります。KMSキーを共有する部分も設定が煩雑で、管理が少し複雑になる可能性があります。
- 結論: この方法は理論的に可能ですが、設定が複雑になりやすく、最小限のオーバーヘッドを要求する要件には最適ではありません。
C. S3バケットポリシーとKMS権限を更新する
- S3バケットポリシーを更新して、QuickSightロールにアクセス権を付与します。また、KMS権限を作成し、QuickSightロールに復号化の権限を付与します。
- メリット: この方法は、必要なアクセス権をバケットポリシーとKMSキーの設定で直接管理するため、比較的簡単に実装できます。QuickSightは既にマーケティングアカウントで設定されているため、追加の設定が少なく済みます。
- 結論: この方法は、S3バケットへのアクセスとKMSキーの設定を適切に行うことで、最小限のオーバーヘッドで安全にアクセスを提供できます。最も効率的でシンプルな解決策です。
D. IAMロールを使用してアクセスする
- 営業アカウントにIAMロールを作成し、そのロールをマーケティングアカウントで引き受けてS3バケットにアクセスします。QuickSightロールには、営業アカウントのIAMロールとの信頼関係を設定します。
- 問題点: この方法では、IAMロールの作成と引き受けの手順が必要で、追加の設定が発生します。特に、IAMロールの信頼関係やQuickSightの設定に手間がかかる可能性があります。
- 結論: この方法は機能的には問題ありませんが、設定が比較的複雑で運用のオーバーヘッドが増えるため、最小限のオーバーヘッドを求める要件には不向きです。
結論
最も運用負荷が少なく、要件を満たすのはCの方法です。この方法では、S3バケットポリシーとKMSの設定を適切に行うことで、マーケティングチームのQuickSightロールに安全にアクセスを許可することができます。
- 作者:みなみ
- 链接:https://tangly1024.com/資格勉強/16dd7ae8-88e2-80fb-babe-ec83e8563d98
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
相关文章