次の方法で共有


PlayReady テスト サーバーの従来の構文

概要

PlayReady テスト サーバーでは、以前の PlayReady 実装や既存のクライアント アプリケーションとの下位互換性を確保するために、従来の構文のサポートが維持されています。 この従来のアプローチでは、初期の PlayReady バージョン以降にサポートされていた、簡略化されたパラメーター形式と従来の HTTP メソッドが使用されます。

従来の URL 形式

従来の構文では、簡略化された URL 構造が使用されます。

https://playready.directtaps.net/pr/svc/rightsmanager.asmx?PlayRight=1&kid=KEY_ID

サポートされているレガシ パラメーター

PlayRight パラメーター

PlayRight パラメーターは、基本的なライセンスのアクセス許可を指定します。

  • 1: 再生を許可する (基本ライセンス)
  • 2: コピー保護による再生を許可する
  • 3: 強化された保護を使用して再生を許可する
  • 0: 再生を拒否する (拒否シナリオのテスト用)

キー ID パラメーター (kid)

従来の形式では、簡略化されたキー ID の仕様がサポートされています。

  • 標準 GUID 形式: 12345678-1234-1234-1234-123456789012
  • 簡略化された形式: 123456789012345678901234567890123456
  • Base64 でエンコードされた形式: base64-encoded-key-id

従来のライセンスの種類

基本再生ライセンス

https://playready.directtaps.net/pr/svc/rightsmanager.asmx?PlayRight=1&kid=12345678-1234-1234-1234-123456789012

Copy-Protected ライセンス

https://playready.directtaps.net/pr/svc/rightsmanager.asmx?PlayRight=2&kid=12345678-1234-1234-1234-123456789012

拡張保護ライセンス

https://playready.directtaps.net/pr/svc/rightsmanager.asmx?PlayRight=3&kid=12345678-1234-1234-1234-123456789012

従来の HTTP メソッド

POST 要求の形式

従来の SOAP ベースのライセンス取得:

POST /pr/svc/rightsmanager.asmx HTTP/1.1
Host: playready.directtaps.net
Content-Type: text/xml; charset=utf-8
SOAPAction: "http://schemas.microsoft.com/DRM/2007/03/protocols/AcquireLicense"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
  <soap:Body>
    <AcquireLicense xmlns="http://schemas.microsoft.com/DRM/2007/03/protocols">
      <challenge>base64-encoded-challenge</challenge>
    </AcquireLicense>
  </soap:Body>
</soap:Envelope>

GET 要求の形式

単純な GET ベースのライセンス要求:

GET /pr/svc/rightsmanager.asmx?PlayRight=1&kid=12345678-1234-1234-1234-123456789012 HTTP/1.1
Host: playready.directtaps.net

クライアント統合の例

従来の JavaScript 実装

// Legacy URL construction
function buildLegacyLicenseUrl(keyId, playRight) {
    return `https://playready.directtaps.net/pr/svc/rightsmanager.asmx?PlayRight=${playRight}&kid=${keyId}`;
}

// Basic license request
const licenseUrl = buildLegacyLicenseUrl(keyId, 1);

// Use with legacy PlayReady implementations

従来の C# 実装

// Legacy license request construction
public string BuildLegacyLicenseUrl(string keyId, int playRight)
{
    return $"https://playready.directtaps.net/pr/svc/rightsmanager.asmx?PlayRight={playRight}&kid={keyId}";
}

// Usage
string licenseUrl = BuildLegacyLicenseUrl(keyId, 1);

互換性マトリックス

PlayReady バージョンのサポート

PlayReady バージョン レガシ サポート 推奨されるアプローチ
1.0 - 1.3 完全 従来の構文
2.0 - 2.3 完全 レガシまたはモダン
3.0+ モダン構文
4.0+ 推奨されない モダン構文

クライアント プラットフォームのサポート

プラットホーム レガシ サポート 注記
Windows レガシ 完全 元の実装
Silverlight 完全 レガシ プラットフォームのサポート
Windows 10 以降 最新の API が優先される
モバイル プラットフォーム 場合により異なる プラットフォームのドキュメントを確認する

移行ガイダンス

従来の構文から

従来の構文から最新のアプローチに移行する場合:

手順 1: 現在の使用状況を特定する

// Current legacy usage
const legacyUrl = `https://playready.directtaps.net/pr/svc/rightsmanager.asmx?PlayRight=1&kid=${keyId}`;

手順 2: 最新の同等にマップする

// Modern equivalent
const modernConfig = {
    licenseType: "persistent",
    keyId: keyId,
    policies: {
        playback: {
            allowOffline: true
        }
    }
};

手順 3: ライセンスの取得を更新する

// Modern license request
const licenseUrl = "https://playready.directtaps.net/pr/svc/rightsmanager.asmx";
// Include modern configuration in request body

従来の構文の制限事項

機能上の制限事項

  • 制限付きポリシー制御: 基本的な再生アクセス許可のみ
  • 高度な機能なし: 最新の DRM 機能がありません
  • 簡易保護: 基本的なコピー保護オプション
  • ドメインのサポートなし: ドメイン バインド ライセンスはサポートされていません

セキュリティに関する考慮事項

  • 古い暗号化: 従来の暗号化方法を使用する
  • 制限付き検証: セキュリティ検証の削減
  • 互換性の問題: 最新のセキュリティ要件では動作しない可能性があります

レガシ実装のテスト

基本的な機能テスト

// Test basic playback
testLegacyLicense(keyId, 1); // Should allow playback

// Test copy protection
testLegacyLicense(keyId, 2); // Should enable copy protection

// Test denial scenario
testLegacyLicense(keyId, 0); // Should deny playback

互換性テスト

  1. バージョン テスト: 異なる PlayReady バージョンでテストする
  2. プラットフォーム テスト: サポートされているプラットフォームで確認する
  3. 機能テスト: 使用可能な機能が正しく動作するかどうかを検証する
  4. 移行テスト: 最新の構文へのアップグレード パスをテストする

エラー処理

Legacy-Specific エラー

  • サポートされていない PlayRight: PlayRight パラメーター値が無効です
  • レガシ キー形式: レガシ モードではキー ID 形式がサポートされていません
  • バージョンの不一致: クライアント バージョンがレガシ サーバーと互換性がありません

エラー応答の形式

従来のエラー応答では、簡略化された XML 形式が使用されます。

<?xml version="1.0" encoding="utf-8"?>
<Error>
    <Code>400</Code>
    <Message>Invalid PlayRight parameter</Message>
</Error>

ベスト プラクティス

従来の構文を使用する場合

  1. レガシ システム: 以前の PlayReady 実装のサポート
  2. 下位互換性: 既存のクライアントとの互換性の維持
  3. シンプルな要件: 高度な機能を使用しない基本的な再生
  4. 移行期間: 最新の実装への移行中

新しい実装の場合は、次の点を考慮してください。

今後のバージョンでの使用

: 従来の構文のサポートは下位互換性のために維持されますが、新しい実装では非推奨です。 強化された機能とセキュリティのために、最新の構文に移行することを検討してください。

サポートとトラブルシューティング

従来の構文に関する問題の場合:

  1. PlayReady バージョンの互換性を確認する
  2. パラメーターの形式と値を確認する
  3. 簡略化された構成でテストする
  4. 最新の構文への移行を検討する
  5. プラットフォーム固有のドキュメントを確認する

移行の支援と最新の代替手段については、 PlayReady テスト サーバー のメイン ドキュメントを参照してください。