애플리케이션 개발을 위해 자원 및 API(Java 2 보안) 보호
Java™ 2 보안은 매우 광범위하고 애플리케이션 개발에 큰 영향을 미치는 프로그래밍 모델입니다.
시작하기 전에
Java 2 보안은 다음과 직교합니다. Java Platform, Enterprise Edition ( Java EE ) 역할 기반 보안; 관리 보안과 별도로 이를 비활성화하거나 활성화할 수 있습니다.
그러나 이는 다음과 같은 추가 수준의 액세스 제어 보호를 제공합니다. Java EE 역할 기반 권한 부여. 특히 시스템 자원 및 API(Application Programming Interface)의 보호를 제공합니다. 관리자는 Java 2 보안 비활성화로 인한 위험에 대한 이점을 고려해야 합니다.
테스트 또는 제품 환경에서 Java 2 보안을 사용 가능하게 하는 데 도움이 되도록 다음의 권장사항이 제공됩니다.
- 애플리케이션이 Java 2 보안 프로그래밍 모델을 사용하여 개발되었는지 확인하십시오. 개발자는 애플리케이션에 사용되는 API가 Java 2 보안으로 보호되는지 여부를 알아야 합니다. 사용되는 API에 필요한 권한을 정책 파일에 선언하는 것이 매우 중요합니다.was.policy 또는 Java 2 보안이 활성화되면 응용 프로그램이 실행되지 않습니다. 개발자는 Java 2 보안으로 보호되는 Development Kit API에 대한 웹사이트를 참조할 수 있습니다. 이 웹 사이트에 방문하려면 보안: 학습할 자원 주제의 프로그래밍 모델 및 의사결정 섹션을 참조하십시오.
- 이전 릴리스로부터 마이그레이션된 애플리케이션에 필수 권한이 제공되는지 확인하십시오. Java 2 보안은 이전 버전에서는 지원되지 않거나 부분적으로 지원되기 때문에 WebSphere® Application Server 릴리스에서는 버전 5 이전에 개발된 애플리케이션이 Java 2 보안 프로그래밍 모델을 사용하지 않을 가능성이 높습니다. 애플리케이션의 필수 권한을 모두 찾아내기 위한
쉬운 방법은 사용 가능하지 않습니다. 다음은 애플리케이션에 필요한 추가 권한을 판별하기 위해 수행할 수 있는 활동입니다.
- 코드 검토 및 코드 검사
- 애플리케이션 문서 검토
- 사전 프로덕션 환경에서 활성화된 Java 2 보안을 사용하여 마이그레이션된 엔터프라이즈 애플리케이션의 샌드박스 테스트입니다. WebSphere Java 2 보안 관리자에서 추적을 사용 가능하게 하면 응용프로그램 정책 파일에서 누락된 권한을 판별하는 데 도움이 됩니다. 추적 사양은 다음과 같습니다.com.ibm.ws.security.core.SecurityManager=all=enabled.
- 디버깅을 도우려면 com.ibm.websphere.java2secman.norethrow 시스템 특성을 사용하십시오. 이 특성을 프로덕션 환경에서 사용하지 마십시오.
java.policy 파일은 다음 위치에 있습니다. java_home 프로필에 대해 활성화된 JVM(Java Virtual Machine)에 따라 디렉터리입니다.메모: Java SE 6에만 JRE가 있습니다.(예:
모든 Java 가상 머신의 경우java.policy파일은 시스템 전체에서 사용됩니다. 편집하지 마세요.java.policy서버에 있는 파일. 애플리케이션에 선언된 권한이 거부되었습니다. 프로필_루트/config/cells/cell_name/filter.policy파일로 내보냅니다. filter.policy 파일에 선언된 권한은 권한 확인 중에 애플리케이션에 대해 필터링됩니다./QOpenSys/QIBM/ProdData/JavaVM/jdk60/32bit/jre/lib/ext ).- QShell을 입력하십시오.
- cd to profile_root/bin
- <다음 명령을 실행하십시오.
wsadmin -conntype NONE -c '$AdminTask showVariables {-scope Node=myNode -variableName JAVA_HOME}'
was.policy 파일에서 애플리케이션의 필수 권한을 정의하고 애플리케이션 엔터프라이즈 아카이브(EAR) 파일에서 was.policy 파일을 YOURAPP.ear/META-INF/was.policy로 임베드하십시오.
다음 단계는 WebSphere Application Server Network Deployment 셀 수준과 WebSphere Application Server Express 서버 수준에서 Java 2 보안을 적용하는 방법을 설명합니다
프로시저
- 딸깍 하는 소리 보안 > 글로벌 보안.글로벌 보안 패널이 표시됩니다.
- 선택 Java 2 보안을 사용하여 로컬 리소스에 대한 애플리케이션 액세스를 제한합니다. 옵션.
- 딸깍 하는 소리 좋아요 또는 적용하다.
- 딸깍 하는 소리 구하다 변경 사항을 저장합니다.
- 변경사항을 적용하려면 서버를 다시 시작하십시오.
결과
Java 2 보안을 사용하는 경우
- 예를 들어 소켓 연결을 열거나 청취할 때, 운영 체제 파일 시스템을 읽거나 쓸 때, JVM(Java Virtual Machine) 시스템 특성을 읽거나 쓸 때 시스템 자원에 대한 보호를 활성화하십시오.
- 애플리케이션 코드가 파괴적인 API를 호출하는 것을 막으십시오. 예를 들어,
System.exit메소드를 호출하면 Application Server가 종료됩니다. - 애플리케이션 코드가 권한이 있는 정보(비밀번호)를 획득하거나 추가 권한을 얻지 못하도록(서버 신임 정보 얻기) 막으십시오.
다음에 수행할 내용
참조 보안 문제 판단 가이드 자세한 내용은.