Restreindre les AWS ressources qui peuvent être associées à Amazon Connect - Amazon Connect

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Restreindre les AWS ressources qui peuvent être associées à Amazon Connect

Chaque instance Amazon Connect est associée à un rôle lié à un service IAM lors de sa création. Amazon Connect peut s'intégrer à d'autres services AWS pour des cas d'utilisation tels que le stockage des enregistrements d'appels (compartiment Amazon S3), les robots en langage naturel (robots Amazon Lex) et le streaming de données (Amazon Kinesis Data Streams). Amazon Connect assume le rôle lié au service pour interagir avec ces autres services. La politique est d'abord ajoutée au rôle lié au service dans le cadre des API correspondantes du service Amazon Connect (qui sont à leur tour appelées par le site Web AWS d'administration). Par exemple, si vous souhaitez utiliser un certain compartiment Amazon S3 avec votre instance Amazon Connect, le compartiment doit être transmis à l' AssociateInstanceStorageConfigAPI.

Pour connaître l'ensemble des actions IAM définies par Amazon Connect, consultez Actions définies par Amazon Connect.

Voici quelques exemples de la manière de limiter l'accès à d'autres ressources susceptibles d'être associées à une instance Amazon Connect. Ils doivent être appliqués à l'utilisateur ou au rôle qui interagit avec les API Amazon Connect ou le site Web d'administration Amazon Connect.

Note

Une politique comportant une instruction explicite Deny remplacerait la politique Allow décrite dans ces exemples.

Pour en savoir plus sur les ressources, les clés de condition et les API dépendantes que vous pouvez utiliser pour limiter l'accès, consultez Actions, ressources et clés de condition pour Amazon Connect.

Exemple 1 : limiter les compartiments Amazon S3 pouvant être associés à une instance Amazon Connect

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "connect:UpdateInstanceStorageConfig", "connect:AssociateInstanceStorageConfig" ], "Resource": "arn:aws:connect:region:account-id:instance/instance-id", "Condition": { "StringEquals": { "connect:StorageResourceType": "CALL_RECORDINGS" } } }, { "Sid": "VisualEditor1", "Effect": "Allow", "Action": [ "iam:PutRolePolicy", "s3:GetBucketAcl", "s3:GetBucketLocation" ], "Resource": [ "arn:aws:iam::account-id:role/aws-service-role/connect.amazonaws.com/*", "arn:aws:s3:::s3-bucket-name" ] }, { "Sid": "VisualEditor2", "Effect": "Allow", "Action": "s3:ListAllMyBuckets", "Resource": "*" } ] }

Cet exemple permet à un principal IAM d'associer un compartiment Amazon S3 pour les enregistrements d'appels de l'ARN d'instance Amazon Connect indiqué et un compartiment Amazon S3 spécifique nommé my-connect-recording-bucket. Les actions AttachRolePolicy et PutRolePolicy sont limitées au rôle lié au service Amazon Connect (un caractère générique est utilisé dans cet exemple, mais vous pouvez fournir l'ARN du rôle pour l'instance si nécessaire).

Note

Pour utiliser une AWS KMS clé afin de chiffrer les enregistrements de ce compartiment, une politique supplémentaire est nécessaire.

Exemple 2 : limiter les fonctions  AWS Lambda pouvant être associées à une instance Amazon Connect

AWS Lambda les fonctions sont associées à une instance Amazon Connect, mais le rôle lié au service Amazon Connect n'est pas utilisé pour les invoquer et n'est donc pas modifié. Au lieu de cela, une politique est ajoutée à la fonction via l'API lambda:AddPermission, qui permet à l'instance Amazon Connect indiquée d'invoquer la fonction.

Pour limiter les fonctions pouvant être associées à une instance Amazon Connect, vous devez spécifier l'ARN de la fonction Lambda qu'un utilisateur peut utiliser pour invoquer lambda:AddPermission :

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "connect:AssociateLambdaFunction", "lambda:AddPermission" ], "Resource": [ "arn:aws:connect:region:account-id:instance/instance-id", "arn:aws:lambda:*:*:function:my-function" ] } ] }

Exemple 3 : limiter les flux Amazon Kinesis Data Streams pouvant être associés à une instance Amazon Connect

Cet exemple suit un modèle similaire à celui d'Amazon S3. Il limite les flux Kinesis Data Streams spécifiques qui peuvent être associés à une instance Amazon Connect donnée pour la livraison des enregistrements de contact.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "connect:UpdateInstanceStorageConfig", "connect:AssociateInstanceStorageConfig" ], "Resource": "arn:aws:connect:region:account-id:instance/instance-id", "Condition": { "StringEquals": { "connect:StorageResourceType": "CONTACT_TRACE_RECORDS" } } }, { "Sid": "VisualEditor1", "Effect": "Allow", "Action": [ "kinesis:DescribeStream", "iam:PutRolePolicy" ], "Resource": [ "arn:aws:iam::account-id:role/aws-service-role/connect.amazonaws.com/*", "arn:aws:kinesis:*:account-id:stream/stream-name" ] }, { "Sid": "VisualEditor2", "Effect": "Allow", "Action": "kinesis:ListStreams", "Resource": "*" } ] }