Policy 수정
- 인쇄
- PDF
Policy 수정
- 인쇄
- PDF
기사 요약
이 요약이 도움이 되었나요?
의견을 보내 주셔서 감사합니다.
One Click Multi DRM 라이선스 발급에 필요한 Policy 설정을 수정하는 API입니다.
참고
Policy 수정 시 유의 사항은 다음과 같습니다.
- Site 가 활성화된 상태에서 이용 중인 policy 를 수정할 경우 라이선스 발급 재생에 영향을 줄 수 있습니다.
- Policy 수정이 필요하신 경우 가급적 Site OFF 상태에서 진행하시기를 권장해 드립니다.
요청
PUT https://multi-drm.apigw.ntruss.com/api/v1/{policyId}
요청 헤더
헤더명 | 필수 여부 | 설명 |
---|---|---|
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 | 네이버 클라우드 플랫폼 포털에서 발급받은 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_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” 중 하나 | |
drmPolicyConfig{}.wideVine{}.cgms | String | N | CGMS_NONE COPY_FREE COPY_ONCE COPY_NEVER | 아날로그 출력에 대한 보안(CGMS-A) 레벨 설정- 입력값: “CGMS_NONE”, “COPY_FREE”, “COPY_ONCE”, “COPY_NEVER” 중 하나 | |
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” 중 하나 | |
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” 중 하나 |
drmPolicyConfig{}.wideVine{}.cgms | String | N | CGMS_NONE COPY_FREE COPY_ONCE COPY_NEVER | 아날로그 출력에 대한 보안(CGMS-A) 레벨 설정- 입력값: “CGMS_NONE”, “COPY_FREE”, “COPY_ONCE”, “COPY_NEVER” 중 하나 |
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” 중 하나 |
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 어댑터를 통한 출력 허용 여부 |
예시
요청 예시
PUT /api/v1/policy/1
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
{
"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
{
"success": true,
"content": {
"policyId": 123,
"policyName": "mySamplePolicy",
"policyStatus": "UPDATING",
"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
}
}
}
}
이 문서가 도움이 되었습니까?