PlayReady 失効
失効とは、セキュリティが侵害されたクライアントを特定し、保護されているコンテンツを復号化するための追加ライセンスへのアクセスをそれらのクライアントが取得できないようにするプロセスです。
セキュリティが侵害されたクライアントが Microsoft によって識別されると、デバイスが取り消され、失効リストに追加される可能性があります。 失効リストは、保護されたコンテンツのライセンスを発行するライセンス サーバーによって定期的にダウンロードされます。 ライセンス サーバーはこの失効リストを使用して、取り消されたデバイスに対するライセンスを拒否するため、デバイスが新しく保護されたコンテンツを再生できなくなります。
失効リストは、デバイスが最新でない場合に更新されます。 失効リストは、ライセンスで発行することもできます。 デバイス上の DRM コンポーネントは、他のデバイスにコンテンツを転送する前に、この失効リストをチェックします。 取り消されたコンポーネントとの通信を防ぐことで、取り消されたアプリケーションは機能しなくなります。 取り消されたら、取り消された要素を置き換えるか、失効したコンポーネントを失効リストの新しいバージョンから削除するしかありません。
Microsoft では、失効リストとそのバージョン管理構造を構築および管理しています。 PlayReady のお客様は、次のリンクからこのリストをダウンロードできます。
PlayReady 失効リスト (https): https://aka.ms/revinfo
PlayReady 失効リスト (http): https://go.microsoft.com/fwlink/?LinkId=110086
PlayReady 製品のコンプライアンス規則の要件に従って、PlayReady サーバーを運用している企業は、"週に 1 回、PlayReady Server ごとに PlayReady Server Software Development Kit 証明書失効リストを更新する必要があります"。 これにより、侵害されたクライアントは、Microsoft による失効リストへの追加後、合理的な期間内にライセンス要求が拒否されます。
PlayReady Server バージョン 4.3 以降では、サーバー アプリケーションは 1 つ以上の取り消されたハッシュを明示的に無視し、取り消された場合でもコンテンツを発行し続ける場合があります。 これは、保護されたコンテンツの生成と配布の両方を行い、そのコンテンツが流れる場所をより詳細に制御したい企業に役立つ場合があります。
この機能を利用するには、無視する証明書ハッシュを含む新しい XML ファイルを作成し、RMSDK 実装のweb.config ファイルに新しいエントリを追加する必要があります。 XML ファイルの形式は次のとおりです。
<?xml version="1.0" ENCODING="utf-8"?>
<RevAllowInfo>
<AllowList>
<CertificateHash>2C4OCYBGE3XZ3ODIUVUWD0SVLWH4W1NX9EA5DMJZ/PK=</CertificateHash>
<CertificateHash>9OHU9A1KAJYI9BUWQWAVXBOO7R4XS+GG8HV0ESDBTNW=</CertificateHash>
</AllowList>
</RevAllowInfo>
"CertificateHash" ノード内のデータは、失効したモデルまたは会社の証明書のハッシュと一致する必要があります。 Microsoft は、今後の失効のために、対応するモデル情報と共にこの情報を公開する予定です。
また、サーバー構成内からこの XML ファイルを参照する必要もあります。
.Net Core ベースの RMSDK デプロイの場合:
- XML ファイルは項目プロジェクトとして追加する必要があります。
- config/RMSDKConfig.cs の RevocationAllowFile 文字列は、XML ファイルへのパスで更新する必要があります。
IIS ベースの RMSDK デプロイの場合:
- XML ファイルを指す "REVOCATIONALLOWFILE" という名前の新しいキーをweb.config ファイルに追加します。
- たとえば、上記の XML ファイルの名前が "REVOCATIONALLOWSAMPLE.XML" の場合、web.config ファイルは次のように更新されます。
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<appSettings>
...
<add key="RevocationAllowFile" value="REVOCATIONALLOWSAMPLE.XML">
...