2013-06-10 2 views
1

나는 사용자 이름과 암호를 통해 인증 된 프록시를 사용하고자합니다. ESB로가는 모든 메시지는 ESB에 인증 된 사용자를 포함하여 데이터베이스에 저장해야합니다. 프록시에서 사용자 이름을 가져 오는 방법이 있습니까? 예를 들어 message-id를 얻을 수 있다는 것을 알고 있지만 사용자 이름을 얻기위한 해결책을 찾을 수 없습니다.WSO2 ESB 사용자 이름 얻기

아마 당신은 나에게 도움이 될 수 있습니다 : 당신은 사용자 이름 토큰을 사용하여 프록시를 확보 할 수

답변

0

ESB를 문서에서 도움을받을 수 있다고 생각합니다. 사용자 이름은 "username"이라는 속성을 사용하여 axis2 메시지 컨텍스트에서 검색 할 수 있습니다. 속성 중개자 (scope는 axis2) 또는 간단한 클래스 중재자를 사용할 수 있습니다.

+0

이것은 올바른 방향으로 가고 있지만이 속성을 얻는 데는 여전히 문제가 있습니다. 표현식이 어떻게 표시되어야할지 모르겠다. 도와 주실 수 있습니까? 이? – muetze

+0

예 .. 정확해야합니다 .... – Asela

0

(예 : 사용자 이름/암호). 서비스 대시 보드 -> 보안 옵션으로 이동하여 사용자 이름 토큰을 활성화하는 도구를 찾을 수 있습니다. 그런 식으로 보안을 설정했다면 요청시 기본 인증 헤더를 보내야합니다.

+0

죄송 합니다만 답변에 문제가 없습니다. – muetze

1

$ header를 사용하여 헤더 정보에 액세스하면 작동합니다. xPath를 가져 와서 다음 예와 같이 사용자 이름을 추출하십시오.

<property xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" name="user" expression="$header/wsse:Security/wsse:UsernameToken/wsse:Username"/>