Policy の作成
- 印刷する
- PDF
Policy の作成
- 印刷する
- PDF
記事の要約
この要約は役に立ちましたか?
ご意見ありがとうございます
One Click Multi DRMライセンス発行に必要な Policyを作成する APIです。
参考
- Policy詳細の設定により DRMライセンスに DRMタイプ別再生およびセキュリティレベルポリシーを適用できます。
- Policy詳細の設定によりライセンスの有効期間、 Persistentの有無など再生に関するポリシーを設定できます。
- 解像度別にトラックを分割したコンテンツの場合、playback policyは全トラックに同じように適用されます。
- One Click Multi DRM商品は現在、シングルキーライセンスのみサポートし、マルチトラック別ライセンスは今後サポート予定です。
- One Click Multi DRM商品で提供中の再生関連 Policy詳細オプションは、Pallycon Playback policy詳細オプション ガイドでご確認ください。
- One Click Multi DRM商品で提供中のセキュリティ関連 Policy詳細オプションは、Pallycon Security policy詳細オプション ガイドでご確認ください。
- One Click Multi DRM商品で提供する Policy詳細設定は、Pallycon DRMで提供するオプションをそのままサポートします。
DRMタイプ別の詳細サポート端末セキュリティレベルは、個別端末デバイスのサポート状況をご確認ください。
リクエスト
POST https://multi-drm.apigw.ntruss.com/api/v1/policy
リクエストヘッダ
ヘッダ名 | 要否 | 説明 |
---|---|---|
x-ncp-apigw-timestamp | YES | 1970年1月1日00:00:00協定世界時(UTC)からの経過時間をミリ秒(Millisecond)で表したもの API Gatewayサーバとの時間差が5分以上の場合は無効なリクエストとみなす x-ncp-apigw-timestamp:{Timestamp} |
x-ncp-iam-access-key | YES | NAVERクラウドプラットフォームポータルで発行した Access Key ID値x-ncp-iam-access-key:{Sub Account Access Key} |
x-ncp-apigw-signature-v2 | YES | Access Key ID値と Secret Keyで暗号化した署名x-ncp-apigw-signature-v2:{API Gateway Signature} |
Content-Type | YES | Request body content typeを application/jsonに指定Content-Type: application/json |
x-ncp-region_code | YES | リージョンコード(KR) |
リクエストボディ
フィールド名 | タイプ | 要否 | 制約 | 説明 |
---|---|---|---|---|
policyName | String | Y | ||
persistent | Boolean | Y | 基本値: false | オフライン用ライセンス保存の有無 True: ライセンス維持、false: 再生後、ライセンスを削除(ストリーミング) |
rentalDuration | Integer | Y | 基本値: 0 0-2,147,483,647 | オフラインレンタルシナリオ使用時の設定 (該当オプション使用時、persistent: true設定が必要) ダウンロード後、最初の再生開始時点までのライセンス有効期間(単位: 秒) |
playbackDuration | Integer | Y | 基本値: 0 0-2,147,483,647 | 最初の再生開始時点からのライセンス有効期間(単位: 秒) |
drmPolicyConfig | Object[Array] | Y | drm type別 policy詳細設定 | |
drmPolicyConfig{}.wideVine | Object | N | Widevineの policy | |
drmPolicyConfig{}.wideVine{}.useYn | Boolean | N | Widevineの policy設定の適用有無 | |
drmPolicyConfig{}.wideVine{}.securityLevel | Integer | N | 1:SW_SECURE_CRYPTO 2:SW_SECURE_DECODE 3:HW_SECURE_CRYPTO 4:HW_SEURE_DECODE 5:HW_SECURE_ALL | 該当トラックの Widevine security level設定 1:SW_SECURE_CRYPTO 2:SW_SECURE_DECODE 3:HW_SECURE_CRYPTO 4:HW_SECURE_DECODE 5:HW_SECURE_ALL - 5で設定した場合、Widevine L1デバイスでのみ再生可能 |
drmPolicyConfig{}.wideVine{}.hdcp | String | N | HDCP_NONE HDCP_V1 HDCP_V2 HDCP_V2_1 HDCP_V2_2 HDCP_NO_DIGITAL_OUTPUT | デジタル出力に対するセキュリティ(HDCP)レベル設定入力値: 「HDCP_NONE」、「HDCP_V1」、「HDCP_V2」、「HDCP_V2_1」、「HDCP_V2_2」、「HDCP_NO_DIGITAL_OUTPUT」のいずれか1つ |
drmPolicyConfig{}.wideVine{}.cgms | String | N | CGMS_NONE COPY_FREE COPY_ONCE COPY_NEVER | アナログ出力に対するセキュリティ(CGMS-A)レベル設定- 入力値: 「CGMS_NONE」、「COPY_FREE」、「COPY_ONCE」、「COPY_NEVER」のいずれか1つ |
drmPolicyConfig{}.wideVine{}.disableAnalogOutputYn | Boolean | N | アナログ出力許可の可否(false: アナログ出力を許可) | |
drmPolicyConfig{}.wideVine{}.hdcpSrmRule | String | N | HDCP_SRM_RULE_NONE CURRENT_SRM | HDCPデバイスが SRM(System Renewability Message)を処理できない場合に、そのトラックの再生可否を設定。 CURRENT_SRM: 最新 SRMが適用されないデバイスでは、そのトラックを再生できない。入力値: 「HDCP_SRM_RULE_NONE」、「CURRENT_SRM」のいずれか1つ |
drmPolicyConfig{}.wideVine{}.deviceRevocation | Boolean | N | Revoke(Widevineサポート対象から撤回)されたアンドロイドデバイスに対するライセンス発行許可の可否(基本値: 発行許可しない) | |
drmConfig{}.playReady | Object | N | PlayReadyの policy | |
drmConfig{}.playReady{}.useYn | Boolean | N | PlayReadyの policy設定の適用有無 | |
drmConfig{}.playReady{}.securityLevel | Integer | N | 150 2000 3000 | 該当トラックの PlayReady security level。(150、2000、3000)ハードウェア DRM適用時、3000に設定。 |
drmConfig{}.playReady{}.digitalVideoProtectionLevel | Integer | N | 100 250 270 300 301 | デジタルビデオ出力のセキュリティレベル設定(100、250、270、300、301) |
drmConfig{}.playReady{}.analogVideoProtectionLevel | Integer | N | 100 150 200 201 | アナログビデオ出力のセキュリティレベル設定(100、150、200、201) |
drmConfig{}.playReady{}.digitalAudioProtectionLevel | Integer | N | 100 250 300 301 | デジタルオーディオ出力のセキュリティレベル設定(100、250、300、301) |
drmConfig{}.playReady{}.hdcpUseYn | Boolean | N | OPL設定により HDCPが適用される場合、Type 1(HDCP V2.2以上)のリクエスト可否を設定。(true設定の場合、HDCP 2.2以上必要) | |
drmConfig{}.fairPlay | Object | N | FairPlay Streamingの policy | |
drmConfig{}.fairPlay{}.useYn | Boolean | Y | FairPlay Streamingの policy設定の適用有無 | |
drmConfig{}.fairPlay{}.hdcpEnforcement | String | N | -1(HDCP未適用) 0(HDCP Type 0(バージョン関係なし)) 1(HDCP Type 1(2.2以上必要)) | 該当トラックの HDCP適用の有無および HDCPバージョン -1: HDCP未適用 0: HDCP Type 0(バージョン関係なし) 1: HDCP Type 1(2.2以上必要) |
drmConfig{}.fairPlay{}.allowAirPlay | Boolean | N | AirPlay許可の可否 | |
drmConfig{}.fairPlay{}.allowAvAdaptor | Boolean | N | デジタル AVアダプタの出力許可の可否 |
レスポンス
フィールド名 | タイプ | 要否 | 制約 | 説明 |
---|---|---|---|---|
policyName | String | Y | ||
policyStatus | String | Y | CREATING READY DELETED UPDATING | Policy状態 |
policyId | Integer | Y | default Policy : 0 | 作成した PolicyId |
policyCreatedTime | Timestamp | N | Policy作成時刻 | |
policyUpdateTime | Timestamp | N | Policy設定変更時刻 | |
persistent | Boolean | Y | 基本値: false | オフライン用ライセンス保存の有無 True: ライセンス維持、false: 再生後、ライセンスを削除(ストリーミング) |
rentalDuration | Integer | Y | 基本値: 0 0-2,147,483,647 | オフラインレンタルシナリオ使用時の設定 (該当オプション使用時、persistent: true設定が必要) ダウンロード後、最初の再生開始時点までのライセンス有効期間(単位: 秒) |
playbackDuration | Integer | Y | 基本値: 0 0-2,147,483,647 | 最初の再生開始時点からのライセンス有効期間(単位: 秒) |
drmPolicyConfig | Object[Array] | Y | drm type別 policy詳細設定 | |
drmPolicyConfig{}.wideVine | Object | N | Widevineの policy | |
drmPolicyConfig{}.wideVine{}.useYn | Boolean | N | Widevineの policy設定の適用有無 | |
drmPolicyConfig{}.wideVine{}.securityLevel | Integer | N | 1:SW_SECURE_CRYPTO 2:SW_SECURE_DECODE 3:HW_SECURE_CRYPTO 4:HW_SECURE_DECODE 5:HW_SECURE_ALL | 該当トラックの Widevine security level設定 1:SW_SECURE_CRYPTO 2:SW_SECURE_DECODE 3:HW_SECURE_CRYPTO 4:HW_SECURE_DECODE 5:HW_SECURE_ALL - 5で設定した場合、Widevine L1デバイスでのみ再生可能 |
drmPolicyConfig{}.wideVine{}.hdcp | String | N | HDCP_NONE HDCP_V1 HDCP_V2 HDCP_V2_1 HDCP_V2_2 HDCP_NO_DIGITAL_OUTPUT | デジタル出力に対するセキュリティ(HDCP)レベル設定入力値: 「HDCP_NONE」、「HDCP_V1」、「HDCP_V2」、「HDCP_V2_1」、「HDCP_V2_2」、「HDCP_NO_DIGITAL_OUTPUT」のいずれか1つ |
drmPolicyConfig{}.wideVine{}.cgms | String | N | CGMS_NONE COPY_FREE COPY_ONCE COPY_NEVER | アナログ出力に対するセキュリティ(CGMS-A)レベル設定- 入力値: 「CGMS_NONE」、「COPY_FREE」、「COPY_ONCE」、「COPY_NEVER」のいずれか1つ |
drmPolicyConfig{}.wideVine{}.disableAnalogOutputYn | Boolean | N | アナログ出力許可の可否(false: アナログ出力を許可) | |
drmPolicyConfig{}.wideVine{}.hdcpSrmRule | String | N | HDCP_SRM_RULE_NONE CURRENT_SRM | HDCPデバイスが SRM(System Renewability Message)を処理できない場合に、そのトラックの再生可否を設定。 CURRENT_SRM: 最新 SRMが適用されないデバイスでは、そのトラックを再生できない。入力値: 「HDCP_SRM_RULE_NONE」、「CURRENT_SRM」のいずれか1つ |
drmPolicyConfig{}.wideVine{}.deviceRevocation | Boolean | N | Revoke(Widevineサポート対象から撤回)されたアンドロイドデバイスに対するライセンス発行許可の可否(基本値: 発行許可しない) | |
drmConfig{}.playReady | Object | N | PlayReadyの policy | |
drmConfig{}.playReady{}.useYn | Boolean | N | PlayReadyの policy設定の適用有無 | |
drmConfig{}.playReady{}.securityLevel | Integer | N | 150 2000 3000 | 該当トラックの PlayReady security level 150, 2000, 3000 ハードウェア DRM適用時、3000に設定。 |
drmConfig{}.playReady{}.digitalVideoProtectionLevel | Integer | N | 100 250 270 300 301 | デジタルビデオ出力のセキュリティレベル設定(100、250、270、300、301) |
drmConfig{}.playReady{}.analogVideoProtectionLevel | Integer | N | 100 150 200 201 | アナログビデオ出力のセキュリティレベル設定(100、150、200、201) |
drmConfig{}.playReady{}.digitalAudioProtectionLevel | Integer | N | 100 250 300 301 | デジタルオーディオ出力のセキュリティレベル設定(100、250、300、301) |
drmConfig{}.playReady{}.hdcpUseYn | Boolean | N | OPL設定により HDCPが適用される場合、Type 1(HDCP V2.2以上)のリクエスト可否を設定 (true設定の場合、HDCP 2.2以上必要) | |
drmConfig{}.fairPlay | Object | N | FairPlay Streamingの policy | |
drmConfig{}.fairPlay{}.useYn | Boolean | Y | FairPlay Streamingの policy設定の適用有無 | |
drmConfig{}.fairPlay{}.hdcpEnforcement | String | N | -1(HDCP未適用) 0(HDCP Type 0(バージョン関係なし)) 1(HDCP Type 1(2.2以上必要)) | 該当トラックの HDCP適用の有無および HDCPバージョン -1: HDCP未適用 0: HDCP Type 0(バージョン関係なし) 1: HDCP Type 1(2.2以上必要) |
drmConfig{}.fairPlay{}.allowAirPlay | Boolean | N | AirPlay許可の可否 | |
drmConfig{}.fairPlay{}.allowAvAdaptor | Boolean | N | デジタル AVアダプタの出力許可の可否 |
例
リクエスト例
POST /api/v1/policy
HOST: multi-drm.apigw.ntruss.com
Content-Type: application/json
x-ncp-apigw-timestamp:1521787414578
x-ncp-iam-access-key:6uxz1nKkcYwUjWRG5Q1V7NsW0i5jErlu2NjBXXgy
x-ncp-apigw-signature-v2:iJFK773KH0WwQ79PasqJ+ZGixtpDQ/abS57WGQdld2M=
x-ncp-region_code:KR
# case 1. set all drmType
{
"drmPolicyConfig": {
"fairplay": {
"allowAirPlay": true,
"allowAvAdaptor": true,
"hdcpEnforcement": "-1",
"useYn": true
},
"playready": {
"analogVideoProtectionLevel": "100",
"digitalAudioProtectionLevel": "100",
"digitalVideoProtectionLevel": "100",
"hdcpUseYn": true,
"securityLevel": "150",
"useYn": true
},
"widevine": {
"cgms": "CGMS_NONE",
"deviceRevocation": true,
"disableAnalogOutputYn": true,
"hdcp": "HDCP_NONE",
"hdcpSrmRule": "HDCP_SRM_RULE_NONE",
"securityLevel": "1",
"useYn": true
}
},
"persistent": true,
"playbackDuration": 0,
"policyName": "mySamplePolicy",
"rentalDuration": 0
}
POST /api/v1/policy
HOST: multi-drm.apigw.ntruss.com
Content-Type: application/json
x-ncp-apigw-timestamp:1521787414578
x-ncp-iam-access-key:6uxz1nKkcYwUjWRG5Q1V7NsW0i5jErlu2NjBXXgy
x-ncp-apigw-signature-v2:iJFK773KH0WwQ79PasqJ+ZGixtpDQ/abS57WGQdld2M=
x-ncp-region_code:KR
# case 2. set drm policy without fairPlay
{
"drmPolicyConfig": {
"fairplay": {
"useYn": false
},
"playready": {
"analogVideoProtectionLevel": "100",
"digitalAudioProtectionLevel": "100",
"digitalVideoProtectionLevel": "100",
"hdcpUseYn": true,
"securityLevel": "150",
"useYn": true
},
"widevine": {
"cgms": "CGMS_NONE",
"deviceRevocation": true,
"disableAnalogOutputYn": true,
"hdcp": "HDCP_NONE",
"hdcpSrmRule": "HDCP_SRM_RULE_NONE",
"securityLevel": "1",
"useYn": true
}
},
"persistent": true,
"playbackDuration": 0,
"policyName": "mySamplePolicy",
"rentalDuration": 0
}
レスポンス例
HTTP/1.1 200 OK
Server: nginx
Date: Fri, 20 Nov 2023 19:53:32 GMT
Content-Type: application/json;charset=utf-8
Connection: keep-alive
Access-Control-Allow-Origin: *
x-ncp-trace-id: 36c9k60om4p3238cpmc9gm4cj4
### case 1.
{
"success": true,
"content": {
"policyId": 122,
"policyName": "mySamplePolicy",
"policyStatus": "CREATED",
"policyCreatedTime": 1700479924517,
"policyUpdateTime": 1700479924526,
"persistent": true,
"rentalDuration": 0,
"playbackDuration": 0,
"drmPolicyConfig": {
"wideVine": {
"useYn": true,
"securityLevel": 1,
"hdcp": "HDCP_NONE",
"cgms": "CGMS_NONE",
"disableAnalogOutputYn": true,
"hdcpSrmRule": "HDCP_SRM_RULE_NONE",
"deviceRevocation": true
},
"playReady": {
"useYn": true,
"securityLevel": 150,
"digitalVideoProtectionLevel": 100,
"analogVideoProtectionLevel": 100,
"digitalAudioProtectionLevel": 100,
"hdcpUseYn": true
},
"fairPlay": {
"useYn": true,
"hdcpEnforcement": -1,
"allowAirPlay": true,
"allowAvAdaptor": true
}
}
}
}
HTTP/1.1 200 OK
Server: nginx
Date: Fri, 20 Nov 2023 19:53:32 GMT
Content-Type: application/json;charset=utf-8
Connection: keep-alive
Access-Control-Allow-Origin: *
x-ncp-trace-id: 36c9k60om4p3238cpmc9gm4cj4
### case 2.
{
"success": true,
"content": {
"policyId": 123,
"policyName": "mySamplePolicy",
"policyStatus": "CREATED",
"policyCreatedTime": 1700480181622,
"policyUpdateTime": 1700480181634,
"persistent": true,
"rentalDuration": 0,
"playbackDuration": 0,
"drmPolicyConfig": {
"wideVine": {
"useYn": true,
"securityLevel": 1,
"hdcp": "HDCP_NONE",
"cgms": "CGMS_NONE",
"disableAnalogOutputYn": true,
"hdcpSrmRule": "HDCP_SRM_RULE_NONE",
"deviceRevocation": true
},
"playReady": {
"useYn": true,
"securityLevel": 150,
"digitalVideoProtectionLevel": 100,
"analogVideoProtectionLevel": 100,
"digitalAudioProtectionLevel": 100,
"hdcpUseYn": true
},
"fairPlay": {
"useYn": false
}
}
}
}
この記事は役に立ちましたか?