Amazon Macie と AWS Identity and Access Management の連携の仕組み - Amazon Macie

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

Amazon Macie と AWS Identity and Access Management の連携の仕組み

AWS Identity and Access Management (IAM) を使用して Amazon Macie へのアクセスを管理する前に、Macie で利用できる IAM 機能について学びます。

Macie などの AWS のサービス が大部分のIAM 機能とどのように連携するかについての概要は、IAM ユーザーガイドのIAM と連携する AWS のサービスを参照してください。

Amazon Macie のアイデンティティベースの ポリシー

アイデンティティベースポリシーをサポートする

あり

アイデンティティベースポリシーは、IAM ユーザー、ユーザーグループ、ロールなど、アイデンティティにアタッチできる JSON 権限ポリシードキュメントです。これらのポリシーは、ユーザーとロールが実行できるアクション、リソース、および条件を制御します。アイデンティティベースのポリシーを作成する方法については、『IAM ユーザーガイド』の「IAM ポリシーの作成」を参照してください。

IAM アイデンティティベースのポリシーでは、許可または拒否するアクションとリソース、およびアクションを許可または拒否する条件を指定できます。プリンシパルは、それがアタッチされているユーザーまたはロールに適用されるため、アイデンティティベースのポリシーでは指定できません。JSON ポリシーで使用できるすべての要素について学ぶには、IAM ユーザーガイドIAM JSON ポリシーの要素のリファレンスを参照してください。

Macie はアイデンティティベースのポリシーをサポートします。例については、Amazon Macie のアイデンティティベースのポリシー例を参照してください。

Amazon Macie 内のリソースベースのポリシー

リソースベースのポリシーのサポート

なし

リソースベースのポリシーは、リソースに添付する JSON ポリシードキュメントです。リソースベースのポリシーには例として、IAM ロールの信頼ポリシーや Amazon S3 バケットポリシーがあげられます。リソースベースのポリシーをサポートするサービスでは、サービス管理者はポリシーを使用して特定のリソースへのアクセスを制御できます。ポリシーがアタッチされているリソースの場合、指定されたプリンシパルがそのリソースに対して実行できるアクションと条件は、ポリシーによって定義されます。リソースベースのポリシーでは、プリンシパルを指定する必要があります。プリンシパルには、アカウント、ユーザー、ロール、フェデレーションユーザー、または AWS のサービス を含めることができます。

クロスアカウントアクセスを有効にするには、全体のアカウント、または別のアカウントの IAM エンティティを、リソースベースのポリシーのプリンシパルとして指定します。リソースベースのポリシーにクロスアカウントのプリンシパルを追加しても、信頼関係は半分しか確立されない点に注意してください。プリンシパルとリソースが異なる AWS アカウント にある場合、信頼できるアカウントの IAM 管理者は、リソースにアクセスするための権限をプリンシパルエンティティ (ユーザーまたはロール) に付与する必要もあります。IAM 管理者は、アイデンティティベースのポリシーをエンティティにアタッチすることで権限を付与します。ただし、リソースベースのポリシーで、同じアカウントのプリンシパルへのアクセス権が付与されている場合は、アイデンティティベースのポリシーを追加する必要はありません。詳細については、IAM ユーザーガイドIAM ロールとリソースベースのポリシーとの相違点を参照してください。

Macie では、resource-based policies はサポートされていません。つまり、ポリシーを Macie リソースに直接アタッチすることはできません。

Amazon Macie のポリシーアクション

ポリシーアクションに対するサポート

あり

管理者は AWS JSON ポリシーを使用して、誰が何にアクセスできるかを指定できます。つまり、どのプリンシパルがどんなリソースにどんな条件アクションを実行できるかということです。

JSON ポリシーのAction要素には、ポリシー内のアクセスを許可または拒否するために使用できるアクションが記述されます。ポリシーアクションの名前は通常、関連する AWS API オペレーションと同じです。一致する API オペレーションのない権限のみのアクションなど、いくつかの例外があります。また、ポリシーに複数アクションが必要なオペレーションもあります。これらの追加アクションは、依存アクションと呼ばれます。

このアクションは、関連付けられたオペレーションを実行するための権限を付与するポリシーで使用されます。

Macie のポリシーアクションは、アクションの前に、次のプレフィックスを使用しています。

macie2

例えば、プロジェクトのすべてのセグメントに関する情報を表示するためのアクセス許可をユーザーに付与するには、ポリシーに macie2:ListManagedDataIdentifiers アクションを含めます (これは、Amazon Macie API の ListManagedDataIdentifiers オペレーションに対応するアクションです)。

"Action": "macie2:ListManagedDataIdentifiers"

単一のステートメントで複数のアクションを指定するには、アクションをカンマで区切ります。例:

"Action": [ "macie2:ListManagedDataIdentifiers", "macie2:ListCustomDataIdentifiers" ]

ワイルドカード (*) を使用して複数のアクションを指定することもできます。例えば、List という単語で始まるすべてのアクションを指定するには、次のアクションを含めます。

"Action": "macie2:List*"

ただしベストプラクティスとして、最小特権 の原則に準拠したポリシーを作成してください。別の言い方をすると、特定タスクの実行にのみ必要とされる権限のみが含まれたポリシーを作成してください。

Macie アクションのリストを確認するには、サービス認証リファレンスの Amazon Macie で定義されるアクションを参照してください。Macie アクションを指定するポリシーの例については、Amazon Macie のアイデンティティベースのポリシー例を参照してください。

Amazon Macie のポリシーリソース

ポリシーリソースに対するサポート

あり

管理者は AWS JSON ポリシーを使用して、誰が何にアクセスできるかを指定できます。つまり、どのプリンシパルがどんなリソースにどんな条件アクションを実行できるかということです。

JSON ポリシーの Resource 要素は、アクションが適用される 1 つ以上のオブジェクトを指定します。ステートメントには、Resource または NotResource 要素を含める必要があります。ベストプラクティスとして、Amazon リソースネーム (ARN) を使用してリソースを指定します。これは、リソースレベルの権限と呼ばれる特定のリソースタイプをサポートするアクションに対して実行できます。

オペレーションのリスト化など、リソースレベルの権限をサポートしないアクションの場合は、ステートメントがすべてのリソースに適用されることを示すために、ワイルドカード (*) を使用します。

"Resource": "*"

Macie は以下のリソースタイプを定義しています。

  • 許可リスト

  • カスタムデータ識別子

  • フィルターまたは抑制ルール、検出結果フィルターとも呼ばれる

  • メンバーアカウント

  • 機密データ検出ジョブ分類ジョブとも呼ばれる

ポリシーでは、次のタイプの リソースに対して ARN を指定できます。

例えば、ジョブ ID が 3ce05dbb7ec5505def334104bexample の機密データ検出ジョブのポリシーを作成するには、次の ARN を使用できます。

"Resource": "arn:aws:macie2:*:*:classification-job/3ce05dbb7ec5505def334104bexample"

または、特定のアカウントのすべての機密データ検出ジョブを指定するには、ワイルドカード (*) を使用します。

"Resource": "arn:aws:macie2:*:123456789012:classification-job/*"

ここで、123456789012 はジョブを作成した AWS アカウント のアカウント ID です。ただしベストプラクティスとして、最小特権 の原則に準拠したポリシーを作成してください。別の言い方をすると、特定のリソースで特定タスクの実行にのみ必要とされる権限のみが含まれたポリシーを作成してください。

Macie アクションの中には、複数のリソースに適用できるものもあります。たとえば、macie2:BatchGetCustomDataIdentifiers アクションは複数のカスタムデータ識別子の詳細を取得できます。このような場合、プリンシパルにはアクションが適用されるすべてのリソースにアクセスする権限が必要です。単一のステートメントで複数のリソースを指定するには、ARN 間をカンマで区切ります。

"Resource": [ "arn:aws:macie2:*:*:custom-data-identifier/12g4aff9-8e22-4f2b-b3fd-3063eexample", "arn:aws:macie2:*:*:custom-data-identifier/2d12c96a-8e78-4ca6-b1dc-8fd65example", "arn:aws:macie2:*:*:custom-data-identifier/4383a69d-4a1e-4a07-8715-208ddexample" ]

MacieリソースタイプのリストとそれぞれのARN構文については、サービス認証リファレンスのResource types defined by Amazon Macieを参照してください。各リソースタイプで指定できるアクションについては、サービス認証リファレンスのAmazon Macie によって定義されるアクションを参照してください。リソースを指定するポリシーの例については、Amazon Macie のアイデンティティベースのポリシー例を参照してください。

Amazon Macie のポリシー条件キー

サービス固有のポリシー条件キーのサポート

はい

管理者は AWS JSON ポリシーを使用して、誰が何にアクセスできるかを指定できます。つまり、どのプリンシパルがどんなリソースにどんな条件アクションを実行できるかということです。

Condition 要素 (または Condition ブロック) を使用すると、ステートメントが有効になる条件を指定できます。Condition 要素はオプションです。equal や less than などの条件演算子を使用して条件式を作成することによって、ポリシーの条件とリクエスト内の値を一致させることができます。

1 つのステートメントに複数の Condition 要素を指定するか、1 つの Condition 要素に複数のキーを指定すると、AWS は AND 論理演算子を使用してそれらを評価します。単一の条件キーに複数の値を指定すると、AWS は OR 論理演算子を使用して条件を評価します。ステートメントの権限が付与される前にすべての条件が満たされる必要があります。

条件を指定する際にプレースホルダー変数も使用できます。例えば IAM ユーザーに、IAM ユーザー名がタグ付けされている場合のみリソースにアクセスできる権限を付与することができます。詳細については、「IAM ユーザーガイド」の「IAM ポリシー要素: 変数およびタグ」を参照してください。

AWS はグローバル条件キーとサービス固有の条件キーをサポートしています。すべての AWS グローバル条件キーを確認するには、IAM ユーザーガイドAWS グローバル条件コンテキストキーを参照してください。

Macie での条件キーの一覧については、サービス認証リファレンスのAmazon Macie の条件キーを参照してください。どのアクションおよびリソースと条件キーを使用できるかについては、Amazon Macie で定義されるアクションを参照してください。条件キーを使用するポリシーの例については、Amazon Macie のアイデンティティベースのポリシー例を参照してください。

Amazon Macie のアクセスコントロールリスト (ACL)

ACL のサポート

なし

アクセスコントロールリスト (ACL) は、どのプリンシパル (アカウントメンバー、ユーザー、またはロール) がリソースにアクセスするための権限を持つかを制御します。ACL はリソースベースのポリシーに似ていますが、JSON ポリシードキュメント形式は使用しません。

Amazon Simple Storage Service (Amazon S3) は、ACL をサポートするサービス AWS のサービス の一例です。ACL の詳細については、Amazon Simple Storage Service デベロッパーガイドのアクセスコントロールリスト (ACL) の概要を参照してください。

Macie では、ACL はサポートされません。つまり、Macie リソースに ACL をアタッチすることはできません。

Amazon Macie での属性ベースのアクセス制御 (ABAC)

ABAC のサポート (ポリシー内のタグ)

はい

属性ベースのアクセス制御 (ABAC) は、属性に基づいてアクセス許可を定義するアクセス許可戦略です。AWS では、これらの属性はタグと呼ばれます。タグは、IAM エンティティ (ユーザーまたはロール)、および多数の AWS リソースにアタッチできます。エンティティとリソースのタグ付けは、ABAC の最初の手順です。その後、プリンシパルのタグがアクセスしようとしているリソースのタグと一致した場合に操作を許可するように ABAC ポリシーを設計します。

ABAC は、急成長する環境やポリシー管理が煩雑になる状況で役立ちます。

タグに基づいてアクセスを管理するには、aws:ResourceTag/key-nameaws:RequestTag/key-name、または aws:TagKeys の条件キーを使用して、ポリシーの Condition 要素でタグ情報を提供します。

サービスがすべてのリソースタイプに対して 3 つの条件キーのすべてをサポートする場合、そのサービスでのサポート状況の値は「はい」になります。サービスが一部のリソースタイプに対してのみ 3 つの条件キーのすべてをサポートする場合、値は「部分的」になります。

ABAC の詳細については、『IAM ユーザーガイド』の「ABAC とは?」を参照してください。ABAC をセットアップするステップを説明するチュートリアルについては、IAM ユーザーガイド属性に基づくアクセスコントロール (ABAC) を使用するを参照してください。

Macie リソース (許可リスト、カスタムデータ識別子、フィルタールールと抑制ルール、メンバーアカウント、機密データ検出ジョブ) にはタグを添付できます。ポリシーの Condition 要素にタグ情報を指定することで、これらのタイプのリソースへのアクセスを制御することもできます。Macie リソースのタグ付けについては、Amazon Macie リソースへのタグ付けを参照してください。タグに基づいてリソースへのアクセスを制御するアイデンティティベースのポリシーの例については、Amazon Macie のアイデンティティベースのポリシー例をご参照ください。

Amazon Macie での一時的な認証情報の使用

一時的な認証情報のサポート

あり

AWS のサービス には、一時的な認証情報を使用してサインインしても機能しないものがあります。一時的な認証情報で機能する AWS のサービスなどの詳細については、「IAM ユーザーガイド」の「IAM と連携する AWS のサービス」を参照してください。

ユーザー名とパスワード以外の方法で AWS Management Console にサインインする場合は、一時的な認証情報を使用していることになります。例えば、会社の Single Sign-On (SSO) リンクを使用して AWS にアクセスすると、そのプロセスは自動的に一時認証情報を作成します。また、ユーザーとしてコンソールにサインインしてからロールを切り替える場合も、一時的な認証情報が自動的に作成されます。ロールの切り替えに関する詳細については、『IAM ユーザーガイド』の「ロールへの切り替え (コンソール)」を参照してください。

一時認証情報は、AWS CLI または AWS API を使用して手動で作成できます。作成後、一時的な認証情報を使用して AWS にアクセスできるようになります。AWS は、長期的なアクセスキーを使用する代わりに、一時的な認証情報を動的に生成することをお勧めします。詳細については、IAM の一時的セキュリティ認証情報を参照してください。

Macie は、一時的な認証情報の使用をサポートしています。

Amazon Macie のフォワードアクセスセッション

フォワードアクセスセッション (FAS) をサポート

はい

IAM ユーザーまたはロールを使用して AWSでアクションを実行するユーザーは、プリンシパルと見なされます。一部のサービスを使用する際に、アクションを実行してから、別のサービスの別のアクションを開始することがあります。FAS は、AWS のサービスを呼び出すプリンシパルの権限を、AWS のサービスのリクエストと合わせて使用し、ダウンストリームのサービスに対してリクエストを行います。FAS リクエストは、サービスが、完了するために他の AWS のサービス またはリソースとのやりとりを必要とするリクエストを受け取ったときにのみ行われます。この場合、両方のアクションを実行するための権限が必要です。FAS リクエストを行う際のポリシーの詳細については、「転送アクセスセッション」を参照してください。

次のタスクを実行すると、Macie は FAS リクエストを実行して AWS のサービス をダウンストリームします:

  • S3 バケットに保存されている許可リストの Macie の設定を作成または更新します。

  • S3 バケットに保存されている許可リストのステータスをチェックします。

  • IAM ユーザー認証情報を使用して、対象の S3 オブジェクトから機密データのサンプルを取得します。

  • IAM ユーザー認証情報または IAM ロールを使用して取得した機密データのサンプルを暗号化します。

  • Macie を AWS Organizations と統合できるようにします。

  • AWS Organizations で組織のために委任された Macie 管理者アカウントを指定します。

他のタスクでは、Macie は、サービスリンクロールを使用して、ユーザーに代わってアクションを実行します。このロールの詳細については、Amazon Macie のサービスにリンクされたロールを参照してください。

Amazon Macie のサービスロール

サービスロールのサポート

いいえ

サービスロールとは、サービスがユーザーに代わってアクションを実行するために引き受ける IAM ロールです。IAM 管理者は、IAM 内からサービスロールを作成、変更、削除できます。詳細については、IAM ユーザーガイドAWS のサービス にアクセス許可を委任するロールの作成を参照してください。

Macie はサービスロールを引き受けたり使用したりしません。ユーザーに代わってアクションを実行するには、Macie は主にサービスリンクロールを使用します。このロールの詳細については、Amazon Macie のサービスにリンクされたロールを参照してください。

Amazon Macie のサービスにリンクされたロール

サービスリンクロールのサポート

はい

サービスリンクロールは、AWS のサービス にリンクされているサービスロールの一種です。サービスがロールを引き受け、ユーザーに代わってアクションを実行できるようになります。サービスリンクロールは、AWS アカウント に表示され、サービスによって所有されます。IAM 管理者は、サービスリンクロールの権限を表示できますが、編集することはできません。

Macie は、サービスにリンクされたロールを使用して、ユーザーに代わってアクションを実行します。このロールの詳細については、Amazon Macie のサービスにリンクされたロールを参照してください。