

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

# Amazon Connect の ID ベースのポリシー例
<a name="security_iam_id-based-policy-examples"></a>

IAM エンティティのデフォルトでは、Amazon Connect のリソースを作成または変更するアクセス許可は付与されていません。また、 AWS マネジメントコンソール、 AWS CLI、または AWS API を使用してタスクを実行することはできません。IAM 管理者は、IAM エンティティに必要な、指定されたリソースに対して特定の API オペレーションを実行するアクセス許可を付与する IAM ポリシーを作成する必要があります。続いて、IAM 管理者はそれらのアクセス許可が必要な IAM エンティティに、そのポリシーをアタッチします。

JSON ポリシードキュメントのこれらの例を使用して、IAM アイデンティティベースのポリシーを作成する方法については、*IAM ユーザーガイド*の「[JSON タブでのポリシーの作成](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html#access_policies_create-json-editor)」を参照してください。

**Topics**
+ [ポリシーに関するベストプラクティス](#security_iam_service-with-iam-policy-best-practices)
+ [自分のアクセス許可の表示を IAM ユーザーに許可する](#security_iam_id-based-policy-examples-view-own-permissions)
+ [「ユーザーの表示」アクセス許可を付与する](#security_iam_id-based-policy-example-view-user-permissions)
+ [ユーザーに外部アプリケーションとの統合を許可する](#security_iam_id-based-policy-examples-integrate)
+ [タグに基づいて、Amazon Connect ユーザーの詳細表示および更新を行う](#security_iam_id-based-policy-examples-view-widget-tags)
+ [タグに基づいて Amazon Connect ユーザーを作成する](#connect-access-control-resources-example1)
+ [Amazon AppIntegrations リソースの作成と表示](#appintegration-resources-example1)
+ [Connect AI エージェントアシスタントを作成して表示する](#wisdom-resources-example1)
+ [アウトバウンドキャンペーンリソースを管理する](#outboundcommunications-policy-example1)

## ポリシーに関するベストプラクティス
<a name="security_iam_service-with-iam-policy-best-practices"></a>

ID ベースのポリシーは、あるユーザーがアカウント内で Amazon Connect リソースを作成、アクセス、または削除できるどうかを決定します。これらのアクションでは、 AWS アカウントに費用が発生する場合があります。アイデンティティベースポリシーを作成したり編集したりする際には、以下のガイドラインと推奨事項に従ってください:
+ ** AWS 管理ポリシーを開始し、最小特権のアクセス許可に移行する** – ユーザーとワークロードにアクセス許可の付与を開始するには、多くの一般的なユースケースにアクセス許可を付与する*AWS 管理ポリシー*を使用します。これらは で使用できます AWS アカウント。ユースケースに固有の AWS カスタマー管理ポリシーを定義することで、アクセス許可をさらに減らすことをお勧めします。詳細については、*IAM ユーザーガイド* の [AWS マネージドポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) または [ジョブ機能のAWS マネージドポリシー](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html) を参照してください。
+ **最小特権を適用する** – IAM ポリシーでアクセス許可を設定する場合は、タスクの実行に必要な許可のみを付与します。これを行うには、特定の条件下で特定のリソースに対して実行できるアクションを定義します。これは、*最小特権*アクセス許可とも呼ばれています。IAM を使用して許可を適用する方法の詳細については、*IAM ユーザーガイド* の [IAM でのポリシーとアクセス許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html) を参照してください。
+ **IAM ポリシーで条件を使用してアクセスをさらに制限する** - ポリシーに条件を追加して、アクションやリソースへのアクセスを制限できます。たとえば、ポリシー条件を記述して、すべてのリクエストを SSL を使用して送信するように指定できます。条件を使用して、サービスアクションが などの特定の を通じて使用されている場合に AWS のサービス、サービスアクションへのアクセスを許可することもできます CloudFormation。詳細については、*IAM ユーザーガイド* の [IAM JSON ポリシー要素:条件](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) を参照してください。
+ **IAM アクセスアナライザー を使用して IAM ポリシーを検証し、安全で機能的な権限を確保する** - IAM アクセスアナライザー は、新規および既存のポリシーを検証して、ポリシーが IAM ポリシー言語 (JSON) および IAM のベストプラクティスに準拠するようにします。IAM アクセスアナライザーは 100 を超えるポリシーチェックと実用的な推奨事項を提供し、安全で機能的なポリシーの作成をサポートします。詳細については、*IAM ユーザーガイド* の [IAM Access Analyzer でポリシーを検証する](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html) を参照してください。
+ **多要素認証 (MFA) を要求する** – で IAM ユーザーまたはルートユーザーを必要とするシナリオがある場合は AWS アカウント、MFA をオンにしてセキュリティを強化します。API オペレーションが呼び出されるときに MFA を必須にするには、ポリシーに MFA 条件を追加します。詳細については、*IAM ユーザーガイド* の [MFA を使用した安全な API アクセス](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_configure-api-require.html) を参照してください。

IAM でのベストプラクティスの詳細については、*IAM ユーザーガイド* の [IAM でのセキュリティのベストプラクティス](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) を参照してください。

## 自分のアクセス許可の表示を IAM ユーザーに許可する
<a name="security_iam_id-based-policy-examples-view-own-permissions"></a>

この例では、ユーザーアイデンティティにアタッチされたインラインおよびマネージドポリシーの表示を 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": "*"
        }
    ]
}
```

## 「ユーザーの表示」アクセス許可を付与する
<a name="security_iam_id-based-policy-example-view-user-permissions"></a>

 AWS アカウントでユーザーまたは[グループ](https://docs.aws.amazon.com/IAM/latest/UserGuide/id.html#id_iam-groups)を作成するときに、付与するアクセス許可を指定する IAM ポリシーをそのグループまたはユーザーに関連付けることができます。

例えば、入門レベルの開発者グループを想定してみましょう。`Junior application developers` という名前の IAM グループを作成し、すべての入門レベルの開発者を含めることができます。次に、そのグループに対し、Amazon Connect のユーザーを表示するためのアクセス許可を付与するポリシーを関連付けます。このシナリオでは、以下のサンプルのようなポリシーを使用します。

------
#### [ JSON ]

****  

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

------

このサンプルポリシーは、`Action` 要素にリストされた API アクションへのアクセス許可を付与します。

**注記**  
ステートメントでユーザー ARN または ID を指定しない場合は、`Resource` 要素に \$1 ワイルドカードを使用してアクションにすべてのリソースを使用するためのアクセス許可も付与する必要があります。

## ユーザーに外部アプリケーションとの統合を許可する
<a name="security_iam_id-based-policy-examples-integrate"></a>

この例では、ユーザーが外部アプリケーション統合とやり取りすることを許可するポリシーの作成方法を示します。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowAllAppIntegrationsActions",
            "Effect": "Allow",
            "Action": [
                "app-integrations:ListEventIntegrations",
                "app-integrations:CreateEventIntegration",
                "app-integrations:GetEventIntegration",
                "app-integrations:UpdateEventIntegration",
                "app-integrations:DeleteEventIntegration",
                "app-integrations:ListDataIntegrations",
                "app-integrations:CreateDataIntegration",
                "app-integrations:GetDataIntegration",
                "app-integrations:UpdateDataIntegration",
                "app-integrations:DeleteDataIntegration"
            ],
            "Resource": "*" 
	}
	]
}
```

------

## タグに基づいて、Amazon Connect ユーザーの詳細表示および更新を行う
<a name="security_iam_id-based-policy-examples-view-widget-tags"></a>

IAM ポリシーでは、必要に応じて、ポリシーを有効にするタイミングを制御する条件を指定できます。例えば、テスト環境で作業している Amazon Connect ユーザーのみを更新する許可を、ユーザーに付与するためのポリシーを定義できます。

Amazon Connect に固有の条件を定義したり、すべてに適用される条件を定義したりできます AWS。詳細と AWS全体の条件のリストについては、IAM *ユーザーガイド*の「IAM [JSON ポリシー要素リファレンス](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html#Condition)」の「条件」を参照してください。

次のサンプルポリシーは、特定のタグを持つユーザーの「説明」および「更新」アクションを許可します。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "connect:DescribeUser",
                "connect:UpdateUser*"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/Department": "Test"
                }
            }            
        }
    ]
}
```

------

このポリシーは、「ユーザーの説明」と「ユーザーの更新」に関する許可を「Department: Test」というタグが付いた Amazon Connect ユーザーに対してのみ付与します。ここで「Department」はタグキーであり「Test」はタグ値です。

## タグに基づいて Amazon Connect ユーザーを作成する
<a name="connect-access-control-resources-example1"></a>

次のサンプルポリシーは、特定のリクエストタグを持つユーザーの作成アクションを許可します。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "connect:CreateUser",
                "connect:TagResource"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/Owner": "TeamA"
                }
            }
        }
    ]
}
```

------

このポリシーでは、「ユーザーの作成」と「リソースのタグ付け」が可能ですが、リクエストに「Owner: TeamA」というタグが必要です。

## Amazon AppIntegrations リソースの作成と表示
<a name="appintegration-resources-example1"></a>

次のポリシー例では、イベント統合の作成、一覧表示、および取得を許可しています。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "app-integrations:CreateEventIntegration",
                "app-integrations:GetEventIntegration",
                "app-integrations:ListEventIntegrations"
            ],
            "Resource": "*"
        }
    ]
}
```

------

## Connect AI エージェントアシスタントを作成して表示する
<a name="wisdom-resources-example1"></a>

次のサンプルポリシーでは、Connect AI エージェントアシスタントの作成、一覧表示、取得、削除を許可します。

------
#### [ JSON ]

****  

```
{
"Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
             "wisdom:CreateContent",
            "wisdom:DeleteContent",
            "wisdom:CreateKnowledgeBase",
            "wisdom:GetAssistant",
            "wisdom:GetKnowledgeBase",
            "wisdom:GetContent",
            "wisdom:GetRecommendations",
            "wisdom:GetSession",
            "wisdom:NotifyRecommendationsReceived",
            "wisdom:QueryAssistant",
            "wisdom:StartContentUpload",
            "wisdom:UpdateContent",
            "wisdom:UntagResource",
            "wisdom:TagResource",
            "wisdom:CreateSession"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/AmazonConnectEnabled": "True"
                }
            }
        },
        {
            "Action": [
                "wisdom:ListAssistants",
                "wisdom:ListKnowledgeBases"
            ],
            "Effect": "Allow",
            "Resource": "*"
        }
    ]
}
```

------

## アウトバウンドキャンペーンリソースを管理する
<a name="outboundcommunications-policy-example1"></a>

オンボーディングのアクセス許可: 次のサンプルポリシーでは、Amazon Connect インスタンスをアウトバウンドキャンペーンに対してオンボーディングすることができます。

```
"Sid": "VisualEditor0",
             "Effect": "Allow",
             "Action": [
                 "kms:DescribeKey",
                 "kms:CreateGrant"
             ],
             "Resource": [
                 "arn:aws:kms:region:account-id:key/key-id"
                   ]
        },
        {
             "Sid": "VisualEditor1",
             "Effect": "Allow",
             "Action": [
                 "connect:DescribeInstance"
             ],
             "Resource": [
          
                 "arn:aws:connect:region:account-id:instance/instance-id"
             ]
        },
        {
             "Sid": "VisualEditor2",
             "Effect": "Allow",
             "Action": [
                 "events:PutTargets",
                 "events:PutRule",
                 "iam:CreateServiceLinkedRole",
                 "iam:AttachRolePolicy",
                 "iam:PutRolePolicy",
                 "ds:DescribeDirectories",
                 "connect-campaigns:StartInstanceOnboardingJob",
                 "connect-campaigns:GetConnectInstanceConfig",
                 "connect-campaigns:GetInstanceOnboardingJobStatus",
                 "connect-campaigns:DeleteInstanceOnboardingJob",
                 "connect:DescribeInstanceAttribute",
                 "connect:UpdateInstanceAttribute",
                 "connect:ListInstances",
                 "kms:ListAliases"
             ],
             "Resource": "*"
        }
```

インスタンスに対してアウトバウンドキャンペーンを無効にするには、以下のアクセス許可を追加します。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "kms:DescribeKey",
                "kms:RetireGrant"
            ],
            "Resource": [
               "arn:aws:kms:us-east-1:111122223333:key/KeyId"
            ]
        },
        {
            "Sid": "VisualEditor1",
            "Effect": "Allow",
            "Action": [
                "events:DeleteRule",
                "events:RemoveTargets",
                "events:DescribeRule",
                "iam:DeleteRolePolicy",
                "events:ListTargetsByRule",
                "iam:DeleteServiceLinkedRole",
                "connect-campaigns:DeleteConnectInstanceConfig"
            ],
            "Resource": "*"
        }
    ]
}
```

------

管理アクセス許可: 次のサンプルポリシーでは、アウトバウンドキャンペーンに対するすべての読み取りおよび書き込み操作が可能です。

```
{
    "Sid": "AllowConnectCampaignsOperations",
    "Effect": "Allow",
    "Action": [
        "connect-campaigns:CreateCampaign",
        "connect-campaigns:DeleteCampaign",
        "connect-campaigns:DescribeCampaign",
        "connect-campaigns:UpdateCampaignName",
        "connect-campaigns:GetCampaignState"
        "connect-campaigns:UpdateOutboundCallConfig",
        "connect-campaigns:UpdateDialerConfig",
        "connect-campaigns:PauseCampaign",
        "connect-campaigns:ResumeCampaign",
        "connect-campaigns:StopCampaign",
        "connect-campaigns:GetCampaignStateBatch",
        "connect-campaigns:ListCampaigns"
    ],
    "Resource": "*"
}
```

ReadOnly アクセス許可: 次のポリシー例では、キャンペーンへの読み取り専用アクセスを許可します。

```
{
    "Sid": "AllowConnectCampaignsReadOnlyOperations",
    "Effect": "Allow",
    "Action": [
        "connect-campaigns:DescribeCampaign",
        "connect-campaigns:GetCampaignState",
        "connect-campaigns:GetCampaignStateBatch",
        "connect-campaigns:ListCampaigns"
     ],
    "Resource": "*",
}
```

タグベースのアクセス許可: 次のポリシー例では、タグを使用して特定の Amazon Connect インスタンスと統合されるキャンペーンにアクセスを制限します。ユースケースに応じて、さらに多くの権限を追加できます。

```
{
    "Sid": "AllowConnectCampaignsOperations",
    "Effect": "Allow",
    "Action": [
        "connect-campaigns:DescribeCampaign",
        "connect-campaigns:GetCampaignState"
    ],
    "Resource": "*",
    "Condition": {
        "StringEquals": {
             "aws:ResourceTag/owner": "arn:aws:connect:region:customer_account_id:instance/connect_instance_id"
         }
    }
}
```

**注記**  
`connect-campaigns:ListCampaigns` および `connect-campaigns:GetCampaignStateBatch` オペレーションは、タグにより制限することはできません。