DRM-X 6.0 Taube und Olivenzweig LogoDRM-X 6.0Dokumentation
◎ Deutsch

Backend-Beispiele nach Programmiersprache

Verstehen Sie den gemeinsamen Wiedergabeablauf und finden Sie den anzupassenden Callback in Node.js, Django, Laravel, PHP, ASP.NET oder Java.

Markdown anzeigenLive-BeispieleAktualisiert 2026-09-25

Ihre Website entscheidet, wer zuschauen kann#

Bewahren Sie Ihr Login, Einkäufe, Mitgliedschaft und Registrierungssystem auf. Ihre Anwendung liefert den aktuellen Benutzer und die autorisierte Content ID. Der SDK ruft DRM-X auf und der Player lädt das geschützte Video.

Eine Verbindung zu Ihrer bestehenden Anwendung

Sie verwalten die Anmeldung und entscheiden über die Zugriffsberechtigung. Das SDK und der Player übernehmen die geschützte Wiedergabe.

  1. Halten Sie Ihr Login

    Der Betrachter meldet sich über Ihre bestehende Website an.

  2. Verbinden Sie Ihren Lookup

    Ihre Anwendung prüft den Zugriff und gibt die DRM-X Content ID für die ausgewählte Lektion zurück.

  3. Über das SDK aufrufen

    Das Backend SDK verwendet Serveranmeldeinformationen, um eine autorisierte Wiedergabe von DRM-X anzufordern.

  4. Player anzeigen

    Der Player erhält eine DRM-Lizenz und spielt den veröffentlichten verschlüsselten Inhalt ab.

Verstehen Sie die beiden Video-IDs#

WertBeispielWoher es kommt
Video-ID Ihrer Websitelesson-123Ihr Datensatz zur Lektion, zum Produkt oder zum Video.
DRM-X Content IDyour-published-content-idDie geschützten Inhalte in DRM-X veröffentlicht.
Benutzer IDcustomer-456Ihre authentifizierte Login-Sitzung.

Weisen Sie Ihre Lektion dem Content ID zu, indem Sie Ihre vorhandene Datenbank, API oder Ihren Anwendungscode verwenden. Das Finden eines Videos beweist nicht, dass dieser Benutzer es ansehen kann; Überprüfen Sie die Berechtigung, bevor Sie es zurückgeben.

Einmal vorbereiten, dann integrieren#

  1. Verschlüsseln und veröffentlichen Sie ein Video und kopieren Sie dessen Content ID.
  2. Erstellen Sie Wiedergabe-Zugangsdaten für dieselbe Umgebung. Verwenden Sie Site ID, Site Key und Access Key auf dem Server.
  3. Laden Sie das komplette Kit oder Ihr Plattform-Kit herunter. Installieren Sie SDK mit Ihrem Paketmanager.
  4. Verbinden Sie Ihren user/content-Erlaubnis-Callback und fügen Sie dann den Player zu Ihrer Seite hinzu.

Das SDK arbeitet mit bereits veröffentlichten Inhalten. Es ersetzt nicht den Paketierer oder Ihr Zahlungssystem. Laufzeitabhängigkeiten von Drittanbietern benötigen möglicherweise während der Installation einen Internetzugang.

Programmiersprache auswählen#

Wählen Sie eine Programmiersprache, um die zu ändernden Stellen anzuzeigen.

Node.js / Express

Editieren Sie Ihre Anwendung: server.mjs

Anbinden: authorize(userId, videoId)

Geben Sie ein autorisiertes Content Mapping oder null zurück. Lesen Sie den Benutzer aus Ihrer vorhandenen Login-Middleware.

Tutorial und Installationsbefehle öffnen →

Python / Django

Editieren Sie Ihre Anwendung: authorization.py

Anbinden: authorize(user, video_id)

Geben Sie ein Wörterbuch mit content_id oder None zurück. Registrieren Sie es als DRMX['AUTHORIZE'] in settings.py.

Tutorial und Installationsbefehle öffnen →

PHP / Laravel

Editieren Sie Ihre Anwendung: app/Services/DrmxAccess.php

Anbinden: ContentAuthorizer.authorize(user, videoId)

Geben Sie ein autorisiertes Content-Array oder null zurück. Binden Sie Ihren Service in AppServiceProvider.

Tutorial und Installationsbefehle öffnen →

PHP ohne Framework

Editieren Sie Ihre Anwendung: index.php

Anbinden: findAuthorizedVideo(userId, videoId)

Geben Sie ein autorisiertes Content-Array oder null zurück. Verbinden Sie Ihre bestehende PHP-Sitzungsidentität.

Tutorial und Installationsbefehle öffnen →

C# / ASP.NET Core

Editieren Sie Ihre Anwendung: Program.cs

Anbinden: QuickStartCatalog.FindAuthorizedVideoAsync

Geben Sie QuickStartVideo oder null zurück. IDrmXContentEntitlement überprüft das angeforderte Content ID mit diesem Ergebnis.

Tutorial und Installationsbefehle öffnen →

C# / ASP.NET Framework

Editieren Sie Ihre Anwendung: App_Code/DrmXPlayback.cs

Anbinden: ApplicationServices.Authorize

Geben Sie true nur für einen autorisierten Benutzer, Content ID und Inhaltstyp zurück. Dies ist ein Quelladapter für Windows / IIS.

Tutorial und Installationsbefehle öffnen →

Java / Spring Boot

Editieren Sie Ihre Anwendung: DrmxAccess.java

Anbinden: ContentEntitlement.authorize(userId, videoId)

Geben Sie Optional<AuthorizedVideo> oder Optional.empty() zurück. Verbinden Sie den Controller und die Berechtigungs-Bean mit Ihrem bestehenden Repository.

Tutorial und Installationsbefehle öffnen →

Konfigurieren Sie Ihren Server#

BeispieleUmgebungsvariablen
Node, Django, Java, PHP SDK, LaravelDRMX_SITE_ID, DRMX_SITE_KEY, DRMX_ACCESS_KEY
ASP.NET Core und FrameworkDRMX_PLAYBACK_SITE_ID, DRMX_PLAYBACK_SITE_KEY, DRMX_PLAYBACK_ACCESS_KEY

Laden Sie diese Werte im Serverprozess. Die Content ID ist ein Wert pro Video. Überschreiben Sie keine gemeinsam genutzten Zugangsdaten oder globale Konfiguration, um zwischen Benutzern oder Videos zu wechseln. Die Richtlinienauswahl bleibt auf dem Server.

PHP: Verbinden Sie Ihre bestehende Website#

Laden Sie dieses Plattform-Kit herunter

SDK in der Vorschauversion, Anwendungsbeispiel und Quellcode. Behalten Sie die entpackte Ordnerstruktur bei.

Alle Plattformen und vollständiges Kit · Den Integrationsablauf verstehen

  1. Konfigurieren

    Serverumgebung

    Setzen Sie DRMX_SITE_ID, DRMX_SITE_KEY und DRMX_ACCESS_KEY.

  2. Autorisierenexamples/sdk/php/index.php

    Bearbeiten Sie findAuthorizedVideo($userId, $videoId) und lesen Sie die Benutzer-ID aus Ihrer vorhandenen Sitzung.

  3. Einbettung

    Ihre Unterrichtsseite

    Verwenden Sie das Player-Markup erneut und behalten Sie das ausgewählte videoId im Sitzungsendpunkt bei.

cd examples/sdk/php
composer install
# Set server credentials and DRMX_LOCAL_DEMO=1 for a localhost demo only.
php -S 127.0.0.1:8106 index.php

Ersetzen Sie für den ersten Test your-published-content-id innerhalb von findAuthorizedVideo. Öffnen Sie http://127.0.0.1:8106/?videoId=1 und verwenden Sie Local demo sign in. PHP benötigt cURL- und ZIP-Unterstützung; verwenden Sie PHP 8.2 oder neuer.

Ersetzen Sie für Ihre Anwendung die Demo-Funktion durch Ihren eigenen Lookup. Der folgende Repository-Aufruf ist illustrativ; Implementieren Sie ihn mit Ihrer Datenbank:

function findAuthorizedVideo(string $userId, string $videoId): ?array {
    $video = customerFindAuthorizedVideo($userId, $videoId);
    if ($video === null) return null;
    return ['contentId' => $video['drmx_content_id'],
            'contentType' => 'vod', 'title' => $video['title'],
            'policy' => 'multi-tier-standard'];
}

Lesen Sie $userId aus Ihrer normalen serverseitigen Authentifizierung. Behalten Sie die Ursprungsprüfung, Anforderungsvalidierung und den genauen Vergleich von Inhalt und Typ aus dem Beispiel bei. Wählen Sie eine zum veröffentlichten Inhalt passende Richtlinie. PlaybackClient sendet die DRM-X-Anfrage, kann aber Ihre Kaufregeln nicht ableiten.

Andere Sprachen und API Integration#

Go, Ruby und andere Serversprachen können die Playback Session API aufrufen, nachdem der Benutzer authentifiziert und der Zugriff auf Inhalte überprüft wurde. Diese Version enthält keine Go oder Ruby SDK Bibliotheken. Bevorzugen Sie das verpackte SDK für die sieben oben genannten Integrationspfade.

Vor dem Produktivbetrieb prüfen#

  • Melden Sie sich als erlaubter Benutzer an und spielen Sie ein veröffentlichtes Video in einem unterstützten Browser ab.
  • Testen Sie abgemeldete Benutzer und Benutzer ohne Zahlung sowie widerrufene oder abgelaufene Berechtigungen. Neue Sitzungsanfragen müssen abgelehnt werden.
  • Ändern Sie die Content ID im Browser oder die Video-ID Ihrer Website. Der Server muss die neue Auswahl prüfen.
  • Legen Sie den genauen öffentlichen HTTPS-Ursprung fest, behalten Sie den session/CSRF-Schutz Ihres Frameworks bei und deaktivieren Sie den Demo-Identitätscode.

Bestehende Sitzungen und DRM-Lizenzen haben ihre eigene Lebensdauer. Berechtigungsänderungen werden bei neuen Anfragen überprüft; sie löschen keine bereits ausgestellte Lizenz.

PHP: Führen Sie die komplette Demonstrations-Website#

Die Online-PHP-Demo ausprobieren · Die vollständige PHP-Demo herunterladen · SHA-256

Wählen Sie das obige PHP SDK-Beispiel für eine kleine Composer-basierte Integration in Ihre bestehende Website. Die vollständige Demo bietet eine direkt ausführbare Website mit Playlist, Token-Proxy und Diagnosebeispielen. Sie verwendet einen Quellcode-Adapter und benötigt PHP 8.2+ mit cURL, aber weder Composer noch eine Datenbank. Beide Varianten halten die Zugangsdaten auf Ihrem Server und erfordern Ihre Berechtigungsprüfung.

  1. Erste Wiedergabeconfig/drmx.php

    Setzen Sie siteId, siteKey, accessKey, content.id, content.type und eine passende licensePolicyTemplate. Behalte den Rest des Arrays.

  2. Ihre Kundensrc/bootstrap.php

    Verbinden Sie authenticated_user_id() mit Ihrer Anmeldung und ersetzen Sie user_can_play_content() durch eine aktuelle Prüfung von Kauf, Mitgliedschaft oder Kurseinschreibung.

  3. Ihr Videokatalogsrc/bootstrap.php + public/index.php

    Ersetzen Sie die Demo-Katalog-Helfer mit Ihrem vorhandenen Video-Lookup. Rendern Sie nur einen autorisierten Content ID und Typ; behalten Sie serverseitige Überprüfungen bei jeder Sitzungsanfrage bei.

# Windows, inside the extracted drmx-php-sample folder:
powershell -NoProfile -ExecutionPolicy Bypass -File .\run-local.ps1
# macOS / Linux:
bash ./run-local.sh

Öffnen Sie http://127.0.0.1:8086/ und drücken Sie Play. Die Online-Wiedergabe ermittelt das registrierte Manifest automatisch. Die lokale Demo meldet einen Testzuschauer an; dies dient nur zur ersten Wiedergabeprüfung.

Setzen Sie für Ihre Website demo.allowLogin, demo.autoAuthenticateLocalhost und demo.autoAuthenticatePublicDemo in config/drmx.php auf false oder deaktivieren Sie die entsprechenden Prozessvariablen. Verwenden Sie Ihre eigene Anmeldung und eine aktuelle Berechtigungsprüfung; verwenden Sie die Berechtigungsliste der Demositzung nicht als Kaufdatenbank. public/api/playback-session.php und playback-release.php bedienen die Wiedergabe-API; behalten Sie deren Anforderungsvalidierung und Inhaltsbindung bei. Setzen Sie das öffentliche Dokumentenverzeichnis auf public/ und verwenden Sie das Routing Ihres Webservers. Der mitgelieferte Starter dient nur lokalen Tests.

Katalog-Helfer sind demo_content_id(), demo_content_type(), player_playlist() und configured_content(). Bei einer Multi-Video-Website lösen Sie diese Werte aus Ihrem vorhandenen Katalog auf; Ihre Berechtigungsprüfung muss diese genaue Auswahl validieren. Sie müssen Käufe nicht in DRM-X-Tabellen synchronisieren. Bestehende DRM-Lizenzen haben ihre eigene Lebensdauer; der Widerruf wird für neue Sitzungen erneut überprüft.

Verwenden Sie das enthaltene README für vollständige Richtlinien, Hosting, Token-Proxy und native Offline-Details. Testen Sie vor der Veröffentlichung autorisierte Wiedergabe, verweigerte und widerrufene Benutzer, Inhaltssubstitution, Stop und Ihre unterstützten Browser über HTTPS.

Ein Content ID, unabhängig davon, welchen Speicher Sie verwenden#

Kein Manifest URL wird in Ihrer Streaming-Integration benötigt. Für 1aicloud oder konfigurierten S3-Speicher verwendet DRM-X die Medien-URLs, die bei der Veröffentlichung des Pakets aufgezeichnet werden. Für verschlüsselte Dateien, die auf Ihren eigenen Server hochgeladen werden, registrieren Sie zuerst ihre DASH/HLS Medien-URLs in DRM-X. Verwenden Sie dann das gleiche Content ID in PHP, ASP.NET oder einer anderen Integration. Ihr Server überprüft weiterhin die Berechtigung des aktuellen Benutzers, bevor Sie die Wiedergabe anfordern.

  1. Veröffentlichung oder Registrierung einmalDRM-X content settings

    Bestätigen Sie, dass die korrekt geschützten DASH/HLS-Medien-URLs für Ihre Content ID registriert sind.

  2. Verbinden Sie Ihre Website

    Ihr Callback zur Berechtigungsprüfung

    Überprüfen Sie Login und Kauf, Mitgliedschaft oder Registrierung. Geben Sie das erlaubte Content ID zurück.

  3. AbspielenDRM-X playback session

    DRM-X löst das veröffentlichte Paket auf und gibt das passende Manifest und DRM License Token zurück.

Fehlt das registrierte Manifest, korrigieren Sie die Veröffentlichung oder die Registrierung der Medien-URLs in DRM-X. Verwenden Sie keine beliebige vom Browser übermittelte URL als Ersatz. Der native Offline-Endpunkt der vollständigen PHP-Demo ist ein separates, erweitertes Beispiel; seine derzeitige manuelle Zuordnung ist in advanced/OFFLINE.md beschrieben.