그래서 폼 기반 인증을 사용하는이 JSF 프로젝트가 있습니다. JSF 페이지를 여는 첫 번째 시도에서 내 로그인 서버로 리디렉션됩니다. 인증이 이루어지고 성공하면 내 응용 프로그램으로 리디렉션됩니다. 불행히도 사용자 이름과 같이 인증 서버가 제공하는 정보를 얻는 방법을 모르겠습니다.JSF 페이지에서 Liberty의 FORM 기반 인증으로부터 사용자 교장을 얻는 방법은 무엇입니까?
나는 "Signed in as"라는 텍스트가있는 페이지가 있습니다. getCurrentUserPrincipal() 메소드로 ManagedBean에 의해 설정되어야합니다.
<h:outputText value="#{myBean.getCurrentUserPrincipal()}"/>
현재이 메소드는 비어 있습니다. WSSubject.getCallerPrincipal() 및 FacesContext.getCurrentInstance(). getExternalContext(). getUserPrincipal()로 시도했지만 null을 반환했습니다. 그 방법으로 필요한 정보를 어떻게 얻을 수 있습니까? 심지어 가능합니까? 어떤 정보가 필요한지 잘 모르겠습니다. 따라서 누락 된 정보가 있으면 최대한 제공하겠습니다.
public String getCurrentUserPrincipal() {
return principal.getName();
}
** 인증 서버가 정보를 저장하는 위치를 어떻게 알 수 있습니까? 이 질문은 java, jsf, servlets 또는 java-ee와 관련이 없습니다. – Kukeltje
좋아, 어디 양식 기반 인증 (web.xml) 할 때 정보를 저장할 수 있습니다. 나는 로그인으로 돌아가고 나의 응용 프로그램으로 돌아 간다. 적어도 j2ee 나 서블릿과 관련이없는 것은 무엇입니까? 그것이 쿠키에 저장되어 있다고 가정 해 봅시다. 어떻게 정보를 얻을 수 있습니까? 또는 LTPA 토큰 (쿠키와 동일)? 그 때 무엇? Btw. 나는 자유를 사용하고있다. server.xml에 구성이 필요합니까? – kinglite