AWS Identity and Access Management - AWS における GDPR コンプライアンスに関する情報提供

AWS Identity and Access Management

AWS アカウントを作成すると、AWS アカウントの「ルート」ユーザーアカウントが自動的に作成されます。このユーザーアカウントには、お客様の AWS アカウントのすべての AWS のサービスおよびリソースに対する完全なアクセス権が付与されます。このアカウントは日常的なタスクに使用するのではなく、追加のロールとユーザーアカウントを最初に作成する場合や、このアカウントを必要とする管理作業にのみ使用してください。AWS では、タスクごとに異なるユーザーアカウントとロールを定義し、各タスクを完了するために必要な最小限のアクセス権限を指定するという、最小特権の原則を最初から適用することを推奨しています。このアプローチは、GDPR で導入された重要な概念である「設計によるデータ保護」に合致させるためのメカニズムです。AWS Identity and Access Management (IAM) は、AWS リソースへのアクセスを安全にコントロールするために使用できるウェブサービスです。

特定のアクセス権限を持つ IAM ID をユーザーとロールで定義します。認証されたユーザーは、特定のタスクを実行できる IAM ロールを担うことができます。ロールを担う際に一時的な認証情報が作成されます。例えば、IAM ロールを使用して、Amazon S3 バケットや Amazon Relational Database Service (Amazon RDS)、Amazon DynamoDB データベースなど、他の AWS リソースへのアクセスに必要な一時的な認証情報を、Amazon Elastic Compute Cloud (Amazon EC2) で実行されるアプリケーションに対して安全に提供できます。同様に、実行ロールはAmazon CloudWatch Logs などの他の AWS のサービスやリソースにアクセスしてログをストリーミングしたり、Amazon Simple Queue Service (Amazon SQS) キューからのメッセージを読み込むために必要な権限と併せて AWS Lambda 機能を提供したりします。ロールを作成したら、そのロールにポリシーを追加して認証を定義します。

お客様がリソースポリシーを監視し、意図しないパブリックアクセスまたはクロスアカウントアクセスがあるリソースを特定するためには、IAM Access Analyzer を有効にすると、AWS アカウントの外部からアクセスできるリソースを特定する包括的な検出結果を生成できます。IAM Access Analyzer は、ポリシーで許可されたアクセスパスで使用可能なものを決定するために、数学的なロジックや推論を使ってリソースポリシーを評価します。IAM Access Analyzer は、新しいポリシーや更新されたポリシーを継続的にモニタリングし、IAM ロールのポリシーだけでなく、Amazon S3 バケットやAWS Key Management Service (AWS KMS) キー、Amazon SQS キュー、Lambda 関数といったサービスリソースのポリシーを使って付与されたアクセス権限を分析します。

Access Analyzer for S3 は、インターネット上の任意のユーザーや他の AWS アカウント (組織外の AWS アカウントを含む) にアクセスを許可するように設定されているバケットに関するアラートを出します。Access Analyzer for Amazon S3 でリスクのあるバケットを確認した場合、バケットへのすべてのパブリックアクセスをワンクリックでブロックできます。AWS では、特定のユースケースをサポートするためにパブリックアクセスが必要な場合を除き、バケットへのすべてのアクセスをブロックすることを推奨しています。すべてのパブリックアクセスをブロックする前に、アプリケーションがパブリックアクセスなしで正常に動作することを確認してください。詳細については、「Amazon S3 を使用したパブリックアクセスのブロック」を参照してください。

IAM では、未使用のアクセス権限を特定して、関連付けられているプリンシパルから削除できるように、最終アクセス情報も提供されます。最終アクセス情報を使用して、ポリシーを絞り込み、必要なサービスとアクションに対してのみアクセスを許可することが可能です。これにより、最小特権のベストプラクティスを忠実に守り、適用できるようになります。 IAM または AWS Organizations 環境全体にわたって存在するエンティティまたはポリシーの最終アクセス情報を表示できます。