Java、Spring BootおよびVue
Spring Bootスターターをインストールし、既存のユーザーとコンテンツリポジトリにContentEntitlementを接続します。 フロントエンドが使用している場合のみ、Vueを追加します。
プレビュー版 SDK、アプリのサンプル、ソースが含まれます。展開後のフォルダー構造を維持してください。
カスタマイズする3つの場所#
- 設定
application.properties / server environmentDRMX_SITE_ID、DRMX_SITE_KEY、DRMX_ACCESS_KEY、およびインスタンスIDを設定します。
- 認可
DrmxAccess.java と既存のリポジトリ
現在のユーザーと動画のアクセス権を確認する ContentEntitlement を実装します。
- ルート設定
PlayerController.java / 独自のコントローラー
ページメタデータとセッションのリクエストに対して、同一の認可されたルックアップを使用します。
1. 同梱の JAR をインストール#
Java 21 と Maven を使い、展開したキットのルートで実行します。
mvn install:install-file -Dfile=packages/maven/drmx-spring-boot-starter-1.3.0-preview.13.jar -DpomFile=packages/maven/drmx-spring-boot-starter-1.3.0-preview.13.pomこのサンプルは Spring Boot 3.5 を使用します。既存のアプリでは、examples/sdk/java/pom.xml に示すスターター依存関係を追加してください。Maven が通常のフレームワーク依存関係をダウンロードする場合があります。
2. ローカルで動画を1本再生#
examples/sdk/java/src/main/java/com/haihaisoft/drmx/LocalDemo.java で your-published-content-id を置き換えます。3つの資格情報を設定し、DRMX_DEMO_PASSWORD には12文字以上のローカルテスト用パスワードを指定します。
cd examples/sdk/java
mvn spring-boot:run -Dspring-boot.run.profiles=local-demohttp://127.0.0.1:8107/ を開き、drmx-learner でログインします。drmx-denied はアクセス拒否のテスト用アカウントです。一時的なインメモリーデータベースは再起動でリセットされます。これはデモアプリのコードであり、本番に必須のデータ構造ではありません。
3. 実際のデータベースを接続#
DrmxAccess.java で bean を実装します。お客様のリポジトリが検索と権限チェックを実行します。以下は置き換え例です。
@Bean
ContentEntitlement contentEntitlement(CustomerCatalog catalog) {
return (userId, videoId) -> catalog.findAuthorizedVideo(userId, videoId)
.map(video -> new AuthorizedVideo(
video.drmxContentId(), video.contentType(), video.policy()));
}アクセスを拒否する場合は Optional.empty() を返します。PlayerController を同じリポジトリに接続し、要求されたコンテンツと種類の正確な比較を維持します。通常の Spring Security と CSRF 保護も維持してください。例のコントローラーは数値のサイト ID を使います。UUID を使うアプリではパラメーターとリポジトリを一緒に変更します。
4. フロントエンドを接続#
サンプルの HTML ページでは、共通の Web Component を使用しています。Vue を使用する場合は、integrations/web-components/DrmxPlayer.vue と隣接するランタイムファイルを使ってください。コントローラーから、許可されたコンテンツのメタデータと同一オリジンのセッション URL を渡します。本番環境では local-demo プロファイルを無効にしてください。
本番公開前の確認#
- 許可されたユーザーとしてサインインし、サポートされているブラウザーで公開された動画を再生します。
- 未ログインと未払いのユーザーを試し、権限の取り消しと期限切れもテストします。新規セッション要求は拒否される必要があります。
- ブラウザContent IDまたはWebサイトのビデオIDを変更します。 サーバは新しい選択を点検しなければなりません。
- 公開 HTTPS オリジンを正確に設定し、フレームワークのセッション/CSRF 保護を維持して、デモ用のユーザー識別コードを無効にしてください。
既存のセッションと DRM ライセンスには独自の有効期間があります。新しいリクエストでは権限の変更を確認しますが、発行済みのライセンスを消去するわけではありません。
DRM-X 6.0