2012-07-28 4 views
0

Java EE JAAS 컨텍스트 (할당 된 사용자 역할)를 EJB 인터셉터에서 변경할 수 있는지 묻고 싶습니다.인터셉터에서 JAAS 컨텍스트를 변경하는 방법은 무엇입니까?

인증을 테스트하기 위해 'isUserInRole()'메소드를 사용하는 몇 개의 EJB Session Bean이 있습니다. 반면에 애플리케이션은 런타임 중에 생성되기 때문에 애플리케이션 Java EE 영역을 통해 관리되는 JAAS 역할/그룹에 매핑 할 수없는 몇 가지 특수 정보가있는 사용자 프로필을 관리합니다.

제 아이디어는 EJB 인터셉터와 같은 것을 구현하고 사용자 프로필 양식에 저장된 정보를 확인한 다음 사용자 자격 증명/제목에 새로운 사용자 지정 역할을 추가하는 것입니다.

그러면 세션 bean에서 요청할 수있는 자격 증명에 할당 된 새 동적 역할 정의가 생성됩니다. 그러나 이러한 역할은 ejb (@RolesAllowd) 또는 ejb-jar.xml 또는 sun-ejb-jar.xml 설명 자에 하드 코딩되지 않습니다.

이 질문에 도움을 주셔서 감사합니다.

답변

0

이미 설정된 보안 컨텍스트를 변경하는 것은 어렵지만 보안 컨텍스트를 처음 설정하면 상황에 따라 작동하는 경우 사용자 지정 로그인 모듈을 살펴 봐야합니다.

Java EE에서는 JAAS를 기반으로하는 JASPI API를 통해이 작업을 수행 할 수 있습니다.

거의 모든 응용 프로그램 서버에는이 작업을 수행 할 수있는 독점적 인 API가 있으며 대부분 JAAS를 기반으로합니다.

관련 문제