library.policy 파일 권한
Java™ 2 보안은 각 Java 프로그램에 부여된 권한을 판별하기 위해 여러 정책 파일을 사용합니다.
WebSphere® Application Server에서 지원된 사용 가능한 정책 파일 목록은 Java 2 보안 정책 파일을 참조하십시오.
library.policy 파일은 공유 라이브러리의 템플리트입니다(Java 라이브러리 클래스). 복수 엔터프라이즈 애플리케이션은 공유된 라이브러리를 정의하고 사용할 수 있습니다. 공유 라이브러리를 정의하고 관리하는 방법에 대한 정보는 공유 라이브러리 관리를 참조하십시오.
공유 라이브러리에 대한 기본 권한(java.policy 파일, app.policy 파일 및 library.policy 파일에 정의된 권한의 유니온)이 충분한 경우, 필요한 조치는 없습니다. 기본 라이브러리 정책은 자동으로 선택됩니다. 셀에서 라이브러리를 공유하는 데 특정 변경사항이 필요하면, library.policy 파일을 업데이트하십시오.
정책 파일의 구문 오류로 인해 Application Server가 실패합니다. 이러한 정책 파일 편집은 주의하십시오.
정책 파일을 추출하려면, 명령 프롬프트에 사용자 환경에 적절한 변수 값을 사용하여 다음 명령을 입력합니다. 이전 두 행은 설명 목적으로만 두 행으로 분리되었습니다.
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
wsadmin> set obj [$AdminConfig extract cells/cell_name/nodes/
node_name/library.policy c:/temp/test/library.policy]
![[IBM i]](../images/iseries.gif)
wsadmin> set obj [$AdminConfig extract cells/cell_name/nodes/
node_name/library.policy /temp/test/library.policy]
![[z/OS]](../images/ngzos.gif)
wsadmin> set obj [$AdminConfig extract cells/cell_name/nodes/
node_name/library.policy /temp/test/library.policy]
정책 도구를 사용하여 추출된 library.policy 파일을 편집하십시오. 자세한 정보는 PolicyTool을 사용하여 Java 2 보안을 위해 정책 파일 편집의 내용을 참조하십시오.
정책 파일을 체크인하려면 명령 프롬프트에 사용자 환경에 적절한 변수 값을 사용하여 다음 명령을 입력합니다. 서버가 다시 시작된 후 업데이트된 library.policy가 공유 라이브러리에 적용됩니다.
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
wsadmin> $AdminConfig checkin cells/cell_name/nodes/node_name/library.policy
c:/temp/test/library.policy $obj
wsadmin> $AdminConfig checkin cells/cell_name/nodes/node_name/library.policy
temp/test/library.policy $obj
![[z/OS]](../images/ngzos.gif)
wsadmin> $AdminConfig checkin cells/cell_name/nodes/node_name/library.policy
temp/test/library.policy $obj
예제
java.policy 파일, app.policy 파일 및 library.policy 파일에 포함된 권한의 유니온은 공유된 라이브러리에 적용됩니다. library.policy 파일은 구성 및 파일 복제 서비스에서 관리됩니다.
파일에 작성된 변경사항은 셀의 다른 노드로 복제됩니다.
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[z/OS]](../images/ngzos.gif)
grant {
};
![[IBM i]](../images/iseries.gif)
grant {
};
셀의 공유 라이브러리가 java.policy 파일, app.policy 파일 및 library.policy 파일에서 기본값으로 정의되지 않는 권한을 필요로 하면, library.policy 파일을 업데이트하십시오. 권한이 누락되면 java.security.AccessControlException 예외가 발생합니다. 누락된 권한은 예외 데이터에 나열됩니다.
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[Windows]](../images/windows.gif)
java.security.AccessControlException: access denied (java.io.FilePermission
app_server_root/lib/mail-impl.jar read)
이전 행은 설명 용도로만 두 행으로 분리됩니다. app_server_root 변수는 설치 디렉토리를 표시합니다.![[IBM i]](../images/iseries.gif)
java.security.AccessControlException: access denied (java.io.FilePermission
app_server_rootBase/lib/mail-impl.jar read)
이전 행은 설명 용도로만 두 행으로 분리됩니다. Java 프로그램이 이 예외를 수신하고 이 권한 추가가 정당화되면 권한을 library.policy 파일에 추가하십시오.
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[Windows]](../images/windows.gif)
grant { permission java.io.FilePermission "app_server_root/lib/mail-impl.jar", "read"; };
이전 행은 설명 용도로만 두 행으로 분리됩니다. app_server_root 변수는 설치 디렉토리를 표시합니다.![[IBM i]](../images/iseries.gif)
grant codeBase "file:user_client_installed_location" { permission
java.io.FilePermission "app_server_rootBase/lib/mail-impl.jar", "read"; };
이전 행은 설명 용도로만 두 행으로 분리됩니다. 권한을 추가할지 여부를 판별하려면 Java 2 보안의 액세스 제어 예외를 참조하십시오.
library.policy 파일의 변경사항을 적용하려면 관련 Java 프로세스를 다시 시작하십시오.