리스너 포트를 사용하는 메시지 구동 Bean에 대한 보안 구성
비JCA(Java™ EE Connector Architecture) 메시징 제공자의 경우, 연결 팩토리, 대상, 메시지 구동 Bean 간의 연관은 리스너 포트로 제공됩니다. 이 경우 컨테이너 관리 별명을 설정하여 메시지 구동 Bean에 대한 자원 보안 및 보안 권한을 구성할 수 있습니다. MDB 리스너의 보안 정보는 MDB 리스너의 JMS 연결이 작성될 때 설정됩니다.
시작하기 전에
리스너 포트를 사용하면 포트와 연관된 배치된 메시지 구동 Bean이 연관된 대상에서 메시지를 검색할 수 있습니다. 리스너 포트에 대한 자세한 정보는 메시지 구동 Bean - 리스너 포트 컴포넌트의 내용을 참조하십시오.
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[IBM i]](../images/iseries.gif)
이 태스크 정보
대부분의 경우 MDB에 대한 보안은 다른 엔터프라이즈 Bean에 대한 보안과 같습니다. 예를 들어, JDBC 자원 및 JCA 자원(예를 들어, CICS®, IMS™)에 대한 액세스는 엔티티 또는 세션 Bean과 동일한 방식으로 처리됩니다. 다른 JMS 자원에 대한 액세스 또한 다른 엔터프라이즈 Bean과 동일한 방식으로 처리됩니다.
리스너 포트에 배치된 MDB에 대한 보안을 설정하려면 MDB의 onMessage() 메소드로 처리할 메시지를 대상에서 검색할 수 있도록 서버가 JMS 제공자와 대상에 연결될 수 있는 권한과 인증을 구성합니다.
일부 MDB의 경우, onMessage() 메소드는 초기 JMS 연결이 작성된 후 추가 JMS 자원에 액세스하려고 시도합니다. 이 경우 엔티티 또는 세션 EJB의 JMS 호출과 동일하게 보안이 처리됩니다.
- 연결 팩토리에 대해 컨테이너 관리 별명이 정의된 경우, 컨테이너 관리 별명과 연관된 사용자 ID는 연결 작성 호출에서 사용됩니다(예: createQueueConnection(userid,password)).
- 이 연결 팩토리에 대해 컴포넌트 관리 별명이 정의된 경우, 컴포넌트 관리 별명과 연관된 사용자 ID는 연결 작성 호출에 사용됩니다.
- 별명이 지정되지
않고 연결 팩토리가 바인딩 모드로 정의된 경우(즉,
TransportType = "BINDINGS" ) 서버
ID가 사용됩니다.
서버 ID는 하위의 하위 ID 및 제어기의 제어기 ID로 보다 구체적으로 변환됩니다. 따라서 청취 제어기의 경우 제어기 ID가 관련이 있고 하위 ID가 관련이 있습니다. 청취 제어기에 대한 관련 정보는
z/OS의 메시지 리스너 서비스의 내용을 참조하십시오.
컨테이너 관리 별명을 설정하려면(해당 옵션을 선택한 경우) 관리 콘솔을 사용하여 다음 단계를 완료하십시오.
프로시저
- 를 클릭하여 리스너 포트 설정을 표시하십시오.
- 연결 팩토리 JNDI 이름 특성을 보고 JMS 연결 팩토리의 이름을 가져오십시오.
- JMS 연결 팩토리 특성을 표시하십시오. 예를 들어, 큐 연결 팩토리의 특성을 표시하려면 을 클릭하십시오.
- "컨테이너 관리 인증 별명" 특성을 설정하십시오.
- 확인을 클릭하십시오.
다음에 수행할 작업
다른 EJB 호출
리스너 포트에 도달하는 메시지는 연관된 클라이언트 신임 정보가 없습니다. 메시지는 익명입니다. 메시지 구동 Bean에서 보안 엔터프라이즈 Bean을 호출하려면 RunAs ID 배치 디스크립터로 메시지 구동 Bean을 구성해야 합니다. 보안은 메시지 구동 Bean에 대한 RunAs ID가 EJB 컴포넌트로 지정한 역할에 따라 다릅니다.
EJB 보안에 대한 자세한 정보는 엔터프라이즈 Bean 애플리케이션 보안의 내용을 참조하십시오. 애플리케이션 보안 구성에 대한 자세한 정보는 어셈블리 및 배치 중 애플리케이션 보안의 내용을 참조하십시오.