Gestion des identités et des accès dans IVS Chat - Amazon IVS

Gestion des identités et des accès dans IVS Chat

AWS Identity and Access Management (IAM) est un service AWS qui permet à un administrateur de comptes de contrôler l’accès aux ressources AWS en toute sécurité. Consultez Gestion des identités et des accès dans IVS dans le Guide de l'utilisateur du streaming à faible latence IVS.

Public ciblé

Votre utilisation d’IAM diffère selon les tâches réalisées dans Amazon IVS. Consultez Audience dans le Guide de l'utilisateur du streaming à faible latence IVS.

Fonctionnement d’Amazon IVS avec IAM

Avant de pouvoir effectuer des demandes d’API Amazon IVS, vous devez créer une ou plusieurs identités IAM (utilisateurs, groupes et rôles) ainsi que des politiques IAM, puis rattacher les politiques aux identités. La propagation des autorisations peut prendre quelques minutes. Jusque-là, les demandes d’API sont rejetées.

Pour une vue d’ensemble du fonctionnement d’Amazon IVS avec IAM, veuillez consulter la rubrique Services AWS qui fonctionnent avec IAM dans le Guide de l’utilisateur IAM.

Identités

Vous pouvez créer des identités IAM pour fournir une authentification aux personnes et aux processus de votre compte AWS. Les groupes IAM sont des collections d’utilisateurs IAM que vous gérez en tant qu’unité. Consultez la section Identités (utilisateurs, groupes et rôles) du Guide de l’utilisateur IAM.

Politiques

Les politiques sont des documents de politique d’autorisation JSON composés d’éléments. Consultez Politiques dans le Guide de l'utilisateur du streaming à faible latence IVS.

Chat Amazon IVS prend en charge trois éléments :

  • Actions : les actions de politique pour Chat Amazon IVS utilisent le préfixe ivschat avant l’action. Par exemple, pour donner l’autorisation à une personne de créer une salle de Chat Amazon IVS avec la méthode d’API de Chat Amazon IVS CreateRoom, vous devez inclure l’action ivschat:CreateRoom dans la politique destinée à cette personne. Les déclarations de politique doivent inclure un élément Action ou NotAction.

  • Ressources : la ressource de salle de Chat Amazon IVS possède le format d’ARN suivant :

    arn:aws:ivschat:${Region}:${Account}:room/${roomId}

    Par exemple, pour spécifier la salle VgNkEJgOVX9N dans votre instruction, utilisez l’ARN suivant :

    "Resource": "arn:aws:ivschat:us-west-2:123456789012:room/VgNkEJgOVX9N"

    Certaines actions Chat Amazon IVS, comme celles destinées à la création de ressources, ne peuvent pas être exécutées sur une ressource spécifique. Dans ce cas, vous devez utiliser le caractère générique (*) :

    "Resource":"*"
  • Conditions : Chat Amazon IVS prend en charge certaines clés de condition globales, soit aws:RequestTag, aws:TagKeys et aws:ResourceTag.

Vous pouvez utiliser des variables pour créer des espaces réservés dans une politique. Par exemple, vous pouvez accorder à un utilisateur IAM l’autorisation d’accéder à une ressource uniquement si elle est balisée avec son nom d’utilisateur IAM. Consultez la section Variables et balises du Guide de l’utilisateur IAM.

Amazon IVS propose des politiques gérées par AWS qui peuvent être utilisées pour accorder un ensemble préconfiguré d’autorisations aux identités (lecture seule ou accès complet). Vous pouvez choisir d’utiliser des politiques gérées au lieu des politiques basées sur l’identité présentées ci-dessous. Pour plus de détails, consultez Politiques gérées pour Chat Amazon IVS.

Autorisation basée sur les balises Amazon IVS

Vous pouvez rattacher des balises aux ressources Chat Amazon IVS ou transmettre des balises dans une demande à Chat Amazon IVS. Pour contrôler l’accès basé sur des balises, vous devez fournir les informations des balises dans l’élément de condition d’une politique utilisant les clés de condition aws:ResourceTag/key-name, aws:RequestTag/key-name ou aws:TagKeys. Pour plus d'informations sur le balisage des ressources Chat Amazon IVS, consultez la section « Balisage » de la Référence de l'API de Chat IVS.

Rôles

Consultez les sections Rôles IAM et Informations d’identification de sécurité temporaires du Guide de l’utilisateur IAM.

Un rôle IAM est une entité au sein de votre compte AWS qui dispose d’autorisations spécifiques.

Amazon IVS est compatible avec l’utilisation des informations d’identification de sécurité temporaires. Vous pouvez utiliser des informations d’identification temporaires pour vous connecter à l’aide de la fédération, endosser un rôle IAM ou encore pour endosser un rôle intercompte. Vous obtenez des informations d’identification de sécurité temporaires en appelant les opérations d’API AWS Security Token Service telles que AssumeRole ou GetFederationToken.

Accès privilégié et non privilégié

Les ressources API ont un accès privilégié. L’accès à la lecture non privilégié peut être configuré via des canaux privés ; consultez Configurer des canaux privés IVS.

Bonnes pratiques pour l’utilisation des politiques

Consultez les Bonnes pratiques IAM dans le Guide de l’utilisateur IAM.

Les politiques basées sur l’identité sont très puissantes. Elles déterminent si une personne peut créer, consulter ou supprimer des ressources Amazon IVS sur votre compte. Ces actions peuvent entraîner des frais pour votre compte AWS. Suivez ces recommandations :

  • Accorder le privilège le plus faible : lorsque vous créez des politiques personnalisées, accordez uniquement les autorisations nécessaires à l’exécution d’une tâche. Commencez avec un minimum d’autorisations et accordez-en d’autres si nécessaire. Cette méthode est plus sûre que de commencer avec des autorisations trop permissives et d’essayer de les restreindre plus tard. Plus précisément, réservez ivschat:* à l’accès administrateur ; ne l’utilisez pas dans les applications.

  • Activer la MFA pour les opérations confidentielles — Pour plus de sécurité, demandez aux utilisateurs IAM d’utiliser la Multi-Factor Authentication (MFA) pour accéder à des ressources ou à des opérations d’API confidentielles.

  • Utiliser des conditions de politique pour davantage de sécurité : définissez les conditions dans lesquelles vos politiques basées sur l’identité autorisent l’accès à une ressource, dans la mesure où cela reste pratique. Par exemple, vous pouvez rédiger les conditions pour spécifier une plage d’adresses IP autorisées d’où peut provenir une demande. Vous pouvez également écrire des conditions pour autoriser les requêtes uniquement à une date ou dans une plage de temps spécifiée, ou pour imposer l’utilisation de SSL ou de MFA.

Exemples de politiques basées sur l’identité

Utiliser la console Amazon IVS

Pour accéder à la console Amazon IVS, vous devez disposer d’un ensemble minimum d’autorisations qui vous permet de répertorier et d’afficher les détails des ressources Chat Amazon IVS sur votre compte AWS. Si vous créez une politique basée sur l’identité qui est plus restrictive que l’ensemble minimum d’autorisations requis, la console ne fonctionnera pas comme prévu pour les entités tributaires de cette politique. Pour garantir l’accès à la console Amazon IVS, rattachez la politique suivante aux identités (consultez la section Ajout et suppression d’autorisations IAM du Guide de l’utilisateur IAM).

Les quatre parties de la politique suivante donnent accès à :

  • Tous les points de terminaison de l'API de Chat Amazon IVS

  • Vos Service Quotas Chat Amazon IVS

  • Liste des ressources lambdas et ajout d’autorisations pour la ressource lambda choisie pour la modération Amazon IVS Chat

  • Amazon Cloudwatch pour obtenir des métriques pour votre session de chat

{ "Version": "2012-10-17", "Statement": [ { "Action": "ivschat:*", "Effect": "Allow", "Resource": "*" }, { "Action": [ "servicequotas:ListServiceQuotas" ], "Effect": "Allow", "Resource": "*" }, { "Action": [ "cloudwatch:GetMetricData" ], "Effect": "Allow", "Resource": "*" }, { "Action": [ "lambda:AddPermission", "lambda:ListFunctions" ], "Effect": "Allow", "Resource": "*" } ] }

Politique basée sur les ressources pour Amazon IVS Chat

Vous devez accorder au service du kit SDK Amazon Chat l’autorisation d’appeler votre ressource lambda. Pour ce faire, suivez les instructions de la rubrique Utilisation de stratégies basées sur les ressources pour AWS Lambda (dans le Guide du développeur AWS Lambda) et remplissez les champs comme indiqué ci-dessous.

Pour contrôler l’accès à votre ressource lambda, vous pouvez utiliser des conditions basées sur :

  • SourceArn : notre exemple de politique utilise un caractère générique (*) pour permettre à toutes les salles de votre compte d’appeler la ressource lambda. Vous pouvez également spécifier une salle dans votre compte pour autoriser uniquement cette salle à appeler la ressource lambda.

  • SourceAccount : dans l’exemple de stratégie ci-dessous, l’ID de compte AWS est 123456789012.

{ "Version": "2012-10-17", "Statement": [ { "Principal": { "Service": "ivschat.amazonaws.com" }, "Action": [ "lambda:InvokeFunction" ], "Effect": "Allow", "Resource": "arn:aws:lambda:us-west-2:123456789012:function:name", "Condition": { "StringEquals": { "AWS:SourceAccount": "123456789012" }, "ArnLike": { "AWS:SourceArn": "arn:aws:ivschat:us-west-2:123456789012:room/*" } } } ] }

Résolution des problèmes

Consultez la section Dépannage dans le Guide de l'utilisateur du streaming à faible latence IVS pour obtenir des informations sur le diagnostic et la résolution des problèmes courants que vous pouvez rencontrer lorsque vous travaillez avec Chat Amazon IVS et IAM.