Java 2 보안 정책 파일 구성

사용자는 지정된 항목에 대해 필수 권한이 부여되도록 Java™ 2 보안 정책 파일을 구성할 수 있습니다. WebSphere® Application Server 엔터프라이즈 애플리케이션.

시작하기 전에

Java 2 보안은 여러 개의 정책 파일을 사용하여 각 Java 프로그램에 대한 권한을 결정합니다.

지원되는 사용 가능한 정책 파일 목록은 Java 2 보안 정책 파일 주제를 참조하십시오. WebSphere Application Server.

WebSphere Application Server에서 지원하는 두 가지 유형의 정책 파일로는 동적 정책 파일 및 정책 파일이 있습니다. 정적 정책 파일은 기본 권한을 제공합니다. 동적 정책 파일은 애플리케이션 권한을 제공합니다. 6개의 동적 정책 파일이 제공됩니다.
표 1. 동적 정책 파일 . 이 표에는 동적 정책 파일이 나열됩니다.
정책 파일 이름 설명
app.policy 셀의 모든 엔터프라이즈 애플리케이션에 대한 기본 권한이 들어 있습니다.
메모: 업데이트app.policy파일은 해당 노드의 엔터프라이즈 애플리케이션에만 적용됩니다.app.policy파일이 속합니다.
was.policy WebSphere Application Server Enterprise 응용프로그램에 대한 응용프로그램 고유의 권한이 들어 있습니다. 이 파일은 EAR(Enterprise Archive) 파일에 패키지됩니다.
ra.xml WebSphere Application Server 엔터프라이즈 응용프로그램에 대한 커넥터 응용프로그램 고유의 권한이 들어 있습니다. 이 파일은 RAR(Resource Adapter Archive) 파일에 패키지됩니다.
spi.policy WebSphere Application Server에 임베드되는 SPI(Service Provider Interface) 또는 타사 자원에 대한 권한이 들어 있습니다. 기본 내용은 모든 것을 인정합니다. 셀이 셀의 SPI에 대해 더 많은 보호를 필요로 할 때 이 파일을 주의해서 업데이트하십시오. 이 파일은 정의된 모든 SPI에 적용됩니다.resources.xml파일로 내보냅니다.
library.policy 엔터프라이즈 애플리케이션의 공유 라이브러리에 대한 권한이 들어 있습니다.
filter.policy 필터링이 필요한 권한 목록이 포함되어 있습니다.was.policy파일과app.policy셀에 파일을 넣습니다. 이 필터링 메커니즘은 다음에만 적용됩니다.was.policyapp.policy파일만.
~ 안에 WebSphere Application Server, 애플리케이션에는 다음에 지정된 적절한 스레드 권한이 있어야 합니다.was.policy또는app.policy파일로 내보냅니다. 지정된 스레드 권한이 없으면 애플리케이션이 스레드를 조작할 수 없으며 WebSphere Application Server 생성 java.security.AccessControlException 예외. 다음app.policy파일은 지정된 노드에 적용됩니다. 하나의 권한을 변경하는 경우app.policy파일을 삭제하려면 나머지 노드의 동일한 파일에 새 스레드 정책을 통합해야 합니다. 또한 스레드 권한을app.policy파일을 다시 시작해야 합니다. WebSphere Application Server 새로운 권한을 시행합니다. 그러나 권한을 추가하면was.policy특정 응용 프로그램에 대한 파일을 다시 시작할 필요가 없습니다. WebSphere Application Server. 관리자는 다음 코드를was.policy또는app.policy스레드를 조작하기 위한 애플리케이션용 파일:
grant codeBase "file:${application}" {
  permission java.lang.RuntimePermission "stopThread";
  permission java.lang.RuntimePermission "modifyThread";
  permission java.lang.RuntimePermission "modifyThreadGroup";
};
중요한: 다음 정책 파일에서는 서명자 키워드가 지원되지 않습니다.app.policy,spi.policy,library.policy,was.policyfilter.policy파일만. 그러나 서명자 키워드는 다음 정책 파일에서 지원됩니다.java.policy,server.policyclient.policy파일만. Java 인증 및 권한 부여 서비스(JAAS )에서는 지원되지 않습니다.app.policy,spi.policy,library.policy,was.policyfilter.policy파일만. 그러나, 그 JAAS 주요 키워드는 다음에서 지원됩니다. JAAS 정책 파일이 지정된 경우java.security.auth.policyJVM(Java Virtual Machine) 시스템 속성입니다. 다음에서 권한 부여 정책 파일을 정적으로 설정할 수 있습니다.java.security.auth.policy바꿀 대상auth.policy.url.n=URL, where URL권한 부여 정책의 위치입니다.

프로시저

  1. 업데이트할 정책 파일을 식별하십시오.
    팁: 가장 작은 범위의 정책 파일을 선택하십시오. Java 프로그램에 대한 추가적인 권한 부여를 피하고 자원을 보호합니다. 업데이트할 수 있습니다.ra.xml파일 또는was.policy파일보다는app.policy파일로 내보냅니다. 특정 컴포넌트 기호 ($(ejbcomponent), ${webComponent},${connectorComponent} 및 ${jars}) than ${application} 기호를 사용하십시오. 정적 정책 파일보다는 동적 정책 파일을 업데이트하십시오.

    부여하고 싶지 않은 권한을 추가하세요. WebSphere Application Server 셀의 엔터프라이즈 애플리케이션을filter.policy파일로 내보냅니다. 인용하다 filter.policy 파일 권한.

  2. WebSphere Application Server 엔터프라이즈 응용프로그램을 다시 시작하십시오.

결과

지정된 WebSphere Application Server 엔터프라이즈 응용프로그램에 대해 필수 권한이 부여되었습니다.
[IBM i]

만약 WebSphere Application Server 셀의 엔터프라이즈 애플리케이션에는 권한이 필요하며 일부 동적 정책 파일을 업데이트해야 합니다. 누락된 권한의 증상은 java.security.AccessControlException 예외입니다. 누락된 권한은 다음 예외 데이터에 나열됩니다. 이는 한 행으로 나타나지만 가독성을 위해 섹션으로 분할됩니다.

[IBM i]
java.security.AccessControlException: access denied (java.io.FilePermission 
${was.install.root}/java/ext/mail.jar read)

Java 프로그램이 이 예외를 수신하고 이 권한 추가가 용인되면, 적절한 동적 정책 파일에 권한을 추가하십시오.

[IBM i]
grant codeBase "file:user_client_installed_location" { 
  permission java.io.FilePermission 
"${was.install.root}$(/)java$(/)jre$(/)lib$(/)ext$(/)mail.jar", "read";
};

이전 권한 정보 행은 설명을 위해서 분할되었습니다. 권한을 한 행에 입력하십시오.

권한 추가 여부를 결정하려면 다음을 참조하세요. Java 2 보안에 대한 액세스 제어 예외 주제.