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

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

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

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

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

Forecast が定義するアクションとリソースタイプ (リソースタイプごとの ARN の形式を含む) の詳細については、「サービス認可リファレンス」の「Amazon Forecast のアクション、リソース、および条件キー」を参照してください。

オペレーションが呼び出されるたびに、Amazon Forecast は呼び出し元の権限について一連の認証チェックを実行します。これらのチェックには以下が含まれます。

  • 呼び出し元がオペレーションを呼び出す権限が検証されます。

  • オペレーション内でロールが指定されている場合、Amazon Forecast はロールの PassRole アクセス許可を検証します。

  • 暗号化設定で KMS キーが指定されている場合、kms:Decrypt および kms:GenerateDataKey validation は呼び出し元のアクセス許可で実行されます。このキーは、Amazon Forecast で実行されるオペレーションごとに異なる場合があります。関連するアクセス許可がない場合 AccessDeniedException 、 を受け取ります。キーポリシーは次のコードのようになっているはずです。

    "Effect": "Allow", "Principal": { "AWS": “AWS Invoking Identity” }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey” ], "Resource": "*" }

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

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

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

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

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

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

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

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

Forecast コンソールの使用

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

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

ユーザーとロールが引き続き Forecast コンソールを使用できるようにするには、エンティティに次の AWS 管理ポリシーもアタッチします。詳細については、「IAM ユーザーガイド」の「ユーザーへの許可の追加」を参照してください。

AWSForecastFullAccess

次のポリシーは、コンソールを使用するときにすべての Amazon Forecast アクションへのフルアクセスを許可します。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "forecast:*" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "*", "Condition": { "StringEquals": { "iam:PassedToService": "forecast.amazonaws.com" } } } ] }

ユーザーが自分のアクセス許可を表示できるようにする方法

この例では、ユーザーアイデンティティにアタッチされたインラインおよびマネージドポリシーの表示を IAM ユーザーに許可するポリシーの作成方法を示します。このポリシーには、コンソールで、または 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": "*" } ] }

Amazon Forecast の AWS マネージド (事前定義) ポリシー

AWS は、AWSによって作成され管理されるスタンドアロンの IAM ポリシーを提供することで、多くの一般的ユースケースに対応します。これらの AWS 管理ポリシーは、一般的ユースケースに必要なアクセス権限を付与することで、どの権限が必要なのかをユーザーが調査する必要をなくすことができます。詳細については、IAM ユーザーガイドの「AWS 管理ポリシー」を参照してください。

アカウントのユーザーにアタッチできる以下の AWS マネージドポリシーは、Amazon Forecast に固有のものです。

  • AmazonForecastFullAccess – Amazon Forecast リソースおよびサポートされているすべてのオペレーションへのフルアクセスを許可します。

これらの許可ポリシーについては、IAM コンソールにサインインしてそれらを検索することで確認できます。

独自のカスタム IAM ポリシーを作成して、Amazon Forecast アクションとリソースのための権限を許可することもできます。これらのカスタムポリシーは、それらを必要とする IAM ユーザーにアタッチできます。

お客様が管理するポリシーの例

このセクションでは、さまざまな Amazon Forecast アクションの許可を付与するユーザーポリシー例を示しています。これらのポリシーは、AWS SDK または AWS CLI を使用しているときに機能します。コンソールを使用している場合は、「Forecast コンソールの使用」を参照してください。

例 1: アカウント管理者にアクセス許可を付与する

アカウントを設定した後で (「AWS へのサインアップ」を参照)、管理者ユーザーを作成し、アカウントを管理します。管理者ユーザーは、ユーザーを作成してそのアクセス許可を管理できます。

アカウントで使用可能なすべてのアクセス許可を管理者ユーザーに付与するには、そのユーザーに次のアクセス許可ポリシーをアタッチします

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "*", "Resource": "*" } ] }

例 2: すべての Amazon Forecast および IAM PassRole アクションを許可する

すべての Amazon Forecast アクションに対する許可を持ち、他のサービスに対する許可を持たないユーザーを作成することを選択できます (このユーザーをサービス固有の管理者とみなします)。このユーザーに以下のアクセス許可ポリシーをアタッチします。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "forecast:*" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "*", "Condition": { "StringEquals": { "iam:PassedToService": "forecast.amazonaws.com" } } } ] }

例 3: IAM アクションを制限しながらすべての Amazon Forecast PassRole アクションを許可する

IAM アクションを制限しながら、すべての Amazon Forecast PassRole アクションに対するアクセス許可を持つユーザーを作成することもできます。このユーザーに以下のアクセス許可ポリシーをアタッチします。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "forecast:*" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "arn:aws:iam::EXAMPLE_ACCOUNT_ID_12349858:role/EXAMPLE_ROLE_TO_ALLOW_TO_PASS", "Condition": { "StringEquals": { "iam:PassedToService": "forecast.amazonaws.com" } } } ] }

例 4: アクションベースのポリシー: Amazon Forecast 読み取り専用アクセス

以下のポリシーでは、リソースを一覧表示して説明する Amazon Forecast アクションを実行するための許可をユーザーに付与します。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "forecast:DescribeDataset", "forecast:DescribeDatasetGroup", "forecast:DescribeDatasetImportJob", "forecast:DescribeForecast", "forecast:DescribeForecastExportJob", "forecast:DescribePredictor", "forecast:ListDatasetGroups", "forecast:ListDatasetImportJobs", "forecast:ListDatasets", "forecast:ListDatasetExportJobs", "forecast:ListForecasts", "forecast:ListPredictors" ], "Resource": "*" } ] }

例 5: パスロールと KMS アクションを含むすべての Amazon Forecast アクションを許可する

Amazon Forecast の暗号化用のクロスアカウントカスタマーマネージドキーを使用して、すべての Amazon Forecast アクションに対する許可を持ち、他のサービスに対する許可を持たないユーザーを作成できます。詳細については、「AWS Key Management Service デベロッパーガイド」の「AWS Cross Account Key policy」を参照してください。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "forecast:*" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "*", "Condition": { "StringEquals": { "iam:PassedToService": "forecast.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "arn:aws:iam::1234567890:key/example_key" } ] }