| 패키지 | flash.net.drm |
| 클래스 | public class DRMManager |
| 상속 | DRMManager EventDispatcher Object |
| 언어 버전: | ActionScript 3.0 |
| 런타임 버전: | AIR 1.5 |
DRM으로 보호된 미디어 파일의 메타데이터에서 가져온 DRMContentData 객체를 사용하여 미디어 권한 서버에서 바우처를 미리 로드할 수 있습니다. DRMContentData 객체를 사용하여 로컬 캐시에서 개별 바우처를 쿼리할 수 있습니다. 그런 다음 모든 바우처를 재설정할 수 있습니다. 로컬 캐시의 모든 바우처를 열거하는 메서드는 제공되지 않습니다.
응용 프로그램에서 DRMManager 클래스의 새 인스턴스를 만들지 않아야 합니다. 정적 DRMManager.getDRMManager()를 사용하여 기존 DRMManager 객체에 액세스할 수 있습니다.
참고 사항
| 메서드 | 다음에 의해 정의됨 | ||
|---|---|---|---|
![]() | addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void 리스너에서 이벤트 알림을 받을 수 있도록 EventDispatcher 객체에 이벤트 리스너 객체를 등록합니다. | EventDispatcher | |
사용자를 인증합니다. | DRMManager | ||
![]() | 이벤트를 이벤트 흐름으로 전달합니다. | EventDispatcher | |
[정적] 단일 DRMManager 객체의 인스턴스를 반환합니다. | DRMManager | ||
![]() | EventDispatcher 객체에 특정 유형의 이벤트에 대한 리스너가 등록되어 있는지 여부를 확인합니다. | EventDispatcher | |
![]() | 지정된 속성이 객체에 정의되어 있는지 여부를 나타냅니다. | Object | |
![]() | Object 클래스의 인스턴스가 매개 변수로 지정된 객체의 프로토타입 체인에 있는지 여부를 나타냅니다. | Object | |
미디어 권한 서버 또는 로컬 바우처 캐시에서 바우처를 로드합니다. | DRMManager | ||
![]() | 지정된 속성이 존재하고 열거 가능한지 여부를 나타냅니다. | Object | |
![]() | EventDispatcher 객체에서 리스너를 제거합니다. | EventDispatcher | |
로컬로 캐시된 DRM(디지털 권한 관리) 바우처 데이터를 모두 삭제합니다. | DRMManager | ||
지정된 서버 및 도메인과 통신하는 데 사용할 인증 토큰을 설정합니다. | DRMManager | ||
![]() | 루프 작업에서 동적 속성을 사용할 수 있는지 여부를 설정합니다. | Object | |
![]() | 지정된 객체의 문자열 표현을 반환합니다. | Object | |
![]() | 지정된 객체의 프리미티브 값을 반환합니다. | Object | |
![]() | 이 EventDispatcher 객체 또는 조상 객체에 지정한 이벤트 유형에 대한 이벤트 리스너가 등록되어 있는지 여부를 확인합니다. | EventDispatcher | |
| 이벤트 | 요약 | 다음에 의해 정의됨 | ||
|---|---|---|---|---|
![]() | [브로드캐스트 이벤트] Flash Player 또는 AIR 응용 프로그램이 운영 체제 포커스를 얻어 활성화될 때 전달됩니다. | EventDispatcher | ||
| authenticate() 메서드를 호출한 후에 미디어 권한 서버에서 사용자가 인증될 때 DRMManager가 DRMAuthenticationCompleteEvent 객체를 전달합니다. | DRMManager | |||
| authenticate() 메서드를 호출한 후에 미디어 권한 서버에서 사용자가 인증되지 않을 때 DRMManager가 DRMAuthenticationErrorEvent 객체를 전달합니다. | DRMManager | |||
![]() | [브로드캐스트 이벤트] Flash Player 또는 AIR 응용 프로그램이 운영 체제 포커스를 잃고 비활성화될 때 전달됩니다. | EventDispatcher | ||
| 미디어 권한 서버에서 요청한 바우처를 얻을 때 DRMManager가 DRMStatusEvent 객체를 전달합니다. | DRMManager | |||
| 미디어 권한 서버에서 요청한 바우처를 얻을 수 없을 때 DRMManager가 DRMErrorEvent 객체를 전달합니다. | DRMManager | |||
| () | 메서드 |
public function authenticate(serverURL:String, domain:String, username:String, password:String):void| 언어 버전: | ActionScript 3.0 |
| 런타임 버전: | AIR 1.5 |
사용자를 인증합니다.
authenticationComplete 및 authenticationError 이벤트를 수신하여 인증 시도의 결과를 확인합니다. 여러 authenticate() 호출이 대기열에 있습니다. authenticationComplete 이벤트에 대해 전달되는 AuthenticationCompleteEvent 객체에는 응용 프로그램에서 저장할 수 있는 인증 토큰이 포함되어 있습니다.
저장된 인증 토큰이나 다른 방법으로 다운로드한 토큰을 사용하여 이후에 미디어 권한 서버와의 인증된 세션을 설정할 수 있습니다. 토큰을 사용하여 세션을 설정하려면 DRMManager setAuthenticationToken() 메서드를 호출합니다. 만료일과 같은 토큰 속성은 해당 토큰을 생성하는 서버의 설정에 의해 결정됩니다.
중요: 사용자의 인터넷 연결이 인증을 필요로 하는 프록시 서버를 통과하는 경우 authenticate() 메서드가 실패합니다. 이러한 사용자는 인증을 필요로 하는 DRM 바우처를 미리 로드할 수 없지만 응용 프로그램에서는 재생을 시작하고 NetStream setAuthenticationCredentials() 메서드를 통해 사용자를 프록시 서버와 미디어 권한 서버 모두에 로그인시켜 바우처를 가져올 수 있습니다. 바우처를 가져오면 바우처에 표시된 사용권에서 오프라인 재생을 허용하는 한 사용자는 내용을 오프라인으로 볼 수 있습니다.
매개 변수
serverURL:String — 보호된 내용을 보기 위한 바우처를 제공할 수 있는 미디어 권한 서버의 URL입니다. | |
domain:String — 네트워크 또는 인터넷 도메인 이름이 아니라 서버의 도메인입니다. | |
username:String — 사용자 계정 이름입니다. | |
password:String — 사용자 계정 암호입니다. |
참고 사항
| () | 메서드 |
public static function getDRMManager():DRMManager| 언어 버전: | ActionScript 3.0 |
| 런타임 버전: | AIR 1.5 |
단일 DRMManager 객체의 인스턴스를 반환합니다.
보안 도메인마다 하나의 DRMManager 인스턴스가 있습니다.
반환값DRMManager |
참고 사항
| () | 메서드 |
public function loadVoucher(contentData:DRMContentData, setting:String):void| 언어 버전: | ActionScript 3.0 |
| 런타임 버전: | AIR 1.5 |
미디어 권한 서버 또는 로컬 바우처 캐시에서 바우처를 로드합니다.
바우처는 setting 매개 변수에 따라 로드됩니다.
LoadVoucherSetting 클래스는 setting 매개 변수의 값으로 사용할 문자열 상수를 정의합니다.
바우처가 성공적으로 로드되면 DRMManager는 DRM 상태 이벤트를 전달합니다. 바우처가 로드되면 응용 프로그램에서 바로 재생을 시작할 수 있습니다. 로드된 바우처는 전달된 DRMStatusEvent 객체의 voucher 속성에서 사용할 수 있습니다. 이 바우처 객체를 사용하면 연결된 미디어 권한 정보를 사용자에게 표시할 수 있습니다.
미디어 권한 서버에서 바우처를 로드할 수 없는 경우에는 DRM 오류 이벤트가 전달됩니다. 전달된 DRMErrorEvent 객체의 errorID 속성은 실패 이유를 나타냅니다. 사용자가 오프라인일 때 FMRMS 서버에 대한 연결을 시도하고 사용자가 로그인하지 않았을 때 바우처를 로드하려고 하여 실패하는 경우가 많습니다. 응용 프로그램에서는 이러한 오류에 응답하고 수정 작업을 수행할 수 있습니다. 예를 들어 바우처를 다운로드하는 데 인증 자격 증명이 필요한 경우 사용자에게 계정 사용자 이름 및 암호를 입력하라는 메시지를 표시하고 DRMManager authenticate() 메서드를 호출한 다음 바우처 로드 작업을 다시 시도할 수 있습니다.
로컬 캐시에서 바우처를 가져올 수 없고 localOnly 설정이 사용되는 경우에는 DRMErrorEvent가 전달되지 않습니다. 대신 DRM 상태 이벤트가 전달됩니다. 이 DRMStatusEvent 객체의 detail 속성은 여전히 DRM.voucherObtained이지만 voucher 속성이 null입니다.
매개 변수
contentData:DRMContentData — DRM으로 보호된 미디어 파일의 DRMContentData 객체입니다. | |
setting:String — 바우처를 로컬 캐시에서 검색할지 아니면 미디어 권한 서버에서 검색할지 결정합니다. |
| () | 메서드 |
public function resetDRMVouchers():void| 언어 버전: | ActionScript 3.0 |
| 런타임 버전: | AIR 1.5 |
로컬로 캐시된 DRM(디지털 권한 관리) 바우처 데이터를 모두 삭제합니다.
사용자가 암호화된 내용에 액세스할 수 있으려면 응용 프로그램에서 필요한 바우처를 다시 다운로드해야 합니다. 이 함수를 호출하는 것은 Netstream.resetDRMVouchers()를 호출하는 것과 같습니다.
IOError — 바우처 데이터는 삭제할 수 없습니다. |
참고 사항
| () | 메서드 |
public function setAuthenticationToken(serverUrl:String, domain:String, token:ByteArray):void| 언어 버전: | ActionScript 3.0 |
| 런타임 버전: | AIR 1.5 |
지정된 서버 및 도메인과 통신하는 데 사용할 인증 토큰을 설정합니다.
인증 토큰은 authenticate() 메서드에 대한 호출이 성공한 후 전달된 DRMAuthenticationCompleteEvent 객체의 token 속성에서 사용할 수 있습니다. 이 토큰은 세션에 대해 자동으로 캐시되지만 setAuthenticationToken() 메서드를 사용하여 토큰을 직접 관리할 수 있습니다.
토큰을 설정하면 서버 및 도메인에 대해 기존에 캐시된 토큰이 덮어쓰여집니다. 캐시된 토큰을 지우려면 token 매개 변수를 null로 설정합니다.
매개 변수
serverUrl:String — 미디어 권한 서버의 URL입니다. | |
domain:String — 미디어 권한 서버의 도메인입니다. | |
token:ByteArray — 인증 토큰입니다. |
| 이벤트 |
flash.events.DRMAuthenticationCompleteEventflash.events.DRMAuthenticationCompleteEvent.AUTHENTICATION_COMPLETE| 언어 버전: | ActionScript 3.0 |
| 런타임 버전: | AIR 1.5 |
authenticate() 메서드를 호출한 후에 미디어 권한 서버에서 사용자가 인증될 때 DRMManager가 DRMAuthenticationCompleteEvent 객체를 전달합니다.
| 이벤트 |
flash.events.DRMAuthenticationErrorEventflash.events.DRMAuthenticationErrorEvent.AUTHENTICATION_ERROR| 언어 버전: | ActionScript 3.0 |
| 런타임 버전: | AIR 1.5 |
authenticate() 메서드를 호출한 후에 미디어 권한 서버에서 사용자가 인증되지 않을 때 DRMManager가 DRMAuthenticationErrorEvent 객체를 전달합니다.
| 이벤트 |
flash.events.DRMStatusEventflash.events.DRMStatusEvent.LOAD_VOUCHER_COMPLETE| 언어 버전: | ActionScript 3.0 |
| 런타임 버전: | AIR 1.5 |
미디어 권한 서버에서 요청한 바우처를 얻을 때 DRMManager가 DRMStatusEvent 객체를 전달합니다.
| 이벤트 |
flash.events.DRMErrorEventflash.events.DRMErrorEvent.LOAD_VOUCHER_ERROR| 언어 버전: | ActionScript 3.0 |
| 런타임 버전: | AIR 1.5 |
미디어 권한 서버에서 요청한 바우처를 얻을 수 없을 때 DRMManager가 DRMErrorEvent 객체를 전달합니다.
참고: 로컬 바우처 캐시에서 바우처 로드 시도(source 매개 변수로 localOnly 사용)에 실패하면 DRMErrorEvent 객체가 전달되지 않습니다. 대신 null로 설정된 voucher 속성이 포함된 DRMStatusEvent 객체는 전달됩니다.