Sécuriser votre application

Important : Veuillez noter que votre ID de l'application est votre Clé API.

Suivez ces bonnes pratiques pour assurer la sécurité de votre application.

Vonage reconnaît que la sécurité est une considération essentielle pour toute entreprise souhaitant intégrer des communications en temps réel dans son site Web, son application ou son service. La plateforme Vonage est une plateforme fiable et sécurisée sur laquelle vous pouvez créer des Applications qui répondent aux besoins de sécurité de votre entreprise, de votre secteur ou de vos clients.

FAQ sur la sécurité

Le trafic vocal et vidéo est-il crypté au cours d'une session WebRTC ?

Oui, tout le trafic média est crypté, quel que soit le point d'extrémité que vous utilisez (Web ou mobile) ou la configuration de session que vous choisissez (P2P ou multipartite). Cela signifie que vous êtes en sécurité lorsque vous utilisez la solution Vonage, même si vous l'utilisez dans un hotspot public ouvert.

De plus, dans les applications web, la publication n'est prise en charge que pour les pages HTTPS.

Est-il basé sur une solution propriétaire ?

Non, nous ne croyons pas aux solutions propriétaires lorsque nous parlons de sécurité. Vonage est entièrement basé sur des normes éprouvées, rédigées par des experts de l'industrie et utilisées depuis des années dans des produits commerciaux. Les protocoles de base assurant la sécurité de WebRTC Vonage sont SRTP pour le cryptage du trafic média et DTLS-SRTP pour la négociation des clés, qui sont définis par l'IETF.

Quels sont les algorithmes de cryptage et la puissance des clés utilisées ?

Les terminaux compatibles avec Vonage WebRTC utilisent le chiffrement AES avec des clés de 128 bits pour chiffrer l'audio et la vidéo, et HMAC-SHA1 pour vérifier l'intégrité des données.

Le cryptage AES-256 est disponible sur les clients pris en charge en tant qu'option. fonction complémentaire.

Quelles sont les clés utilisées pour le cryptage ?

Les points d'extrémité génèrent des clés aléatoires au début de la session et les modifient périodiquement au cours de la conversation pour la rendre encore plus sûre.

Le projet nécessite-t-il une interaction avec l'utilisateur ?

Non, tout se passe sous le capot, sans aucune interaction avec l'utilisateur.

Cela nécessite-t-il une modification de mes applications basées sur Vonage ?

Non, l'API de Vonage ne change pas. L'API de Vonage n'expose pas ces détails de bas niveau aux développeurs.

Cela a-t-il un impact sur la bande passante et la qualité de la vidéoconférence ?

C'est le cas, mais très peu. Il augmente la longueur de chaque paquet audio et vidéo de 8 octets, mais cela représente moins de 1 % du débit binaire typique d'une session. En ce qui concerne le délai, le cadre de cryptage SRTP a été conçu spécifiquement pour les applications en temps réel, et l'impact n'est pas du tout perceptible.

Cela a-t-il un impact sur la consommation de l'unité centrale ou de la batterie ?

Oui, mais le coût du codage et du décodage audio et vidéo est nettement plus élevé que le coût du cryptage et du décryptage.

Meilleures pratiques en matière de sécurité

Que vous soyez nouveau sur la plateforme Vonage ou que vous ayez des années d'expérience, voici un ensemble utile de bonnes pratiques que vous pouvez employer lors du développement avec Vonage pour vous aider à créer une application sécurisée.

Servez le contenu à l'aide d'URL HTTPS

Dans les applications web, la publication de vidéos n'est prise en charge que sur les pages HTTPS.

Informations personnelles

Garder la clé et le secret de l'API privés et sécurisés

Important : Veuillez noter que votre ID de l'application est votre Clé API.

La clé et le secret de l'API sont utilisés pour créer des jetons qui accordent l'accès aux sessions, récupèrent les métadonnées des archives et modifient les informations d'identification du stockage des archives, ainsi que d'autres opérations administratives sur votre Account.

Pour éviter de compromettre vos informations d'identification, vous devez toujours garder votre secret API privé. Voici quelques mesures clés que vous pouvez prendre :

  • Ne jamais enregistrer le secret de l'API dans un dépôt de code source public.
  • N'enregistrez jamais le secret de l'API dans des bibliothèques côté client, ni même dans des SDK mobiles compilés.
  • Utilisez uniquement des URL HTTPS pour effectuer des appels REST vers les serveurs Vonage.

Générer un identifiant de session unique par appel et un jeton par participant

Vous devez générer un identifiant de session pour lancer un appel. Les jetons qui permettent aux participants de se joindre à l'appel sont uniques à un identifiant de session. Les jetons ont une date d'expiration, mais celle-ci peut être plus longue que la durée de l'appel. Par conséquent, si vous organisez des réunions consécutives en utilisant le même identifiant de session, les utilisateurs précédents peuvent encore se connecter à la nouvelle réunion.

Pour éviter cela :

  • Générer un identifiant de session unique pour chaque nouvelle réunion
  • Générer un jeton unique pour chaque participant à cette réunion.

Voir ce sujet pour savoir comment créer des sessions. Voir aussi ce sujet sur la manière de générer des jetons.

S'assurer que le serveur générant le jeton est derrière un point de terminaison authentifié

Il est important de placer le serveur générant le jeton derrière un point de terminaison authentifié, car toute personne ayant accès à ce serveur pourrait générer de nouveaux jetons et utiliser l'application à mauvais escient.

N'utilisez pas d'informations personnelles dans les données symboliques.

Les données du jeton sont une chaîne de caractères contenant des métadonnées décrivant la connexion. Cependant, ces données sont transmises à tous les utilisateurs de la session et sont également lisibles dans les journaux du client. Vous ne devez donc jamais utiliser d'informations sensibles ou personnelles non chiffrées dans les données du jeton. Voir ce sujet sur la façon d'ajouter des données à vos jetons

Mode relayé ou mode routé

Chiffrement des médias de bout en bout

Au cours d'une session acheminée, les flux multimédias sont temporairement décryptés dans les serveurs en nuage de la plate-forme vidéo, puis immédiatement recryptés avant d'être envoyés via Internet au client abonné - à moins que vous n'utilisiez l'option de décryptage de la plate-forme vidéo. chiffrement de bout en bout fonctionnalité. Ce décryptage est nécessaire pour gérer les sessions de groupe, le contrôle intelligent de la qualité et les fonctions qui nécessitent un décodage des médias, telles que l'archivage, la diffusion en direct, le compositeur d'expérience, le connecteur audio et l'interconnexion SIP (le cas échéant). Grâce aux sessions acheminées, vos flux multimédias ne sont jamais transmis en clair sur l'internet.

Vous pouvez utiliser chiffrement de bout en bout pour empêcher le routeur de médias d'accéder aux médias dans une session acheminée. Lors de l'utilisation du cryptage de bout en bout, les fonctions qui nécessitent le décodage des médias (comme l'archivage, etc.) ne sont pas prises en charge.

De même, si votre application nécessite un cryptage ininterrompu de bout en bout de tous les médias, vous pouvez choisir d'utiliser des sessions relayées. Sachez que vous ne pourrez pas utiliser les fonctions qui nécessitent le décodage des médias (comme l'archivage, etc.) et que les performances ne seront pas gérées aussi bien dans les réseaux à faible bande passante et à forte perte de paquets ou avec des groupes.

Archivage

Vonage propose un certain nombre de moyens pour assurer la sécurité de vos sessions archivées.

Différents niveaux de sécurité des archives

Vous pouvez sécuriser vos archives de la manière suivante :

  • Utiliser le cryptage Vonage - Avec l'archivage crypté, les données vidéo et audio d'une archive sont cryptées à l'aide d'un certificat de clé publique que vous fournissez à Vonage. Cela vous permet de créer des archives où les données ne sont jamais au repos dans un état non crypté. Parmi les méthodes disponibles pour sécuriser vos archives, celle-ci offre le niveau de sécurité le plus élevé. Cette méthode est disponible en tant que fonction complémentaire. Pour plus d'informations, voir la rubrique Cryptage Vonage documentation.

Gérer la suppression des archives

Une archive téléchargée avec succès sur votre espace de stockage sera automatiquement supprimée du serveur d'archivage au moment du téléchargement.

En cas d'échec du téléchargement, le stockage est une option de repli par défaut. Cela signifie que l'archive sera stockée pendant 72 heures sur le serveur.

Vous serez alerté par courriel pour chaque archive qui ne parvient pas à atteindre votre espace de stockage. Vous pouvez alors utiliser l'API REST pour télécharger l'archive à partir de l'URL de l'archive.

Après le téléchargement, vous pouvez choisir de supprimer immédiatement l'archive pour éviter qu'elle ne reste sur le stockage pendant le reste de la période de repli.

Pour empêcher ce stockage de secours, ouvrez une session dans votre Video API Accountsélectionnez le projet et définissez l'option de désactivation de l'archivage.

Voir le Documents de l'API pour plus d'informations sur la suppression d'une archive.

Remarque : Le stockage de secours ne peut être désactivé que si vous avez configuré un stockage d'archives personnalisé. Voir la documentation sur la configuration du stockage d'archives sur S3 et L'azur.

Contrôler qui peut commencer l'archivage

Vous ne pouvez archiver une session qu'à l'aide de l'API REST. Pour contrôler qui peut lancer l'archivage, vous pouvez décider de manière programmatique quelle vue de l'application inclut l'option de lancement de l'archivage. Les personnes non autorisées auront une vue limitée sans option d'archivage.

Outre l'authentification de vos propres utilisateurs, vous devez également envisager une stratégie d'autorisation. Une fois que vous savez qui est l'utilisateur (authentification) et qu'il est effectivement autorisé à lancer une archive (autorisation), vous avez réduit le risque qu'un utilisateur mal intentionné ne provoque l'enregistrement d'archives.

Garantir un ensemble minimal de privilèges

L'ensemble des autorisations minimales requises pour télécharger des archives dans notre espace de stockage est décrit dans le document suivant ce sujet.

Les partenaires ne doivent pas fournir d'autorisations supplémentaires pour les informations d'identification qu'ils stockent chez Vonage.

Alertes et contrôles

Limiter le nombre maximum d'utilisateurs dans une session

Afin de mieux contrôler le nombre de personnes dans une session, votre application devrait limiter le nombre maximum d'utilisateurs dans une session. Cela peut être utile si vous essayez de limiter votre utilisation.

Afficher le nombre d'abonnés

Vous pouvez également définir un nombre d'abonnés à afficher dans votre application. C'est un moyen utile de savoir quand une connexion s'abonne mais ne publie pas.

Configurer les permissions du modérateur pour forcer la déconnexion

La plateforme Vonage permet de retirer un utilisateur d'une session. Par exemple, en cas de violation des conditions de service, vous pouvez permettre au modérateur de la session de retirer le participant en infraction de la session via une déconnexion forcée ou une publication forcée. Voir ce sujet pour plus d'informations.

Attribuer des autorisations aux abonnés seulement pour ceux qui n'ont pas besoin de publier.

Dans certains cas d'utilisation, vous pouvez souhaiter limiter le nombre de personnes pouvant publier dans une session. Pour ce faire, les autorisations de publication ne sont pas étendues à tous les participants.

Voir ce sujet pour générer des jetons avec les bons rôles.

Restreindre le trafic vers les serveurs régionaux

Vous pouvez utiliser le Zones médiatiques régionales pour acheminer tous les flux de médias vers les serveurs de médias situés dans une région géographique donnée.

En plus de restreindre le trafic média, vous pouvez utiliser l'option Proxy de l'UE pour restreindre l'accès à l'Internet. hors média pour utiliser des serveurs situés dans l'Union européenne.

Important : Veuillez noter que votre ID de l'application est votre Clé API.

Sécurité et couche de transport

Chiffrement TLS

L'API Video de Vonage prend désormais en charge TLS 1.3 et TLS 1.2 pour toutes les communications API, offrant ainsi une sécurité et une performance accrues pour vos sessions vidéo. Cette mise à jour assure la compatibilité avec les normes de cryptage modernes et protège vos données en transit.

Principaux avantages :

  • Sécurité renforcée : Algorithmes cryptographiques plus puissants et secret de transmission amélioré avec TLS 1.3
  • Une meilleure performance : Réduction du temps de latence de la connexion grâce à un processus de prise de contact simplifié
  • Négociation automatique : Les clients utilisent automatiquement la version TLS la plus élevée

Toutes les connexions aux points d'extrémité de l'API sont sécurisées par TLS par défaut. Aucune modification du code n'est nécessaire, car les SDK modernes et les clients HTTP préfèrent automatiquement la version TLS la plus élevée (TLS 1.3 ou 1.2). Toutefois, il est conseillé de toujours utiliser les dernières versions du SDK pour bénéficier des dernières améliorations en matière de sécurité et de performances.