2021년 7월 11일 일요일

SAP PO의 REST Sender Adapter에서 클라이언트 호출 시 인증문제

현상, 확인과정

Rest Sneder채널의 옵션중
'지금까지 Rest Sender Channel > Channel Selection > Allow public access(no authoriztion required)'
이라는 옵션을 설정하게 되면 Rest Sender채널을 호출하는 모든 클라이언트에서 인증없이 호출이 가능한 상태일거라 생각을 했습니다.
하지만 어느 특정 클라이언트의 IE(Internet Explorer)브라우져에서 PO의 로그인/패스워드를 요청하는 팝업창이 나타나는 현상이 발생되었으며 지금까지 알던 REST채널기능과는 달랐습니다.

'Allow public access(no authoriztion required)'이라는 옵션의 설명을 보게되면
"공개 액세스 허용을 활성화하여 이 채널을 공개 엑세스에 사용할 수 있도록 하며 이 옵션은 발신자채널에 대한 인증을 비활성화
합니다. 그외 CORS(Cross-Origin-Resource-Sharing Request)를 활성화 하여 모든 클라이언트에서 허용하게 만들수도 있으며
특정 클라이언트 URI들만 지정하여 허용지정을 할수 있다고 합니다."
이옵션설명을 보게되면 클라이언트에서 REST발신자채널 호출 시 로그인창을 뜨지 않는게 정상인데 이상하군요..

해결방안

해결방법에 대해서는 SAP 공식문서에 나와있는 내용과 아닌내용이 있어 참고 부탁드리겠습니다.
문제가 되었던 클라이언트(브라우져 자바스크립트 호출방식)에서 PO호출 URL에 PO의 아이디/패스워드도 같이 호출하게 되면 문제는 없어 보이지만
보안상 아이디/패스워드가 노출이 되어 다른 해결방법들에 생각을 해보았는데
REST Adapter Sender Channel의 다양한 옵션이나 NWA의 인증관련 설정들에 대해 확인해서 테스트해보는 것과 ICM관련 HTTP Handler의 Modification Handler 룰을 변경해보는 방법도 좋을것 같습니다.

참고사이트:
Configuring the Sender REST Adapter
2902687-How to configure Client Authentication for the REST Adapter Sender Channel

댓글 없음:

댓글 쓰기