Amazon Macie が S3 バケットおよびオブジェクトにアクセスすることを許可する - Amazon Macie

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon Macie が S3 バケットおよびオブジェクトにアクセスすることを許可する

AWS アカウント でAmazon Macie を有効化すると、Macieは [service-linked role] (サービスにリンクされたロール) を作成し、これにより、Amazon Simple Storage Service (Amazon S3) および他の AWS のサービス をユーザーに代わってコールするために必要なアクセス許可が Macie に付与されます。サービスにリンクされたロールを使用すると、セットアップのプロセスが簡単になります。AWS のサービスユーザーに代わってアクションを完了させるのに許可を手動で追加する必要がないからです。このタイプのロールの詳細については、AWS Identity and Access Management ユーザーガイドの「サービスにリンクされたロールの使用」を参照してください。

Macie のサービスにリンクされたロールのアクセス許可ポリシーは (AWSServiceRoleForAmazonMacie)、Macie が S3 バケットとオブジェクトに関する情報の取得および S3 バケット内のオブジェクトの取得および S3 バケット内のオブジェクトの取得および S3 バケット内のオブジェクトの取得および S3 バケットからの取得からの取得および S3 バケット内のオブジェクトの取得および S3 バケット ユーザーが組織の Macie 管理者である場合、ポリシーにより Macie が組織のメンバーアカウントに対してユーザーに代わってこれらのアクションを実行することも許可されます。

Macie は、これらのアクセス許可を使用して、以下のようなタスクを実行します。

  • S3 バケットのインベントリを生成して維持する

  • バケットおよびバケット内のオブジェクトに関する統計およびその他のデータを提供する

  • バケットのセキュリティとアクセスコントロールをモニタリングして評価する

  • バケット内のオブジェクトを分析して機密データを検出する

ほとんどの場合、Macie はこれらのタスクを実行するために必要なアクセス許可を持っています。ただし、バケットが制限付きバケットポリシーを持つ場合、ポリシーにより Macie がこれらのタスクの一部またはすべてを実行することを妨げる場合があります。

[bucket policy] (バケットポリシー) は、プリンシパル (AWS アカウント、IAM ユーザー、または IAM ロール) がS3 バケットで実行できるアクション、およびプリンシパルがこれらのアクションを実行できる条件を指定するリソースベースの AWS Identity and Access Management (IAM) ポリシー です。アクションと条件は、バケットに関する情報の取得などのバケットレベルのオペレーションや、バケットからのオブジェクトの取得などのオブジェクトレベルのオペレーションに適用できます。

バケットポリシーは通常、明示的な Allow または Deny ステートメントと条件を使用してアクセス権を付与または制限します。たとえば、バケットポリシーには、特定のソース IP アドレス、Amazon Virtual Private Cloud (Amazon VPC) エンドポイント、または VPC がバケットにアクセスするために使用されていない限り、バケットへのアクセスを拒否する Allow または Denyス テートメントが含まれる場合があります。バケットポリシーを使用してバケットにアクセス権を付与または制限する方法の詳細については、Amazon Simple Storage Service ユーザーガイドの「バケットポリシーとユーザーポリシー」と「Amazon S3 がリクエストを許可する方法」を参照してください。

バケットポリシーが明示的な Allow ステートメントを使用する場合、ポリシーは、Macie がバケットとバケットのオブジェクトに関する情報を取得したり、バケットからオブジェクトを取得したりすることを妨げません。これは、Macie のサービスにリンクされたロールのアクセス許可ポリシーの Allow ステートメントが、これらのアクセス許可を付与するからです。

ただし、バケットポリシーが 1 つ以上の条件を持つ明示的な Deny ステートメントを使用する場合、Macie はバケットまたはバケットのオブジェクトに関する情報を取得したり、バケットのオブジェクトを取得したりすることを許可されない場合があります。たとえば、バケットポリシーが特定の IP アドレスを除くすべてのソースからのアクセスを明示的に拒否した場合、機密データ検出ジョブを実行しても Macie はバケットのオブジェクトを分析することを許可されなくなります。これは、制限付きバケットポリシーが、Macie のサービスにリンクされたロールのアクセス許可ポリシーの Allow ステートメントより優先されれるからです。

Macie が制限付きバケットポリシーを持つバケットにアクセスすることを許可するために、Macie のサービスにリンクされたロール (AWSServiceRoleForAmazonMacie) の条件をバケットポリシーに追加できます。その条件により、Macie のサービスにリンクされたロールをポリシーの Deny 制限との一致から除外できます。これは、次のものを使用して行うことができます。aws:PrincipalArn グローバル条件コンテキストキーと Macie のサービスにリンクされたロールの Amazon リソースネーム (ARN)。

次の手順では、このプロセスについて説明し、例を示します。

Macie のサービスにリンクされたロールをバケットポリシーに追加するには

  1. AWS Management Console にサインインし、Amazon S3 コンソール (https://console.aws.amazon.com/s3/) を開きます。

  2. ナビゲーションペインで、[Buckets] (バケット) を選択します。

  3. Macie がアクセスすることを許可するバケットを選択します。

  4. [Permissions] (アクセス許可) タブの [Bucket policy] (バケットポリシー) で [Edit] (編集) をクリックします。

  5. [Bucket policy] (バケットポリシー) エディタで、アクセスを制限し、Macie がバケットまたはバケットのオブジェクトにアクセスすることを妨げるそれぞれの Deny ステートメントを特定します。

  6. eachDenyステートメント、を使用する条件を追加aws:PrincipalArnグローバル条件コンテキストキーで、Macie のサービスにリンクされたロールの ARN を指定します。AWS アカウント。

    条件キーの値は arn:aws:iam::123456789012:role/aws-service-role/macie.amazonaws.com/AWSServiceRoleForAmazonMacie である必要があります。ここで、AWS アカウント のアカウント ID は 123456789012 です。

これをバケットポリシーのどこに追加するかは、ポリシーに現在含まれている構造、要素、および条件によって異なります。サポートされている構造と要素の詳細については、Amazon Simple Storage Service ユーザーガイドの「Amazon S3 のポリシーとアクセス許可」を参照してください。

DOC-EXAMPLE-BUCKET という名前のバケットへのアクセスを制限するための明示的な Deny ステートメントを使用するバケットポリシーの例を次に示します。現在のポリシーでは、バケットには ID が vpce-1a2b3c4d である VPC エンドポイントからのみアクセスできます。AWS Management Console および Macie からを含め、その他のすべての VPC エンドポイントからのアクセスは拒否されます。

{ "Version": "2012-10-17", "Id": "Policy1415115example", "Statement": [ { "Sid": "Access from specific VPCE only", "Effect": "Deny", "Principal": "*", "Action": "s3:*", "Resource": [ "arn:aws:s3:::DOC-EXAMPLE-BUCKET", "arn:aws:s3:::DOC-EXAMPLE-BUCKET/*" ], "Condition": { "StringNotEquals": { "aws:SourceVpce": "vpce-1a2b3c4d" } } } ] }

このポリシーを変更し、Macie がバケットとバケットのオブジェクトにアクセスすることを許可するには、StringNotLike 条件演算子そしてaws:PrincipalArn グローバル条件コンテキストキー。この追加の条件により、Macie のサービスにリンクされたロールを Deny 制限との一致から除外します。

{ "Version": "2012-10-17", "Id":" Policy1415115example ", "Statement": [ { "Sid": "Access from specific VPCE and Macie only", "Effect": "Deny", "Principal": "*", "Action": "s3:*", "Resource": [ "arn:aws:s3:::DOC-EXAMPLE-BUCKET", "arn:aws:s3:::DOC-EXAMPLE-BUCKET/*" ], "Condition": { "StringNotEquals": { "aws:SourceVpce": "vpce-1a2b3c4d" }, "StringNotLike": { "aws:PrincipalArn": "arn:aws:iam::123456789012:role/aws-service-role/macie.amazonaws.com/AWSServiceRoleForAmazonMacie" } } } ] }

前述の例では、StringNotLike条件演算子は、aws:PrincipalArnMacie のサービスにリンクされたロールの ARN を指定します。

  • 123456789012のアカウント ID はAWS アカウントMacie を使用してバケットとバケットのオブジェクトに関する情報を取得し、バケットから取得することを許可されています。

  • macie.amazonaws.com は、Macie サービスプリンシパルの識別子です。

  • AWSServiceRoleForAmazonMacie は、Macie のサービスにリンクされたロールの名前です。

ポリシーが StringNotEquals 演算子をすでに使用しているため、StringNotLike 演算子が使用されました。ポリシーでは、StringNotEquals 演算子は一度だけ使用できます。

Amazon S3 リソースへのアクセスの管理に関する追加のポリシー例および詳細については、Amazon Simple Storage Service ユーザーガイドの「Amazon S3 での Identity and Access Management」を参照してください。