Amazon Connect のリソースレベルのポリシー例 - Amazon Connect

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

Amazon Connect のリソースレベルのポリシー例

Amazon Connect はユーザーに対するリソースレベルのアクセス許可をサポートしており、以下のポリシーに示すように、インスタンスに対してユーザーのアクションを指定することができます。

「削除」および「更新」アクションを拒否する

次のポリシー例は、1 つの Amazon Connect インスタンス内のユーザーに対し、「削除」および「更新」のアクションを拒否しています。この例では、Amazon Connect ユーザー ARN の末尾にワイルドカードを使用して、完全なユーザー ARN (これは、指定されたインスタンス内のすべての Amazon Connect ユーザーを表すもので、例えば、arn:aws:connect:us-east-1:123456789012:instance/00fbeee1-123e-111e-93e3-11111bfbfcc1/agent/00dtcddd1-123e-111e-93e3-11111bfbfcc1) に対して、「ユーザーの削除」と「ユーザーの更新」が拒否されるようにします。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "connect:DeleteUser", "connect:UpdateUser*" ], "Resource": "arn:aws:connect:us-east-1:123456789012:instance/00fbeee1-123e-111e-93e3-11111bfbfcc1/agent/*" } ] }

特定の名前の統合においてアクションを許可する

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAllAppIntegrationsActions", "Effect": "Allow", "Action": [ "app-integrations:ListEventIntegrations", "app-integrations:CreateEventIntegration", "app-integrations:GetEventIntegration", "app-integrations:UpdateEventIntegration", "app-integartions:DeleteEventIntegration" ], "Resource":"arn:aws:appintegrations:*:*:event-integration/MyNamePrefix-*" } ] }

「ユーザーの作成」を許可するが、特定のセキュリティプロファイルに割り当てられている場合は拒否する

次のサンプルポリシーでは、「ユーザーの作成」を許可しますが、CreateUserリクエストのセキュリティプロファイルのパラメータとして arn:aws:connect:us-west-2:123456789012:instance/00fbeee1-123e-111e-93e3-11111bfbfcc1/security-profile/11dtcggg1-123e-111e-93e3-11111bfbfcc17 を使用することを明示的に拒否します。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "connect:CreateUser" ], "Resource": "*", }, { "Effect": "Deny", "Action": [ "connect:CreateUser" ], "Resource": "arn:aws:connect:us-west-2:123456789012:instance/00fbeee1-123e-111e-93e3-11111bfbfcc17/security-profile/11dtcggg1-123e-111e-93e3-11111bfbfcc17", } ] }

通話の記録アクションを許可する

次のサンプルポリシーでは、特定のインスタンスでの問い合わせに対し「通話の記録を開始する」ことが許可されています。contactID は動的であるため、* が使用されています。

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "connect:StartContactRecording" ], "Resource": "arn:aws:connect:us-west-2:accountID:instance/instanceId/contact/*", "Effect": "Allow" } ] }

accountID を使用した信頼関係の設定。

記録 API には、以下のアクションが定義されています。

  • 「connect:StartContactRecording」

  • 「connect:StopContactRecording」

  • 「connect:SuspendContactRecording」

  • 「connect:ResumeContactRecording」

複数の問い合わせアクションを同じロールで許可する

複数の問い合わせ API の呼び出しで同じロールが使用されている場合には、以下の問い合わせアクションをリストします。

  • GetContact属性

  • ListContactフロー

  • StartChat連絡先

  • StartOutboundVoiceContact

  • StopContact

  • UpdateContact属性

または、ワイルドカード (例えば、connect:*) を使用して、すべての問い合わせアクションを許可します。

その他のリソースを許可する

ワイルドカードを使用して、より多くのリソースを許可することもできます。例えば、すべての問い合わせリソースに対するすべての接続アクションを許可する方法は次のとおりです。

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "connect:*" ], "Resource": "arn:aws:connect:us-west-2:accountID:instance/*/contact/*", "Effect": "Allow" } ] }

レプリカリージョンの電話番号に対するキュー API アクションを許可または拒否します。

CreateQueue および UpdateQueueOutboundCallerConfig APIs には、 という名前の入力フィールドが含まれていますOutboundCallerIdNumberId。このフィールドは、トラフィック分散グループに請求できる電話番号リソースを表します。Numbers によって返される電話番号 V1 ARN 形式と NumbersV2 によって返される V2 ARN ListPhoneNumbersV2形式の両方をサポートしています。 ListPhone

OutboundCallerIdNumberId がサポートする V1 と V2 の ARN フォーマットは次のとおりです。

  • V1 ARN フォーマット:arn:aws:connect:your-region:your-account_id:instance/instance_id/phone-number/resource_id

  • V2 ARN フォーマット:arn:aws:connect:your-region:your-account_id:phone-number/resource_id

注記

V2 ARN フォーマットの使用をお勧めします。V1 ARN フォーマットは将来廃止される予定です。

レプリカリージョンの電話番号リソースには、両方の ARN フォーマットを提供してください。

電話番号がトラフィック分散グループに対して要求されている場合、レプリカリージョンでの操作中に電話番号リソースのキュー API アクションへのアクセスを正しく許可/拒否するには、電話番号リソースは V1 と V2 の両方の ARN フォーマットで提供する必要があります。電話番号リソースを 1 つの ARN フォーマットでのみ指定すると、レプリカリージョンでの操作中に許可/拒否が正しく動作しません。

例 1: へのアクセスを拒否する CreateQueue

たとえば、レプリカリージョン us-west-2 を 123456789012 とインスタンス aaaaaaaa-bbbb-cccc-dddd-0123456789012 で運営しています。OutboundCallerIdNumberId 値がリソース ID を持つトラフィック分散グループに申請された電話番号である場合、CreateQueueAPI へのアクセスを拒否したいaaaaaaaa-eeee-ffff-gggg-0123456789012。ただし、このシナリオでは、次のポリシーを使用する必要があります。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyCreateQueueForSpecificNumber", "Effect": "Deny", "Action": "connect:CreateQueue", "Resource": [ "arn:aws:connect:us-east-1:123456789012:phone-number/aaaaaaaa-eeee-ffff-gggg-0123456789012", "arn:aws:connect:us-west-2:123456789012:instance/aaaaaaaa-bbbb-cccc-dddd-0123456789012/phone-number/aaaaaaaa-eeee-ffff-gggg-0123456789012" ] } ] }

ここで、us-west-2 はリクエストが行われているリージョンです。

例 2: へのアクセスのみを許可する UpdateQueueOutboundCallerConfig

たとえば、レプリカリージョン us-west-2 を 123456789012 とインスタンス aaaaaaaa-bbbb-cccc-dddd-0123456789012 で運営しています。UpdateQueueOutboundCallerConfig API へのアクセスを許可するのは、OutboundCallerIdNumberId値がリソース ID を持つトラフィック分散グループに申請された電話番号である場合に限りますaaaaaaaa-eeee-ffff-gggg-0123456789012。ただし、このシナリオでは、次のポリシーを使用する必要があります。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "OnlyAllowUpdateQueueOutboundCallerConfigForSpecificNumber", "Effect": "Allow", "Action": "connect:UpdateQueueOutboundCallerConfig", "Resource": [ "arn:aws:connect:us-east-1:123456789012:phone-number/aaaaaaaa-eeee-ffff-gggg-0123456789012", "arn:aws:connect:us-west-2:123456789012:instance/aaaaaaaa-bbbb-cccc-dddd-0123456789012/phone-number/aaaaaaaa-eeee-ffff-gggg-0123456789012" ] } ] }

特定の Amazon AppIntegrations リソースを表示する

次のポリシー例では、特定のイベント統合の取得を許可します。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "app-integrations:GetEventIntegration" ], "Resource": "arn:aws:app-integrations:us-west-2:accountID:event-integration/Name" } ] }

Amazon Connect Customer Profiles にアクセス許可を付与する

Amazon Connect Customer Profiles では、アクションのプレフィックスとして、connect の代わりに profile を使用します。以下のポリシーでは、Amazon Connect Customer Profiles 内の特定のドメインへの完全なアクセス許可が付与されます。

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "profile:*" ], "Resource": "arn:aws:profile:us-west-2:accountID:domains/domainName", "Effect": "Allow" } ] }

accountID と domainName ドメインの間での信頼関係をセットアップします。

Customer Profiles のデータの読み取り専用アクセス許可を付与する

以下は、Amazon Connect Customer Profiles にあるデータに対する読み取りアクセスを許可する例です。

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "profile:SearchProfiles", "profile:ListObjects" ], "Resource": "arn:aws:profile:us-west-2:accountID:domains/domainName", "Effect": "Allow" } ] }

特定のアシスタントについてのみ Amazon Q in Connect をクエリする

次のポリシー例では、特定のアシスタントのみにクエリを許可します。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "wisdom:QueryAssistant " ], "Resource": "arn:aws:wisdom:us-west-2:accountID:assistant/assistantID" } ] }

Amazon Connect Voice ID への完全なアクセス権を付与する

Amazon Connect Voice ID は、アクションのプレフィックスとして、connect の代わりに voiceid を指定します。次のポリシーでは、Amazon Connect Voice ID 内の特定のドメインへの完全なアクセス権を付与します。

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "voiceid:*" ], "Resource": "arn:aws:voiceid:us-west-2:accountID:domain/domainName", "Effect": "Allow" } ] }

accountID と domainName ドメインの間での信頼関係をセットアップします。

Amazon Connect アウトバウンドキャンペーンのリソースへのアクセスを付与する

アウトバウンドキャンペーンでは、connect の代わりに connect-campaign がアクションのプレフィックスとして使用されます。次のポリシーは、特定のアウトバウンドキャンペーンへのフルアクセスを付与します。

{ "Sid": "AllowConnectCampaignsOperations", "Effect": "Allow", "Action": [ "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" ], "Resource": "arn:aws:connect-campaigns:us-west-2:accountID:campaign/campaignId", }

Amazon Connect Contact Lens によって分析されたトランスクリプトを検索する機能を制限する

次のポリシーでは、コンタクトを検索して説明することはできますが、Amazon Connect Contact Lens によって分析されたトランスクリプトを使用したコンタクトの検索は拒否されます。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "connect:DescribeContact" ], "Resource": "arn:aws:connect:region:account-id:instance/instance-id/contact/*" }, { "Sid": "VisualEditor1", "Effect": "Allow", "Action": [ "connect:SearchContacts" ], "Resource": "arn:aws:connect:region:account-id:instance/instance-id" }, { "Sid": "VisualEditor2", "Effect": "Deny", "Action": [ "connect:SearchContacts" ], "Resource": "arn:aws:connect:region:account-id:instance/instance-id", "Condition": { "ForAnyValue:StringEquals": { "connect:SearchContactsByContactAnalysis": [ "Transcript" ] } } } ] }