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

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

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

デフォルトでは、ユーザーおよびロールには、Macie リソースを作成または変更するアクセス許可はありません。また、、 AWS Command Line Interface (AWS CLI) AWS Management Console、または を使用してタスクを実行することはできません AWS API。必要なリソースに対してアクションを実行するアクセス許可をユーザーに付与するために、IAM管理者はIAMポリシーを作成できます。その後、管理者はIAMポリシーをロールに追加し、ユーザーはロールを引き受けることができます。

これらのポリシードキュメント例を使用してIAMアイデンティティベースのJSONポリシーを作成する方法については、「 ユーザーガイド」のIAM「ポリシーの作成IAM」を参照してください。

各リソースタイプの の形式など、Macie で定義されるアクションとリソースタイプの詳細については、「サービス認証リファレンスARNs」のAmazon Macie のアクション、リソース、および条件キー」を参照してください。

ポリシーを作成するときは、ポリシーを保存する前に、 AWS Identity and Access Management Access Analyzer (IAM Access Analyzer) のセキュリティ警告、エラー、一般的な警告、および提案を必ず解決してください。IAM Access Analyzer はポリシーチェックを実行して、ポリシーの文法とベストプラクティス に照らしてIAMポリシーを検証します。 https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_grammar.htmlこれらのチェックにより、機能的でセキュリティのベストプラクティスに準拠したポリシーを作成するのに、役立つ結果と実行可能なレコメンデーションが示されます。IAM Access Analyzer を使用したポリシーの検証については、「 IAMユーザーガイド」のIAM「Access Analyzer ポリシーの検証」を参照してください。IAM Access Analyzer が返すことができる警告、エラー、および提案のリストを確認するには、IAM「 ユーザーガイド」のIAM「Access Analyzer ポリシーチェックリファレンス」を参照してください。

ポリシーのベストプラクティス

ID ベースのポリシーは、ユーザーのアカウントで誰かが Macie リソースを作成、アクセス、または削除できるどうかを決定します。これらのアクションを実行すると、 AWS アカウントに料金が発生する可能性があります。アイデンティティベースポリシーを作成したり編集したりする際には、以下のガイドラインと推奨事項に従ってください:

  • AWS 管理ポリシーを開始し、最小特権のアクセス許可に移行する – ユーザーとワークロードにアクセス許可を付与するには、多くの一般的なユースケースにアクセス許可を付与する AWS 管理ポリシーを使用します。これらは で使用できます AWS アカウント。ユースケースに固有の AWS カスタマー管理ポリシーを定義して、アクセス許可をさらに減らすことをお勧めします。詳細については、「 ユーザーガイド」の「 AWS 管理ポリシー」または「 ジョブ機能の 管理ポリシーIAM」を参照してください。 AWS

  • 最小特権のアクセス許可を適用する – IAMポリシーでアクセス許可を設定する場合は、タスクの実行に必要なアクセス許可のみを付与します。これを行うには、特定の条件下で特定のリソースに対して実行できるアクションを定義します。これは、最小特権アクセス許可とも呼ばれています。IAM を使用してアクセス許可を適用する方法の詳細については、「 ユーザーガイド」の「 のポリシーとアクセス許可IAMIAM」を参照してください。

  • IAM ポリシーの条件を使用してアクセスをさらに制限する – ポリシーに条件を追加して、アクションとリソースへのアクセスを制限できます。例えば、ポリシー条件を記述して、すべてのリクエストを を使用して送信する必要があることを指定できますSSL。条件を使用して、 などの特定の を通じてサービスアクションが使用される場合に AWS サービス、サービスアクションへのアクセスを許可することもできます AWS CloudFormation。詳細については、「 ユーザーガイド」のIAMJSON「ポリシー要素: 条件IAM」を参照してください。

  • IAM Access Analyzer を使用してIAMポリシーを検証し、安全で機能的なアクセス許可を確保する – IAM Access Analyzer は、ポリシーがポリシー言語 (JSON) とIAMベストプラクティスに準拠するように、新規および既存のIAMポリシーを検証します。IAM Access Analyzer には、安全で機能的なポリシーの作成に役立つ 100 を超えるポリシーチェックと実用的な推奨事項が用意されています。詳細については、「 ユーザーガイド」のIAM「Access Analyzer ポリシーの検証IAM」を参照してください。

  • 多要素認証を要求する (MFA) – でIAMユーザーまたはルートユーザーを必要とするシナリオがある場合は AWS アカウント、セキュリティを強化MFAするために をオンにします。API オペレーションが呼び出されるMFAタイミングを要求するには、ポリシーにMFA条件を追加します。詳細については、「 IAMユーザーガイド」のMFA「 で保護されたAPIアクセスの設定」を参照してください。

のベストプラクティスの詳細についてはIAM、「 ユーザーガイド」の「 のセキュリティのベストプラクティスIAMIAM」を参照してください。

Amazon Macie コンソールの使用

Amazon Macie コンソールにアクセスするには、許可の最小限のセットが必要です。これらのアクセス許可により、 の Macie リソースの詳細を一覧表示および表示できます AWS アカウント。最小限必要な許可よりも制限が厳しいアイデンティティベースのポリシーを作成すると、そのポリシーを持つエンティティ (ユーザーまたはロール) に対してコンソールが意図したとおりに機能しません。

AWS CLI または のみを呼び出すユーザーには、最小限のコンソールアクセス許可を付与する必要はありません AWS API。代わりに、実行しようとしているAPIオペレーションに一致するアクションのみへのアクセスを許可します。

ユーザーとロールが Amazon Macie コンソールを使用できるようにするには、コンソールアクセスを提供するIAMポリシーを作成します。詳細については、「 ユーザーガイド」の「 のポリシーとアクセス許可IAMIAM」を参照してください。

ユーザーまたはロールに Amazon Macie コンソールの使用を許可するポリシーを作成する場合は、そのポリシーが macie2:GetMacieSession アクションを許可することを確認してください。そうしないと、それらのユーザーまたはロールは、コンソール上の Macie リソースやデータにアクセスできなくなります。

また、それらのユーザーまたはロールがコンソール上でアクセスする必要のあるリソースに対して、適切な macie2:List アクションがポリシーで許可されていることも確認してください。そうしないと、コンソール上のそれらのリソースに移動したり、リソースの詳細を表示したりすることができなくなります。例えば、機密データ検出ジョブの詳細をコンソールを使用して確認するには、ユーザーにそのジョブの macie2:DescribeClassificationJob アクションと macie2:ListClassificationJobs アクションの実行を許可する必要があります。ユーザーが macie2:ListClassificationJobs アクションの実行を許可されていない場合は、コンソールの [ジョブ] ページにジョブのリストを表示できないため、ジョブを選択して詳細を表示することもできません。ジョブが使用するカスタムデータ識別子に関する情報を詳細に含めるには、そのカスタムデータ識別子の macie2:BatchGetCustomDataIdentifiers アクションの実行もユーザーに許可されている必要があります。

例 : ユーザーにそれぞれのアクセス許可の確認を許可する

この例では、IAMユーザーがユーザー ID にアタッチされているインラインポリシーと管理ポリシーを表示できるようにするポリシーを作成する方法を示します。このポリシーには、コンソールで、または AWS CLI または を使用してプログラムでこのアクションを実行するアクセス許可が含まれています AWS API。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ViewOwnUserInfo", "Effect": "Allow", "Action": [ "iam:GetUserPolicy", "iam:ListGroupsForUser", "iam:ListAttachedUserPolicies", "iam:ListUserPolicies", "iam:GetUser" ], "Resource": ["arn:aws:iam::*:user/${aws:username}"] }, { "Sid": "NavigateInConsole", "Effect": "Allow", "Action": [ "iam:GetGroupPolicy", "iam:GetPolicyVersion", "iam:GetPolicy", "iam:ListAttachedGroupPolicies", "iam:ListGroupPolicies", "iam:ListPolicyVersions", "iam:ListPolicies", "iam:ListUsers" ], "Resource": "*" } ] }

例: 機密データ検出ジョブの作成をユーザーに許可する

この例では、ユーザーに機密データ検出ジョブを作成するのを許可するポリシーを作成する方法を示します。

この例では、最初のステートメントがユーザーに macie2:CreateClassificationJob アクセス許可を付与しています。これらのアクセス許可により、ユーザーはジョブを作成できます。このステートメントは macie2:DescribeClassificationJob アクセス許可も付与します。これらのアクセス許可により、ユーザーは既存のジョブの詳細にアクセスできます。これらのアクセス許可はジョブの作成には必要ありませんが、これらの詳細にアクセスできると、ユーザーが独自の設定を持つジョブを作成するのに役立ちます。

この例の 2 番目のステートメントでは、ユーザーは Amazon Macie コンソールを使用してジョブを作成、設定、およびレビューできます。macie2:ListClassificationJobs のアクセス許可により、ユーザーはコンソールの [ジョブ] ページに既存のジョブを表示できます。ステートメント内の他のすべてのアクセス許可では、ユーザーはコンソールの [ジョブを作成] ページを使用してジョブを設定および作成できます。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "CreateAndReviewJobs", "Effect": "Allow", "Action": [ "macie2:CreateClassificationJob", "macie2:DescribeClassificationJob" ], "Resource": "arn:aws:macie2:*:*:classification-job/*" }, { "Sid": "CreateAndReviewJobsOnConsole", "Effect": "Allow", "Action": [ "macie2:ListClassificationJobs", "macie2:ListAllowLists", "macie2:ListCustomDataIdentifiers", "macie2:ListManagedDataIdentifiers", "macie2:SearchResources", "macie2:DescribeBuckets" ], "Resource": "*" } ] }

例: ユーザーに機密データ検出ジョブを管理するのを許可する

この例では、ユーザーが特定の機密データ検出ジョブ (ID が 3ce05dbb7ec5505def334104bexample のジョブ) の詳細にアクセスするのを許可するポリシーを作成する方法を示します。この例では、ユーザーは必要に応じてジョブのステータスを変更することもできます。

例の最初のステートメントは、ユーザーに macie2:DescribeClassificationJobmacie2:UpdateClassificationJob のアクセス許可を付与します。これらのアクセス許可により、ユーザーはそれぞれジョブの詳細を取得したり、ジョブのステータスを変更したりできます。2 番目のステートメントはユーザーに macie2:ListClassificationJobs アクセス許可を付与します。これにより、ユーザーは Amazon Macie コンソールの [ジョブ] ページを使用してジョブにアクセスできます。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ManageOneJob", "Effect": "Allow", "Action": [ "macie2:DescribeClassificationJob", "macie2:UpdateClassificationJob" ], "Resource": "arn:aws:macie2:*:*:classification-job/3ce05dbb7ec5505def334104bexample" }, { "Sid": "ListJobsOnConsole", "Effect": "Allow", "Action": "macie2:ListClassificationJobs", "Resource": "*" } ] }

Macie がジョブのために Amazon CloudWatch Logs に発行するログデータ (ログイベント) へのアクセスをユーザーに許可することもできます。これを行うには、ジョブの CloudWatch ロググループとストリームに対してログ (logs) アクションを実行するアクセス許可を付与するステートメントを追加できます。例:

"Statement": [ { "Sid": "AccessLogGroupForMacieJobs", "Effect": "Allow", "Action": [ "logs:DescribeLogGroups", "logs:DescribeLogStreams" ], "Resource": "arn:aws:logs:*:*:log-group:aws/macie/classificationjobs" }, { "Sid": "AccessLogEventsForOneMacieJob", "Effect": "Allow", "Action": "logs:GetLogEvents", "Resource": [ "arn:aws:logs:*:*:log-group:aws/macie/classificationjobs/*", "arn:aws:logs:*:*:log-group:aws/macie/classificationjobs:log-stream:3ce05dbb7ec5505def334104bexample" ] } ]

CloudWatch ログへのアクセスの管理の詳細については、「Amazon Logs ユーザーガイド」の CloudWatch 「ログリソースへのアクセス許可の管理の概要」を参照してください。 CloudWatch

例: ユーザーに検出結果を確認するのを許可する

この例では、ユーザーに結果データへのアクセスを許可するポリシーを作成する方法を示しています。

この例では、 macie2:GetFindingsおよび アクセスmacie2:GetFindingStatistics許可により、ユーザーは Amazon Macie APIまたは Amazon Macie コンソールを使用してデータを取得できます。この macie2:ListFindings 権限により、ユーザーは Amazon Macie コンソールの [概要] ダッシュボードと [検出結果] ページを使用してデータを取得および確認できます。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ReviewFindings", "Effect": "Allow", "Action": [ "macie2:GetFindings", "macie2:GetFindingStatistics", "macie2:ListFindings" ], "Resource": "*" } ] }

また、検出結果のフィルタルールと抑制ルールの作成と管理をユーザーに許可することもできます。そのためには、macie2:CreateFindingsFiltermacie2:GetFindingsFiltermacie2:UpdateFindingsFilter および macie2:DeleteFindingsFilter のアクセス許可を付与するステートメントを含めることができます。ユーザーが Amazon Macie コンソールを使用してルールを管理できるようにするには、ポリシーに macie2:ListFindingsFilters アクセス許可も含めてください。例:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ReviewFindings", "Effect": "Allow", "Action": [ "macie2:GetFindings", "macie2:GetFindingStatistics", "macie2:ListFindings" ], "Resource": "*" }, { "Sid": "ManageRules", "Effect": "Allow", "Action": [ "macie2:GetFindingsFilter", "macie2:UpdateFindingsFilter", "macie2:CreateFindingsFilter", "macie2:DeleteFindingsFilter" ], "Resource": "arn:aws:macie2:*:*:findings-filter/*" }, { "Sid": "ListRulesOnConsole", "Effect": "Allow", "Action": "macie2:ListFindingsFilters", "Resource": "*" } ] }

例:タグに基づいてユーザーがカスタムデータ識別子を確認するのを許可する

アイデンティティベースのポリシーでは、条件を使用して、タグに基づいて Amazon Macie リソースへのアクセスを制御できます。この例では、ユーザーが Amazon Macie コンソールまたは Amazon Macie を使用してカスタムデータ識別子を確認できるようにするポリシーを作成する方法を示しますAPI。ただし、アクセス許可は、Owner タグの値がそのユーザーのユーザー名である場合にのみ付与されます。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ReviewCustomDataIdentifiersIfOwner", "Effect": "Allow", "Action": "macie2:GetCustomDataIdentifier", "Resource": "arn:aws:macie2:*:*:custom-data-identifier/*", "Condition": { "StringEquals": {"aws:ResourceTag/Owner": "${aws:username}"} } }, { "Sid": "ListCustomDataIdentifiersOnConsoleIfOwner", "Effect": "Allow", "Action": "macie2:ListCustomDataIdentifiers", "Resource": "*", "Condition": { "StringEquals": {"aws:ResourceTag/Owner": "${aws:username}"} } } ] }

この例では、そのユーザー名 richard-roe を持つユーザーがカスタムデータ識別子の詳細を確認しようとした場合、カスタムデータ識別子には Owner=richard-roe また owner=richard-roe はのタグを付ける必要があります。それ以外の場合、ユーザーはアクセスを拒否されます。条件キー名では大文字と小文字は区別されないため、条件タグキー OwnerOwnerowner に一致します。詳細については、「 ユーザーガイド」のIAMJSON「ポリシー要素: 条件IAM」を参照してください。