本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Amazon Connect 资源级策略示例
Amazon Connect 支持用户的资源级权限,因此您可以针对实例指定他们的操作,如以下策略所示。
内容
拒绝对 Amazon Connect 实例执行的所有操作
Amazon Connect 实例是 Amazon Connect 中的顶级资源。所有其他子资源均在其范围内创建。要拒绝对 Amazon Connect 实例中的所有资源执行所有操作,您可以使用以下方法之一:
-
使用
connect:instanceId
上下文密钥。 -
使用实例 ARN 后跟通配符 (*)。
以下示例策略拒绝实例 ID 为 00fbeee1-123e-111e-93e3-11111bfbfcc1 的实例的所有连接操作。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "connect:*" ], "Resource": "*" }, "Condition": { "StringEquals": { "connect:instanceId": "00fbeee1-123e-111e-93e3-11111bfbfcc1" } } ] }
或者,您可以通过指定实例 ARN 和通配符 (*) 来拒绝所有操作。以下示例策略拒绝对带有实例 AR arn:aws:connect:us-east-1:123456789012:instance/00fbeee1-123e-111e-93e3-11111bfbfcc1
N 的实例执行所有连接操作。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "connect:*" ], "Resource": "arn:aws:connect:us-east-1:123456789012:instance/00fbeee1-123e-111e-93e3-11111bfbfcc1*" } ] }
拒绝“删除”和“更新”操作
以下策略示例拒绝一个 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-*" } ] }
允许“创建用户”,但如果您被分配到特定的安全配置文件则拒绝该操作
以下示例策略允许 “创建用户”,但明确拒绝使用 arn: aws: connect: us-west-2:123456789012:instance/00fbeee1-123e-111e-93e3-11111bfbfcc1/security-profile/11dtcgg1-123e-111e-111e-111bfbfcc17 作为请求中安全配置文件的参数。CreateUser
{ "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 的信任关系。
为录制定义了以下操作 APIs:
-
“连接:StartContactRecording”
-
“连接:StopContactRecording”
-
“连接:SuspendContactRecording”
-
“连接:ResumeContactRecording”
允许在同一个角色中执行更多联系人操作
如果使用相同的角色呼叫其他联系人 APIs,则可以列出以下联系人操作:
-
GetContactAttributes
-
ListContactFlows
-
StartChatContact
-
StartOutboundVoiceContact
-
StopContact
-
UpdateContactAttributes
或者使用通配符允许所有联系人操作,例如:“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
。此字段表示可以向流量分配组申请的电话号码资源。它既支持返回的电话号码 V1 ARN 格式,也支持 V2 返回ListPhoneNumbers的 V2 ARN 格式。ListPhoneNumbers
以下是 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 格式的电话号码资源。如果您仅以一种 ARN 格式提供电话号码资源,则在副本区域中操作时,它不会导致正确的允许/拒绝行为。
示例 1:拒绝访问 CreateQueue
例如,您使用账户
123456789012
和实例 aaaaaaaa-bbbb-cccc-dddd-0123456789012
在副本区域 us-west-2 中运行。当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
例如,您使用账户 123456789012
和实例 aaaaaaaa-bbbb-cccc-dddd-0123456789012
在副本区域 us-west-2 中运行。只有当OutboundCallerIdNumberId
值是向具有资源 ID 的流量分配组声明的电话号码时,您才希望允许访问 UpdateQueueOutboundCallerConfigAPI 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 使用 profile
(而不是 connect
)作为操作的前缀。以下策略授予对 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 的 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 使用 voiceid
(而不是 connect)作为操作的前缀。以下策略授予对 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-campaign
(而不是 connect
)作为操作的前缀。以下策略授予对特定出站活动的完全访问权限。
{ "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" ] } } } ] }