SecureClassLoader
SecureClassLoader (보안 클래스 로더)
연관된 코드 소스(CodeSource)와 권한을 가진 클래스를 정의하는 추가 지원을 제공하는 ClassLoader 하위 클래스입니다. 권한은 기본적으로 시스템 정책에 의해 검색됩니다.
본문
SecureClassLoader는 ClassLoader를 확장해 CodeSource와 권한이 연관된 클래스를 정의하는 기능을 추가합니다. 코드 소스는 클래스가 로드된 원본(예: JAR 파일·원격 URL)을 나타내며, 보안 정책이 그 클래스에 부여할 권한을 결정하는 데 사용됩니다.
이 클래스가 제공하는 주요 메서드는 다음과 같습니다.
protected PermissionCollection getPermissions(CodeSource codesource)— 주어진CodeSource객체에 대한 권한을 반환합니다. 이 메서드는CodeSource를 인자로 받는defineClass메서드가 정의되는 클래스의ProtectionDomain을 구성할 때 호출됩니다.
ClassLoader의 일반적인 defineClass와 유사하지만, 로드되는 클래스에 코드 소스 기반의 보안 권한이 자동으로 연결됩니다. 그 결과 시스템이 정의된 클래스에 부여하는 권한이 코드 소스를 통해 결정됩니다.
자체 클래스 로더를 구현하는 경우 이 클래스를 상속하면 코드 소스와 권한 관리를 편리하게 처리할 수 있습니다.