질문/이슈
DRM 라이선스의 유효기간과 라이선스 토큰의 유효기간은 어떤 연관성과 차이점이 있는지 알고 싶습니다.
간략한 설명
DRM 라이선스 요청에 사용되는 토큰의 유효기간과 주로 다운로드 시나리오에 적용되는 DRM 라이선스 유효기간은 서로 다른 개념으로, 각각 다음과 같은 의미를 가지고 있습니다.
- 토큰 유효기간: 해당 토큰의 생성 시점(timestamp)으로부터 라이선스 요청에 사용되기 전까지의 유효기간 (라이선스 발급 가능 기간)
- 라이선스 유효기간: 토큰 또는 콜백 방식으로 발급 받은 DRM 라이선스의 유효 기간 (콘텐츠 재생 가능 기간)
토큰의 유효기간은 각 사이트 별로 DoveRunner 콘솔에서 설정 가능하며 기본 값은 600초(10분)입니다. 라이선스 유효기간은 토큰 내부의 Playback Policy 값에 의해 설정됩니다. (Duration 또는 만료 일시 지정 가능)
해결 방법
토큰 유효기간 만료 시
라이선스 요청 시 유효기간이 지난 토큰이 사용될 경우, 서버로부터 7011 에러(Token is Expired.)가 응답됩니다. 해당 에러를 방지하기 위해서는 라이선스 요청 시점 직전에 실시간으로 새로운 토큰을 생성해 사용해야 합니다.
상용 서비스가 아닌 트라이얼/개발 환경에서는 테스트 편의성을 위해 콘솔에서 토큰 유효기간을 임의로 길게 설정할 수도 있습니다. 상용 서비스에서는 토큰 값의 불법 재사용을 막기 위해 유효기간을 되도록 짧게 설정할 것을 권장합니다.
라이선스 유효기간 만료 시
DRM 콘텐츠 재생 시 해당 라이선스의 유효기간이 지난 경우, 클라이언트의 DRM 모듈에서 'License expired' 에러가 발생하게 됩니다. 이 때 일반적으로 서비스 앱에서 사용자에게 라이선스 재발급 여부를 확인하며, 고객사 정책에 따라 정상적인 권한을 가진 사용자의 경우 새로운 유효기간이 설정된 DRM 라이선스가 다시 발급되도록 구현할 수 있습니다.