SecureClassLoader

SecureClassLoader (보안 클래스 로더)

연관된 코드 소스(CodeSource)와 권한을 가진 클래스를 정의하는 추가 지원을 제공하는 ClassLoader 하위 클래스입니다. 권한은 기본적으로 시스템 정책에 의해 검색됩니다.

출처: Java API Reference

본문

SecureClassLoaderClassLoader를 확장해 CodeSource와 권한이 연관된 클래스를 정의하는 기능을 추가합니다. 코드 소스는 클래스가 로드된 원본(예: JAR 파일·원격 URL)을 나타내며, 보안 정책이 그 클래스에 부여할 권한을 결정하는 데 사용됩니다.

이 클래스가 제공하는 주요 메서드는 다음과 같습니다.

  • protected PermissionCollection getPermissions(CodeSource codesource) — 주어진 CodeSource 객체에 대한 권한을 반환합니다. 이 메서드는 CodeSource를 인자로 받는 defineClass 메서드가 정의되는 클래스의 ProtectionDomain을 구성할 때 호출됩니다.

ClassLoader의 일반적인 defineClass와 유사하지만, 로드되는 클래스에 코드 소스 기반의 보안 권한이 자동으로 연결됩니다. 그 결과 시스템이 정의된 클래스에 부여하는 권한이 코드 소스를 통해 결정됩니다.

자체 클래스 로더를 구현하는 경우 이 클래스를 상속하면 코드 소스와 권한 관리를 편리하게 처리할 수 있습니다.

더 알아보기 (Learn more)

Java 공식 API