Token-Erstellung Übersicht

Um einen Benutzer zu authentifizieren, der eine Verbindung zu einer OpenTok-Sitzung herstellt, muss die Seite des Benutzers neben dem API-Schlüssel auch ein Token übermitteln. Sie generieren für jeden Benutzer, der eine Verbindung zu einer OpenTok-Sitzung herstellt, ein Token. Weitere Informationen zur Herstellung einer Verbindung finden Sie in der Dokumentation zum Beitritt zu einer Sitzung: OpenTok.js, Android, iOS.

Rollen

Jedem Token wird eine Rolle, die die Funktionen des Clients festlegen, der sich mit einem Token anmeldet. Es gibt drei Rollen:

  • Abonnent — Clients, die sich mit einem Abonnententoken verbinden, können eine Verbindung zur Sitzung herstellen und die Streams anderer Clients abonnieren. Sie können keine eigenen Streams in einer Sitzung veröffentlichen.
  • Herausgeber — Clients, die sich mit einem Publisher-Token anmelden, können eine Verbindung zur Sitzung herstellen, Audio- und Videostreams in der Sitzung veröffentlichen und die Streams anderer Clients abonnieren.
  • Nur für Verlage — Clients, die sich mit einem reinen Publisher-Token verbinden, können eine Verbindung zur Sitzung herstellen und Audio- und Videostreams in die Sitzung senden, jedoch keine Streams anderer Clients abonnieren. Darüber hinaus ist es Clients, die sich mit einem reinen Publisher-Token verbinden, untersagt, Signale senden. Anmerkung: Derzeit wird die Erstellung von reinen Publisher-Tokens im OpenTok Node, im OpenTok Java- und im OpenTok Ruby-SDK unterstützt.
  • Moderator — Neben dem Veröffentlichen und Abonnieren von Streams können Moderatoren, die über einen Client mit OpenTok.js verbunden sind, andere Clients dazu zwingen, die Verbindung zur Sitzung zu trennen oder die Veröffentlichung von Audio- und Videostreams einzustellen. (Jeder Client kann zur Trennung der Verbindung oder zum Beenden der Veröffentlichung gezwungen werden, doch nur ein Moderator, der OpenTok.js verwendet, kann diese Moderationsfunktionen ausführen.) Darüber hinaus können Moderatoren, die über eines der OpenTok-Client-SDKs verbunden sind, bei einem oder mehreren Streams in der Sitzung die Stummschaltung des veröffentlichten Audios erzwingen. Siehe Moderation.

Verfallsdaten

OpenTok-Token verfallen nach einer festgelegten Zeitspanne (bis zu 30 Tage). Sie können die Gültigkeitsdauer bei der Generierung des Tokens festlegen.

Verbindungsdaten

Für jedes Token können Sie eine Zeichenfolge mit Metadaten hinzufügen, die den Kunden beschreiben. Sie können zum Beispiel die Benutzer-ID, den Namen oder andere Daten, die den Client beschreiben, übergeben. Je nach Anwendung können Sie diese Daten aus einer serverseitigen Datenbank oder aus Daten beziehen, die Ihnen vom Client zur Verfügung gestellt werden. Die Länge des Strings ist auf 1000 Zeichen begrenzt. Diese Daten können nicht aktualisiert werden, sobald sie festgelegt sind.

Verwenden Sie keine persönlichen Informationen in Token-Daten — Die Metadaten des Tokens können anderen Teilnehmern der Sitzung offengelegt werden und sind möglicherweise auch über die internen Protokolle von Vonage einsehbar. Verwenden Sie daher niemals unverschlüsselte sensible oder personenbezogene Daten in den Token-Daten. Siehe bewährte Sicherheitsverfahren.

Die OpenTok-Client-Bibliotheken enthalten Eigenschaften, mit denen sich die Verbindungsdaten eines mit einer Sitzung verbundenen Clients überprüfen lassen.

Bewährte Praktiken bei der Erzeugung von Token

Token lassen sich kostengünstig generieren. Sie werden lediglich mithilfe einer Hash-Funktion und Ihrem geheimen Schlüssel erstellt. Bei der Generierung eines Tokens erfolgt kein API-Aufruf an unsere Server. Wir empfehlen:

  • Für jeden Benutzer wird bei jedem Verbindungsversuch ein neues Token generiert. Token haben eine Gültigkeitsdauer, die standardmäßig 24 Stunden nach der Erstellung des Tokens endet. Nach Ablauf dieser Gültigkeitsdauer können Sie das Token nicht mehr verwenden, um eine Verbindung zur Sitzung herzustellen.
  • Keine Token speichern oder versuchen, sie wiederzuverwenden.
  • Verwendung von Verbindungsdaten zur Identifizierung von Benutzern. Verbindungsdaten sind eine sichere Möglichkeit, Informationen über Ihre Benutzer zu speichern (z. B. eine Benutzer-ID, mit der Sie Ihre Benutzer in Ihrer Anwendung identifizieren können).

Token generieren

Während Sie an einer Testversion Ihrer App arbeiten, können Sie auf einer Projektseite Ihrer Video API-Konto. In der endgültigen Produktionsversion einer App sollten Sie jedoch eine der serverseitigen OpenTok-Bibliotheken und nicht die Projektseite verwenden, um Tokens zu generieren: