Ejemplos de políticas de nivel de recursos de Amazon Connect
Amazon Connect admite permisos de nivel de recursos para los usuarios, de modo que puede especificar acciones para ellos en una instancia, como se muestra en las siguientes políticas.
Contenido
- Denegar las acciones eliminar y actualizar
- Permiso de acciones para integraciones con nombres específicos
- Permitir la acción "crear usuarios" pero denegarla si se le asigna a un perfil de seguridad específico
- Permiso para grabar acciones en un contacto
- Permiso o denegación de acciones de la API de cola para números de teléfono en una región de réplica
- Consulta de recursos específicos de Amazon AppIntegrations
- Concesión de acceso a Perfiles de clientes de Amazon Connect
- Concesión de acceso de solo lectura a los datos de Perfiles de clientes
- Consulta de Amazon Q in Connect solo para un asistente específico
- Concesión de acceso total a Amazon Connect Voice ID
- Concesión de acceso a los recursos de Campañas externas de Amazon Connect
- Restricción de la capacidad de búsqueda en las transcripciones analizadas por Amazon Connect Contact Lens
Denegar las acciones eliminar y actualizar
La siguiente política de ejemplo deniega las acciones “eliminar” y “actualizar” a los usuarios en una instancia de Amazon Connect. Utiliza un carácter comodín al final del ARN de usuario de Amazon Connect para que “eliminar usuario” y “actualizar usuario” se denieguen en el ARN de usuario completo (es decir, todos los usuarios de Amazon Connect de la instancia que se ha proporcionado, por ejemplo, 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/*" } ] }
Permiso de acciones para integraciones con nombres específicos
{ "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-*" } ] }
Permitir la acción "crear usuarios" pero denegarla si se le asigna a un perfil de seguridad específico
La siguiente política de ejemplo permite las acciones "create users" (crear usuarios), pero deniega explícitamente el uso de arn:aws:connect:us-west-2:123456789012:instance/00fbeee1-123e-111e-93e3-11111bfbfcc1/security-profile/11dtcggg1-123e-111e-93e3-11111bfbfcc17 como el parámetro del perfil de seguridad de la solicitud 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", } ] }
Permiso para grabar acciones en un contacto
La siguiente política de ejemplo permite “iniciar la grabación de contactos” en un contacto de una instancia específica. Como ContactID es dinámico, se usa *.
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "connect:StartContactRecording" ], "Resource": "arn:aws:connect:us-west-2:accountID:instance/instanceId/contact/*", "Effect": "Allow" } ] }
Configure una relación de confianza con accountID.
Se han definido las siguientes acciones para las API de grabación:
-
“connect:StartContactRecording”
-
“connect:StopContactRecording”
-
“connect:SuspendContactRecording”
-
“connect:ResumeContactRecording”
Permiso para más acciones de contacto en el mismo rol
Si se utiliza el mismo rol para llamar a otras API de contacto, puede enumerar las siguientes acciones de contacto:
-
GetContactAttributes
-
ListContactFlows
-
StartChatContact
-
StartOutboundVoiceContact
-
StopContact
-
UpdateContactAttributes
O utilice un carácter comodín para permitir todas las acciones de contacto, por ejemplo “connect:*”.
Permiso para más recursos
También puede utilizar un comodín para permitir más recursos. Por ejemplo, a continuación le mostramos cómo permitir todas las acciones de conexión en todos los recursos de contacto:
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "connect:*" ], "Resource": "arn:aws:connect:us-west-2:accountID:instance/*/contact/*", "Effect": "Allow" } ] }
Permiso o denegación de acciones de la API de cola para números de teléfono en una región de réplica
Las API CreateQueue y UpdateQueueOutboundCallerConfig contienen un campo de entrada denominado OutboundCallerIdNumberId
. Este campo representa un recurso de número de teléfono que puede solicitarse para un grupo de distribución de tráfico. Admite tanto el formato ARN V1 del número de teléfono que devuelve ListPhoneNumbers como el formato ARN V2 que devuelve ListPhoneNumbersV2.
A continuación, se indican los formatos ARN V1 y V2 que OutboundCallerIdNumberId
admite:
-
Formato ARN V1:
arn:aws:connect:
your-region
:your-account_id
:instance/instance_id
/phone-number/resource_id
-
Formato ARN V2:
arn:aws:connect:
your-region
:your-account_id
:phone-number/resource_id
nota
Le recomendamos que utilice el formato ARN V2. El formato ARN V1 quedará obsoleto en el futuro.
Suministro de ambos formatos de ARN para los recursos de números de teléfono en la región de réplica
Si el número de teléfono está solicitado para un grupo de distribución de tráfico, para permitir o denegar correctamente el acceso a las acciones de la API de cola para los recursos de número de teléfono mientras opera en la región de réplica, debe proporcionar el recurso de número de teléfono en los formatos ARN V1 y V2. Si proporciona el recurso del número de teléfono solo en un formato ARN, no se producirá el comportamiento correcto de permitir o denegar al operar en la región de réplica.
Ejemplo 1: denegar el acceso a CreateQueue
Por ejemplo, está operando en la región de réplica us-west-2 con cuenta de
123456789012
e instancia aaaaaaaa-bbbb-cccc-dddd-0123456789012
. Desea denegar el acceso a la API CreateQueue cuando el valor OutboundCallerIdNumberId
es un número de teléfono solicitado para un grupo de distribución de tráfico con ID de recurso aaaaaaaa-eeee-ffff-gggg-0123456789012
. En este escenario debe utilizar la siguiente política:
{ "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" ] } ] }
Donde us-west-2 es la región donde se realiza la solicitud.
Ejemplo 2: permitir el acceso únicamente a UpdateQueueOutboundCallerConfig
Por ejemplo, está operando en la región de réplica us-west-2 con cuenta de 123456789012
e instancia aaaaaaaa-bbbb-cccc-dddd-0123456789012
. Solo desea permitir el acceso a la API UpdateQueueOutboundCallerConfig cuando el valor OutboundCallerIdNumberId
sea un número de teléfono solicitado a un grupo de distribución de tráfico con ID de recurso aaaaaaaa-eeee-ffff-gggg-0123456789012
. En este escenario debe utilizar la siguiente política:
{ "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" ] } ] }
Consulta de recursos específicos de Amazon AppIntegrations
La siguiente política de ejemplo permite recuperar integraciones de eventos específicas.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "app-integrations:GetEventIntegration" ], "Resource": "arn:aws:app-integrations:us-west-2:accountID:event-integration/Name" } ] }
Concesión de acceso a Perfiles de clientes de Amazon Connect
Perfiles de clientes de Amazon Connect utiliza profile
como prefijo para las acciones en lugar de connect
. La siguiente política concede acceso total a un dominio específico en Perfiles de clientes de Amazon Connect.
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "profile:*" ], "Resource": "arn:aws:profile:us-west-2:accountID:domains/domainName", "Effect": "Allow" } ] }
Configure una relación de confianza con accountID para el dominio domainName.
Concesión de acceso de solo lectura a los datos de Perfiles de clientes
A continuación, se muestra un ejemplo para conceder acceso de lectura a los datos de Perfiles de clientes de Amazon Connect.
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "profile:SearchProfiles", "profile:ListObjects" ], "Resource": "arn:aws:profile:us-west-2:accountID:domains/domainName", "Effect": "Allow" } ] }
Consulta de Amazon Q in Connect solo para un asistente específico
La siguiente política de ejemplo permite consultar solo un asistente específico.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "wisdom:QueryAssistant " ], "Resource": "arn:aws:wisdom:us-west-2:accountID:assistant/assistantID" } ] }
Concesión de acceso total a Amazon Connect Voice ID
Amazon Connect Voice ID utiliza voiceid
como prefijo para las acciones en lugar de “connect”. La siguiente política concede acceso total a un dominio específico en Amazon Connect Voice ID:
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "voiceid:*" ], "Resource": "arn:aws:voiceid:us-west-2:accountID:domain/domainName", "Effect": "Allow" } ] }
Configure una relación de confianza con accountID para el dominio domainName.
Concesión de acceso a los recursos de Campañas externas de Amazon Connect
Las campañas externas utilizan connect-campaign
como prefijo para las acciones en lugar de connect
. La siguiente política concede acceso total a una campaña externa específica.
{ "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", }
Restricción de la capacidad de búsqueda en las transcripciones analizadas por Amazon Connect Contact Lens
La siguiente política permite buscar y describir contactos, pero no permite buscar un contacto mediante las transcripciones analizadas por 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" ] } } } ] }