Aperçu de la création de jetons

Afin d'authentifier un utilisateur qui se connecte à une session, la page de l'utilisateur doit transmettre un jeton avec l'App ID. Vous générez un jeton pour chaque utilisateur qui tente de se connecter à une session.

Pour plus d'informations sur la connexion, voir la documentation sur rejoindre une session.

Rôles

Chaque jeton se voit attribuer un rôlequi détermine les capacités du client qui se connecte à l'aide de ce jeton. Il existe trois rôles :

  • Abonné - Les clients qui se connectent avec un jeton d'abonné peuvent se connecter à des sessions et s'abonner aux flux d'autres clients. Ils ne peuvent pas publier leurs propres flux dans une session.
  • Éditeur - Les clients qui se connectent avec un jeton d'éditeur peuvent se connecter à des sessions, publier des flux audio-vidéo dans la session et s'abonner aux flux d'autres clients.
  • Éditeur uniquement - Les clients qui se connectent avec un jeton de publication uniquement peuvent se connecter à la session et publier des flux audio-vidéo dans la session, mais ils ne peuvent pas s'abonner aux flux des autres clients. En outre, les clients qui se connectent à l'aide d'un jeton de publication uniquement les clients qui se connectent avec un jeton de publication uniquement ne peuvent pas l'envoi de signaux. Remarque : Actuellement, la création de jetons réservés aux éditeurs est prise en charge par les SDK du serveur.
  • Modérateur - En plus de publier des flux et de s'y abonner, les modérateurs se connectent à un client à l'aide de la fonction SDK clients peut forcer d'autres clients à se déconnecter d'une session ou à cesser de publier des flux audio-vidéo. (Tout client peut être forcé à se déconnecter ou à cesser de publier, mais seul un modérateur utilisant les SDK clients peut exécuter ces fonctions de modération). En outre, les modérateurs connectés peuvent forcer un ou plusieurs flux de la session à couper le son publié.

Dates d'expiration

Les jetons expirent après une période déterminée (jusqu'à 30 jours). Vous pouvez spécifier la période d'expiration lorsque vous générez le jeton.

Données de connexion

Pour chaque jeton, vous pouvez ajouter une chaîne contenant des métadonnées décrivant le client. Par exemple, vous pouvez transmettre l'ID utilisateur, le nom ou d'autres données décrivant le client. Vous pouvez obtenir ces données à partir d'une base de données côté serveur ou de données fournies par le client, en fonction de votre application. La longueur de la chaîne est limitée à 1000 caractères. Ces données ne peuvent pas être mises à jour une fois qu'elles sont définies.

Ne pas utiliser d'informations personnelles dans les données symboliques - Les métadonnées du jeton sont transmises à tous les utilisateurs de la session et sont également lisibles dans les journaux du client vidéo de Vonage. Vous ne devez donc jamais utiliser d'informations sensibles ou personnelles non chiffrées dans les données du jeton.

Voir meilleures pratiques en matière de sécurité.

Les SDK clients de Vonage Video comprennent des propriétés permettant d'inspecter les données de connexion d'un client connecté à une session.

Meilleures pratiques lors de la génération de jetons

Les jetons sont peu coûteux à générer. Ils sont générés à l'aide d'une fonction de hachage et de votre secret. Il n'y a pas d'appel API vers nos serveurs lors de la génération d'un jeton. Nous recommandons :

  • Générer un nouveau jeton pour chaque utilisateur au moment où il essaie de se connecter. Les jetons ont un délai d'expiration, qui est par défaut de 24 heures après la création du jeton. Une fois qu'il a expiré, vous ne pouvez plus utiliser le jeton pour vous connecter à la session.
  • Ne stockez pas les jetons et n'essayez pas de les réutiliser.
  • Ne pas utiliser les jetons générés dans l'outil aire de jeux dans les applications de production. La structure des jetons du terrain de jeu est quelque peu différente et posera des problèmes lorsqu'elle sera utilisée dans une application de production.
  • Utiliser les données de connexion pour identifier les utilisateurs. Les données de connexion sont un moyen sûr de stocker des informations sur vos utilisateurs (comme un identifiant, qui peut vous aider à identifier vos utilisateurs dans votre application).

Générer des jetons

Vous pouvez générer des jetons à l'aide de l'une des options suivantes SDK côté serveur.