2012년 7월 18일 수요일

CXF에서 Authorization 헤더 설정하기


CXF에서 HTTP Authorization 헤더에 Basic 방식으로 username, password를 전달할 때 아래와 같이 소스코드를 지정한다.



 org.apache.cxf.jaxws.JaxWsProxyFactoryBean clientFactory = new org.apache.cxf.jaxws.JaxWsProxyFactoryBean(); 
        clientFactory.setAddress("http://localhost:8080/svc-url"); // 서버 주소로 변경해 주세요
        clientFactory.setUsername(USERNAME); // username
        clientFactory.setPassword(PASSWORD); // password



HTTP Authorization 헤더의 Basic 방식인 
"username:password"가 base64 encoding 값으로 전달되는 것으로 확인되었습니다.

인증 정보 설정 후 요청 시 HTTP 요청 헤더 확인해 보시면 Authorization 헤더가 설정되어 있습니다.
 Authorization=[Basic Y2poY29uc3VtZXIxdidkxdxOndlbGNvbWUx]