Absicherung Ihrer Anwendung
Das ist wichtig: Bitte beachten Sie, dass Ihr App-ID ist Ihr API-Schlüssel.
Befolgen Sie diese Best Practices für die Aufrechterhaltung der Sicherheit in Ihrer Anwendung.
Vonage ist sich bewusst, dass Sicherheit ein wesentlicher Aspekt für jedes Unternehmen ist, das Echtzeitkommunikation in seine Website, App oder Dienstleistung integrieren möchte. Die Vonage Plattform ist eine zuverlässige und sichere Plattform, auf der Sie Applikationen erstellen können, die den Sicherheitsanforderungen Ihres Unternehmens, Ihrer Branche oder Ihrer Kunden entsprechen.
FAQs zur Sicherheit
Wird der Sprach- und Videoverkehr über WebRTC-Sitzungen verschlüsselt?
Ja, der gesamte Medienverkehr wird verschlüsselt, unabhängig davon, welchen Endpunkt Sie verwenden (Web oder Mobiltelefon) oder welche Sitzungskonfiguration Sie wählen (P2P oder Multiparty). Das bedeutet, dass Sie sicher sind, wenn Sie die Vonage Lösung nutzen, auch wenn Sie sie an einem öffentlichen Hotspot verwenden.
Außerdem wird die Veröffentlichung in Webanwendungen nur auf HTTPS-Seiten unterstützt.
Basiert sie auf einer proprietären Lösung?
Nein, wir glauben nicht an proprietäre Lösungen, wenn wir über Sicherheit sprechen. Vonage basiert vollständig auf bewährten Standards, die von Branchenexperten entwickelt und seit Jahren in kommerziellen Produkten eingesetzt werden. Die Kernprotokolle, die die WebRTC-Sicherheit von Vonage gewährleisten, sind SRTP für die Verschlüsselung des Medienverkehrs und DTLS-SRTP für die Schlüsselaushandlung, die von der IETF definiert wurden.
Welche Verschlüsselungsalgorithmen werden verwendet und wie stark sind die verwendeten Schlüssel?
Vonage WebRTC-kompatible Endpunkte verwenden die AES-Verschlüsselung mit 128-Bit-Schlüsseln zur Verschlüsselung von Audio und Video und HMAC-SHA1 zur Verifizierung der Datenintegrität.
Die AES-256-Verschlüsselung ist auf unterstützten Clients als Add-on-Feature.
Welche Schlüssel werden für die Verschlüsselung verwendet?
Die Endpunkte generieren zu Beginn der Sitzung Zufallsschlüssel, die sich zudem während des Gesprächs in regelmäßigen Abständen ändern, um die Sicherheit zu erhöhen.
Erfordert sie eine Interaktion mit dem Benutzer?
Nein, alles geschieht unter der Haube, ohne Interaktion mit dem Benutzer.
Sind Änderungen an meinen Vonage-basierten Applikationen erforderlich?
Nein, die Vonage API ändert sich nicht. Die Vonage API gibt diese Low-Level-Details nicht an Entwickler weiter.
Wirkt sich das auf die Bandbreite und die Qualität der Videokonferenz aus?
Ja, aber nur sehr gering. Es erhöht die Länge jedes Audio- und Videopakets um 8 Byte, aber das ist weniger als 1 % der typischen Bitrate einer Sitzung. Was die Verzögerung angeht, so wurde das SRTP-Verschlüsselungs-Framework speziell für Echtzeit-Applikationen entwickelt, und die Auswirkungen sind überhaupt nicht spürbar.
Wirkt sich das auf den CPU- oder Akkuverbrauch aus?
Ja, aber die Kosten für die Kodierung und Dekodierung von Audio- und Videodaten sind wesentlich höher als die Kosten für die Ver- und Entschlüsselung.
Bewährte Sicherheitsverfahren
Unabhängig davon, ob Sie neu auf der Vonage-Plattform sind oder bereits über jahrelange Erfahrung verfügen, finden Sie hier eine Reihe nützlicher Best Practices, die Sie bei der Entwicklung mit Vonage einsetzen können, um eine sichere Anwendung zu erstellen.
Inhalte über HTTPS-URLs bereitstellen
In Webanwendungen wird die Veröffentlichung von Videos nur auf HTTPS-Seiten unterstützt.
Persönliche Informationen
Halten Sie den API-Schlüssel und das Geheimnis privat und sicher
Das ist wichtig: Bitte beachten Sie, dass Ihr App-ID ist Ihr API-Schlüssel.
Der API-Schlüssel und das Geheimnis werden verwendet, um Token zu erstellen, die Zugriff auf Sitzungen gewähren, Archiv-Metadaten abrufen und Archivspeicherzugangsdaten ändern sowie andere Verwaltungsvorgänge für Ihren Account durchführen.
Um zu vermeiden, dass Ihre Anmeldedaten kompromittiert werden, sollten Sie Ihr API-Geheimnis immer geheim halten. Einige wichtige Maßnahmen, die Sie ergreifen können:
- Speichern Sie das API-Geheimnis niemals in öffentlichen Quellcode-Repositories.
- Speichern Sie das API-Geheimnis niemals in clientseitigen Bibliotheken oder gar kompilierten mobilen SDKs.
- Verwenden Sie nur HTTPS-URLs, um REST-Aufrufe an die Vonage-Server zu tätigen.
Erzeugen einer eindeutigen Sitzungs-ID pro Anruf und eines Tokens pro Teilnehmer
Um einen Anruf zu initiieren, müssen Sie eine Sitzungs-ID erstellen. Die Token, die den Teilnehmern die Teilnahme ermöglichen, sind eindeutig einer Sitzungs-ID zugeordnet. Die Token haben eine Gültigkeitsdauer, die jedoch länger sein kann als die Dauer der Telefonkonferenz. Wenn Sie also aufeinanderfolgende Besprechungen mit derselben Sitzungs-ID durchführen, können frühere Nutzer möglicherweise immer noch an der neuen Besprechung teilnehmen.
Um dies zu vermeiden:
- Erzeugen einer eindeutigen Sitzungs-ID für jede neue Besprechung
- Erzeugen Sie ein eindeutiges Token für jeden Teilnehmer der Besprechung.
Siehe dieses Thema wie Sie Sitzungen erstellen können. Siehe dieses Thema wie man Token erzeugt.
Sicherstellen, dass der Server, der das Token erzeugt, hinter einem authentifizierten Endpunkt steht
Es ist wichtig, den Server, der das Token generiert, hinter einem authentifizierten Endpunkt zu platzieren, da jeder, der Zugriff auf diesen Server hat, neue Token generieren und die Anwendung missbrauchen könnte.
Verwenden Sie keine persönlichen Informationen in Token-Daten.
Die Token-Daten sind eine Zeichenkette mit Metadaten, die die Verbindung beschreiben. Diese Daten werden jedoch an alle Benutzer in der Sitzung weitergegeben und sind auch über die Client-Protokolle lesbar. Das bedeutet, dass Sie niemals unverschlüsselte sensible oder persönliche Informationen in den Token-Daten verwenden sollten. Siehe dieses Thema wie Sie Ihren Token Daten hinzufügen können
Relayed vs. Routed Modus
End-to-End-Medienverschlüsselung
Während einer gerouteten Sitzung werden Medienströme vorübergehend entschlüsselt, während sie sich auf den Cloud-Servern der Videoplattform befinden, und dann sofort wieder verschlüsselt, bevor sie über das Internet an den abonnierten Client gesendet werden - es sei denn, Sie verwenden die End-to-End-Verschlüsselung Funktion. Diese Entschlüsselung ist notwendig für die Verwaltung von Gruppensitzungen, intelligente Qualitätskontrolle und Funktionen, die eine Medienentschlüsselung erfordern - wie Archivierung, Live-Streaming-Übertragungen, Experience Composer, Audio-Connector und SIP-Interconnect (falls verwendet). Mit gerouteten Sitzungen werden Ihre Medienströme niemals unverschlüsselt über das offene Internet übertragen.
Sie können verwenden End-to-End-Verschlüsselung um zu verhindern, dass der Media Router Zugriff auf Medien in einer gerouteten Sitzung hat. Bei Verwendung der Ende-zu-Ende-Verschlüsselung werden Funktionen, die eine Dekodierung der Medien erfordern (z. B. Archivierung usw.), nicht unterstützt.
Wenn Ihre Anwendung eine ununterbrochene Ende-zu-Ende-Verschlüsselung aller Medien erfordert, können Sie sich auch für die Verwendung von Relayed Sessions entscheiden. Beachten Sie, dass Sie dann keine Funktionen nutzen können, die eine Medienentschlüsselung erfordern (z. B. Archivierung usw.), und dass die Leistung in Netzwerken mit geringer Bandbreite/hohem Paketverlust oder mit Gruppen nicht so gut verwaltet wird.
Archivierung
Vonage bietet eine Reihe von Möglichkeiten, die Sicherheit Ihrer archivierten Sitzungen zu gewährleisten.
Verschiedene Ebenen der Archivsicherheit
Sie können Ihre Archive auf folgende Weise sichern:
- Vonage-Verschlüsselung verwenden - Bei der verschlüsselten Archivierung werden die Video- und Audiodaten in einem Archiv mit einem öffentlichen Schlüsselzertifikat verschlüsselt, das Sie Vonage zur Verfügung stellen. Auf diese Weise können Sie Archive erstellen, in denen sich die Daten niemals in einem unverschlüsselten Zustand befinden. Von den verfügbaren Methoden zur Sicherung Ihrer Archive bietet dies das höchste Maß an Sicherheit. Dies ist verfügbar als Add-on-Feature. Weitere Informationen finden Sie in der Vonage-Verschlüsselung Dokumentation.
Verwalten der Archivlöschung
Ein erfolgreich auf Ihren Speicher hochgeladenes Archiv wird zum Zeitpunkt des Uploads automatisch vom Archivierungsserver gelöscht.
Für den Fall, dass das Hochladen fehlschlägt, ist die Speicherung als Ausweichoption vorgesehen. Das bedeutet, dass das Archiv 72 Stunden lang auf dem Server gespeichert wird.
Sie werden per E-Mail über jedes Archiv benachrichtigt, das Ihren Speicher nicht erreicht. Sie können dann die REST-API verwenden, um das Archiv von der Archiv-URL herunterzuladen.
Nach dem Herunterladen können Sie das Archiv sofort löschen, um zu vermeiden, dass es für den Rest des Rückfallzeitraums auf dem Speicher verbleibt.
Um diesen Fallback-Speicher zu verhindern, melden Sie sich bei Ihrem Video API-KontoWählen Sie das Projekt aus, und setzen Sie die Option zum Deaktivieren des Archivspeicher-Fallbacks.
Siehe die API-Dokumente für weitere Informationen über das Löschen eines Archivs.
Kontrolle, wer mit der Archivierung beginnen kann
Sie können eine Sitzung nur über die REST-API archivieren. Um zu steuern, wer die Archivierung initiieren kann, können Sie programmatisch entscheiden, welche Ansicht der Anwendung die Option zum Starten der Archivierung enthält. Unbefugte hätten eine eingeschränkte Ansicht ohne Archivierungsoption.
Neben der Authentifizierung Ihrer eigenen Benutzer sollten Sie auch eine Strategie für die Autorisierung in Betracht ziehen. Sobald Sie wissen, wer ein Benutzer ist (Authentifizierung) und dass er tatsächlich berechtigt ist, ein Archiv zu starten (Autorisierung), haben Sie das Risiko verringert, dass ein unbeabsichtigter Benutzer die Aufzeichnung von Archiven verursacht.
Sicherstellung eines Mindestmaßes an Privilegien
Die für das Hochladen von Archiven in unseren Speicher erforderlichen Mindestrechte werden unter dieses Thema.
Partner sollten keine zusätzlichen Berechtigungen für die bei Vonage gespeicherten Anmeldedaten vergeben.
Warnungen und Kontrollen
Begrenzung der maximalen Anzahl von Benutzern in einer Sitzung
Um eine bessere Kontrolle über die Anzahl der Personen in einer Sitzung zu haben, sollte Ihre Anwendung die maximale Anzahl der Benutzer in einer Sitzung begrenzen. Dies kann nützlich sein, wenn Sie versuchen, Ihre Nutzung zu begrenzen.
Teilnehmerzahl anzeigen
Sie können auch die Anzahl der Abonnenten festlegen, die in Ihrer Anwendung angezeigt wird. Auf diese Weise können Sie feststellen, wann eine Verbindung abonniert, aber nicht veröffentlicht wird.
Einrichten von Moderatorberechtigungen zum Erzwingen der Trennung der Verbindung
Die Vonage-Plattform bietet die Möglichkeit, einen Benutzer aus einer Sitzung zu entfernen. Im Falle eines Verstoßes gegen die Nutzungsbedingungen können Sie beispielsweise dem Moderator der Sitzung die Möglichkeit geben, den Teilnehmer, der gegen die Nutzungsbedingungen verstößt, aus der Sitzung zu entfernen, indem er die Verbindung unterbricht oder die Veröffentlichung aufhebt. Siehe dieses Thema für weitere Informationen.
Zuweisung von Nur-Abonnenten-Berechtigungen für Personen, die nicht veröffentlichen müssen
In einigen Anwendungsfällen möchten Sie vielleicht die Anzahl der Personen begrenzen, die in einer Sitzung veröffentlichen können. Dies wird erreicht, indem die Veröffentlichungsrechte nicht auf alle Teilnehmer ausgeweitet werden.
Siehe dieses Thema zur Erzeugung von Token mit den richtigen Rollen.
Beschränkung des Datenverkehrs auf regionale Server
Sie können die Regionale Medienzonen Funktion, um alle Medienstreams an Medienserver innerhalb einer bestimmten Georegion weiterzuleiten.
Zusätzlich zur Einschränkung des Medienverkehrs können Sie mit der Funktion EU-Vollmacht Funktion zur Einschränkung Nicht-Medien Datenverkehr zu Servern in der Europäischen Union zu leiten.
Das ist wichtig: Bitte beachten Sie, dass Ihr App-ID ist Ihr API-Schlüssel.