ポリシーの更新

Prev Next

Classic/VPC環境で利用できます。

DRMポリシーを更新します。

参考

サイトに適用されているポリシーを更新するには、まずサイトを無効にしてください。サイトが有効になっている状態でポリシーを更新すると、ライセンスの発行と再生に影響を与える可能性があります。

リクエスト

リクエスト形式を説明します。リクエスト形式は次の通りです。

メソッド URI
PUT /api/v1/policy/{policyId}

リクエストヘッダ

One Click Multi DRM APIで共通して使用されるヘッダの詳細は、One Click Multi DRMのリクエストヘッダをご参照ください。

リクエストパスパラメータ

リクエストパスパラメータの説明は次の通りです。

フィールド タイプ 必須の有無 説明
policyId Integer Required DRMポリシー ID

リクエストボディ

リクエストボディの説明は次の通りです。

フィールド タイプ 必須の有無 説明
policyName String Required ポリシー名
  • 英数字、記号の「_」を使用して3~20文字以内で入力
persistent Boolean Required オフライン用ライセンスを保存するか
  • true | false (デフォルト)
    • true: ライセンスを維持
    • false: 再生後にライセンスを削除(ストリーミング)
  • rentalDuration(オフラインレンタルシナリオ)を使用する場合、trueと必ず入力
rentalDuration Integer Required オフラインライセンス取得後、コンテンツの初回再生の有効期間(秒)
  • 0~2,147,483,647 (デフォルト: 0)
  • オフラインレンタルシナリオ使用時、設定
playbackDuration Integer Required コンテンツの初回再生開始時以降のライセンス有効期間(秒)
  • 0~2,147,483,647 (デフォルト: 0)
drmPolicyConfig Object Required DRMタイプ別のポリシー設定
drmPolicyConfig.widevine Object Required Widevineタイプのポリシー
drmPolicyConfig.widevine.useYn Boolean Required Widevineポリシーを使用するか
  • true | false
    • true: 使用
    • false: 使用しない
drmPolicyConfig.widevine.securityLevel Integer Optional Widevineセキュリティレベルの値
  • 1 (デフォルト) | 2 | 3 | 4 | 5
    • 1: SW_SECURE_CRYPTO
    • 2: SW_SECURE_DECODE
    • 3: HW_SECURE_CRYPTO
    • 4: HW_SECURE_DECODE
    • 5: HW_SECURE_ALL (Widevine L1機器のみ再生可能)
  • 数字が大きいほどセキュリティレベルが高い
drmPolicyConfig.widevine.hdcp String Optional デジタル出力のセキュリティ(HDCP)レベル
  • HDCP_NONE (デフォルト) | HDCP_V1 | HDCP_V2 | HDCP_V2_1 | HDCP_V2_2 | HDCP_NO_DIGITAL_OUTPUT
  • バージョンが新しいほどセキュリティレベルが高い
drmPolicyConfig.widevine.cgms String Optional アナログ出力のセキュリティ(CGMS-A)レベル
  • CGMS_NONE (デフォルト) | COPY_FREE | COPY_ONCE | COPY_NEVER
drmPolicyConfig.widevine.disableAnalogOutputYn Boolean Optional アナログ出力をブロックするか
  • true | false (デフォルト)
    • true: ブロック
    • false: 許可
drmPolicyConfig.widevine.hdcpSrmRule String Optional HDCP機器が SRM(System Renewability Message)を処理できない場合にそのトラックを再生するか
  • HDCP_SRM_RULE_NONE (デフォルト) | CURRENT_SRM
    • HDCP_SRM_RULE_NONE: そのトラックを再生
    • CURRENT_SRM: そのトラックを再生しない
drmPolicyConfig.widevine.deviceRevocation Boolean Optional Revoke(Widevineサポート対象から取り消された)Android機器に対するライセンス発行を許可するか
  • true | false (デフォルト)
    • true: 許可
    • false: 許可しない
drmPolicyConfig.playready Object Required PlayReadyタイプのポリシー
drmPolicyConfig.playready.useYn Boolean Required PlayReadyポリシーを使用するか
  • true | false
    • true: 使用
    • false: 使用しない
drmPolicyConfig.playready.securityLevel Integer Optional PlayReadyセキュリティレベルの値
  • 150 (デフォルト) | 2000 | 3000
  • ハードウェア DRM適用時、3000に設定
  • 数字が大きいほどセキュリティレベルが高い
drmPolicyConfig.playready.digitalVideoProtectionLevel Integer Optional デジタルビデオ出力のセキュリティレベル
  • 100 (デフォルト) | 250 | 270 | 300 | 301
  • 数字が大きいほどセキュリティレベルが高い
drmPolicyConfig.playready.analogVideoProtectionLevel Integer Optional アナログビデオ出力のセキュリティレベル
  • 100 (デフォルト) | 150 | 200 | 201
  • 数字が大きいほどセキュリティレベルが高い
drmPolicyConfig.playready.digitalAudioProtectionLevel Integer Optional デジタルオーディオ出力のセキュリティレベル
  • 100 (デフォルト) | 250 | 300 | 301
  • 数字が大きいほどセキュリティレベルが高い
drmPolicyConfig.playready.hdcpUseYn Boolean Optional OPL(出力保護レベル)設定により HDCPが適用される場合、Type 1(HDCP 2.2以降)が必要か
  • true | false (デフォルト)
    • true: Type 1(HDCP 2.2以降)が必要
    • false: HDCPは必要なし
  • trueに設定すると HDCP 2.2以降に対応する機器のみコンテンツを再生できる
drmPolicyConfig.fairplay Object Required FairPlay Streamingタイプのポリシー
drmPolicyConfig.fairplay.useYn Boolean Required FairPlay Streamingポリシーを使用するか
  • true | false
    • true: 使用
    • false: 使用しない
drmPolicyConfig.fairplay.hdcpEnforcement String Optional HDCPを適用するかどうかとバージョン
  • -1 (デフォルト) | 0 | 1
    • -1: HDCP未適用
    • 0: HDCP Type 0 (バージョン関係なし)
    • 1: HDCP Type 1 (2.2以降が必要)
drmPolicyConfig.fairplay.allowAirPlay Boolean Optional AirPlayを許可するか
  • true (デフォルト) | false
    • true: 許可
    • false: 許可しない
drmPolicyConfig.fairplay.allowAvAdaptor Boolean Optional デジタル AVアダプタを利用した出力を許可するか
  • true (デフォルト) | false
    • true: 許可
    • false: 許可しない

リクエスト例

リクエストのサンプルコードは次の通りです。

curl --location --request PUT 'https://multi-drm.apigw.ntruss.com/api/v1/policy/82' \
--header 'x-ncp-apigw-timestamp: {Timestamp}' \
--header 'x-ncp-iam-access-key: {Access Key}' \
--header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' \
--header 'Content-Type: application/json' \
--header 'x-ncp-region_code: KR' \
--data '{
    "policyName": "myPolicy",
    "persistent": true,
    "rentalDuration": 10,
    "playbackDuration": 10,
    "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
        }
    }
}'

レスポンス

レスポンス形式を説明します。

レスポンスボディ

レスポンスボディの説明は次の通りです。

フィールド タイプ 必須の有無 説明
success Boolean - API処理結果
  • true | false
    • true: 成功
    • false: 失敗
content Object - ポリシー情報
content.disabled Boolean - Sub Accountは無効化するか
  • true | false
    • true: 無効化
    • false: 有効化
content.policyId Integer - DRMポリシー ID
  • 0: Basic
content.policyName String - ポリシー名
content.policyStatus String - ポリシーの状態
  • CREATED | CREATING | READY | DELETED | UPDATING
    • CREATED: 作成完了
    • CREATING: 作成中
    • READY: 使用可能
    • DELETED: 削除完了
    • UPDATING: 更新中
content.policyCreatedTime Integer - ポリシーの作成日時(ミリ秒)
  • Unix Timestamp形式
content.policyUpdateTime Integer - ポリシーの更新日時(ミリ秒)
  • Unix Timestamp形式
content.persistent Boolean - オフライン用ライセンスを保存するか
  • true | false
    • true: ライセンスを維持
    • false: 再生後にライセンスを削除(ストリーミング)
content.rentalDuration Integer - オフラインライセンス取得後、コンテンツの初回再生の有効期間(秒)
content.playbackDuration Integer - コンテンツの初回再生開始時以降のライセンス有効期間(秒)
content.drmPolicyConfig Object - DRMタイプ別のポリシー設定
content.drmPolicyConfig.wideVine Object - Widevineタイプのポリシー
content.drmPolicyConfig.wideVine.useYn Boolean - Widevineポリシーを使用するか
  • true | false
    • true: 使用
    • false: 使用しない
content.drmPolicyConfig.wideVine.securityLevel Integer - Widevineセキュリティレベルの値
  • 1 | 2 | 3 | 4 | 5
    • 1: SW_SECURE_CRYPTO
    • 2: SW_SECURE_DECODE
    • 3: HW_SECURE_CRYPTO
    • 4: HW_SECURE_DECODE
    • 5: HW_SECURE_ALL (Widevine L1機器のみ再生可能)
  • 数字が大きいほどセキュリティレベルが高い
content.drmPolicyConfig.wideVine.hdcp String - デジタル出力のセキュリティ(HDCP)レベル
  • HDCP_NONE | HDCP_V1 | HDCP_V2 | HDCP_V2_1 | HDCP_V2_2 | HDCP_NO_DIGITAL_OUTPUT
  • バージョンが新しいほどセキュリティレベルが高い
content.drmPolicyConfig.wideVine.cgms String - アナログ出力のセキュリティ(CGMS-A)レベル
  • CGMS_NONE | COPY_FREE | COPY_ONCE | COPY_NEVER
content.drmPolicyConfig.wideVine.disableAnalogOutputYn Boolean - アナログ出力をブロックするか
  • true | false
    • true: ブロック
    • false: 許可
content.drmPolicyConfig.wideVine.hdcpSrmRule String - HDCP機器が SRM(System Renewability Message)を処理できない場合にそのトラックを再生するか
  • HDCP_SRM_RULE_NONE | CURRENT_SRM
    • HDCP_SRM_RULE_NONE: そのトラックを再生
    • CURRENT_SRM: そのトラックを再生しない
content.drmPolicyConfig.wideVine.deviceRevocation Boolean - Revoke (Widevineサポート対象から取り消された)Android機器に対するライセンス発行を許可するか
  • true | false
    • true: 許可
    • false: 許可しない
content.drmPolicyConfig.playReady Object - PlayReadyタイプのポリシー
content.drmPolicyConfig.playReady.useYn Boolean - PlayReadyポリシーを使用するか
  • true | false
    • true: 使用
    • false: 使用しない
content.drmPolicyConfig.playReady.securityLevel Integer - PlayReadyセキュリティレベルの値
  • 150 | 2000 | 3000
  • ハードウェア DRM適用時、3000に設定
  • 数字が大きいほどセキュリティレベルが高い
content.drmPolicyConfig.playReady.digitalVideoProtectionLevel Integer - デジタルビデオ出力のセキュリティレベル
  • 100 | 250 | 270 | 300 | 301
  • 数字が大きいほどセキュリティレベルが高い
content.drmPolicyConfig.playReady.analogVideoProtectionLevel Integer - アナログビデオ出力のセキュリティレベル
  • 100 | 150 | 200 | 201
  • 数字が大きいほどセキュリティレベルが高い
content.drmPolicyConfig.playReady.digitalAudioProtectionLevel Integer - デジタルオーディオ出力のセキュリティレベル
  • 100 | 250 | 300 | 301
  • 数字が大きいほどセキュリティレベルが高い
content.drmPolicyConfig.playReady.hdcpUseYn Boolean - OPL(出力保護レベル)設定により HDCPが適用される場合、Type 1(HDCP 2.2以降)が必要か
  • true | false
    • true: Type 1(HDCP 2.2以降)が必要
    • false: HDCPは必要なし
  • trueに設定すると HDCP 2.2以降に対応する機器のみコンテンツを再生できる
content.drmPolicyConfig.fairPlay Object - FairPlay Streamingタイプのポリシー
content.drmPolicyConfig.fairPlay.useYn Boolean - FairPlay Streamingポリシーを使用するか
  • true | false
    • true: 使用
    • false: 使用しない
content.drmPolicyConfig.fairPlay.hdcpEnforcement String - HDCPを適用するかどうかとバージョン
  • -1 | 0 | 1
    • -1: HDCP未適用
    • 0: HDCP Type 0 (バージョン関係なし)
    • 1: HDCP Type 1 (2.2以降が必要)
content.drmPolicyConfig.fairPlay.allowAirPlay Boolean - AirPlayを許可するか
  • true | false
    • true: 許可
    • false: 許可しない
content.drmPolicyConfig.fairPlay.allowAvAdaptor Boolean - デジタル AVアダプタを利用した出力を許可するか
  • true | false
    • true: 許可
    • false: 許可しない

レスポンスステータスコード

One Click Multi DRM APIで共通して使用されるレスポンスステータスコードの詳細は、One Click Multi DRMのレスポンスステータスコードをご参照ください。

レスポンス例

レスポンスのサンプルコードは次の通りです。

{
    "success": true,
    "content": {
        "disabled": false,
        "policyId": 82,
        "policyName": "myPolicy",
        "policyStatus": "CREATED",
        "policyCreatedTime": 1757896403844,
        "policyUpdateTime": 1757897494407,
        "persistent": true,
        "rentalDuration": 10,
        "playbackDuration": 10,
        "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
            }
        }
    }
}