SoapUI를 사용하여 웹 서비스를 위한 인증서 기반 인증(WS-Security)을 구성하는 단계
이 지식 기반 문서는 사용자의 편의를 위해 기계 번역되었습니다. SAP에서는 기계 번역의 정확성 또는 완전성을 보증하지 않습니다. 언어 선택 도구를 통해 영어로 전환하여 원래 콘텐츠를 찾을 수 있습니다.
웹 서비스를 위한 인증서 기반 인증(WS-Security) 구성 단계
Ariba 웹 서비스 인바운드:
- PEM(Privacy Enhanced Mail) base64 인코딩을 사용하여 인코딩된 X.509 인증서와 함께 Keystore를 사용합니다. 유효한 인증 기관의 Keystore/인증서가 없는 경우 다음을 수행하여 자체 서명된 Keystore/인증서를 생성할 수 있습니다.
- 명령 프롬프트를 열고 디렉터리를 컴퓨터의 Java 설치 bin 디렉터리로 변경합니다.
- 다음 명령을 실행하여 (Windows의) 키 저장소를 생성합니다. 사용할 실제 암호로 암호를 바꿉니다.
keytool -genkey -keyalg RSA -alias selfsigned -keystore keystore.jks -storepass password -validity 360 -keysize 2048
-
- 1b단계에서 keystore 파일을 만들었습니다(keystore.jks). 새 인증서와 공개 및 개인 키가 들어 있는 Java Keystore입니다.
- 이제 엔드포인트 인증을 위해 구현할 수 있는 Keystore에서 PEM 인증서를 Ariba UI로 추출합니다. 명령 프롬프트에서 다음 명령을 실행합니다(1b 단계에서 설정한 실제 암호로 암호 바꾸기).
keytool -exportcert -alias selfsigned -keypass password -keystore keystore.jks -storepass password -rfc -file keytool_crt.pem
- 이 솔루션의 목적상, SoapUI에서 요청을 구성하는 방법을 살펴보겠습니다. Ariba에서 관리 > 관리/핵심 관리 > 통합 관리자 > 엔드포인트 구성 > 새로 만들기 로 이동합니다.
- 1d 단계에서 추출된 PEM(Privacy Enhanced Mail) base64 인코딩을 사용하여 인코딩된 X.509 인증서를 붙여넣고 인증서 파일에 붙여넣고 변경사항을 저장합니다. 인증서의 첫 번째 라인은 다음 텍스트여야 합니다.
-----BEGIN CERTIFICATE-----
인증서의 마지막 라인은 다음 텍스트여야 합니다.
-----END CERTIFICATE-----

- 관리 > 관리/핵심 관리 > 통합 관리자 > 통합 구성 > 원하는 웹 서비스를 선택하고 편집한 다음, 이 서비스를 활성화하고 3단계에서 생성한 엔드포인트를 사용합니다.
- WSDL URL 복사
- SoapUI에서 새 SoapUI 프로젝트를 생성하고 Ariba에서 복사한 WSDL URL을 사용합니다.
- 프로젝트 더블 클릭

- Keystore 탭을 클릭하고 추가 아이콘(+ 부호 모양)을 클릭합니다.
- 1단계에서 만든 키 저장소 파일(.jks 파일 확장자)을 선택하고 Keystore 비밀번호를 입력합니다. 이 작업이 완료되면 Keystore의 상태가 OK여야 합니다.

- 발신 WS-Security 구성 탭을 클릭하고 추가 아이콘(+ 부호 모양)을 클릭합니다.
- 보안 유형을 추가하려면 하단 창에서 추가 아이콘을 클릭합니다. "서명"을 선택하십시오.
- 드롭다운에서 Keystore 및 별칭을 선택하고 Keystore 비밀번호를 입력합니다. 키 식별자 유형을 "발급자 이름 및 일련번호"로 설정합니다. 구성이 구성되면 다음과 같이 표시됩니다.

- 요청을 더블 클릭하여 SoapUI에서 엽니다.

- 요청에서 "자동" 탭을 클릭합니다. 발신 WSS를 10-12단계에서 생성한 "발신 WS-보안 구성"의 이름으로 설정합니다.

- 이제 SoapUI에서 요청을 실행할 수 있습니다. 성공적인 응답을 확인할 수 있어야 합니다.
Ariba 웹 서비스에서 미들웨어로 아웃바운드:
- 1단계가 "인바운드 -> Ariba 웹 서비스" 단계에서 완료되었는지 확인합니다.
-
Ariba에서 관리 > 관리/핵심 관리 > 통합 관리자 > 엔드포인트 구성 > 새로 만들기 로 이동하고 유형을 "아웃바운드"로 선택합니다.
"URL"의 경우 엔드포인트를 지정합니다. 이는 Ariba에서 SOAP 요청을 전송하는 위치입니다. Ariba는 https를 사용할 것을 권장하지만, http도 사용할 것입니다.
예제:
https://<domain>:<port>/WSOutbound
- "Ariba 개인 키로 서명"을 예로 설정하고 엔드포인트를 저장합니다.
- 관리 > 관리/핵심 관리 > 통합 관리자 > 통합 구성 > 원하는 웹 서비스를 선택하고 편집한 후, 이 서비스를 활성화하고 2단계에서 생성한 엔드포인트를 사용합니다. 또한 URL을 설정합니다(엔드포인트 URL과 같은 URL이어야 하지만 URL에 추가 매개변수가 있을 수 있음).
- WSDL URL을 열고 브라우저에서 URL을 복사합니다.
- SoapUI에서 새 SoapUI 프로젝트를 생성하고 Ariba에서 복사한 WSDL URL을 사용합니다.
- Create MockService가 선택되어 있는지 확인합니다.
- 다음 화면에서 포트 및 경로 관련 데이터를 입력합니다.
- 방금 생성한 프로젝트를 더블 클릭합니다.
- Keystore 탭을 클릭하고 추가 아이콘(+ 부호 모양)을 클릭합니다.
- Inbound to Ariba 웹 서비스의 1단계에서 만든 키 저장소 파일(.jks 파일 확장자)을 선택하고 Keystore 암호를 입력합니다. 이 작업이 완료되면 Keystore의 상태가 OK여야 합니다.
- 들어오는 WS-Security 구성 탭을 클릭하고 추가 아이콘(+ 부호 모양)을 클릭합니다.
- 항목에 이름을 지정하고 "암호 해독 Keystore" 및 "Signature Keystore"의 Keystore 값을 선택하고 Keystore 비밀번호를 입력합니다.
- SOAP 프로젝트 내에서 MockService 클릭
- MockService 속성 에서 "Incoming WSS"를 13단계에서 구성된 "Incoming WS-Security Configurations"의 이름으로 설정합니다.
- 응답 을 두 번 클릭하고 원하는 결과(성공 또는 오류)를 충족하도록 값을 수동으로 입력합니다. 이는 요청이 SoapUI에 입력될 때 Ariba에 전송되는 응답입니다.
- 이제 SoapUI에 데이터를 전송하기 위해 의도한 웹 서비스를 사용하는 데이터를 Ariba 응용프로그램에서 생성할 수 있습니다.
언급된 단계를 사용하여 Keystore를 생성하는 방법에 대한 자세한 내용은 다음을 참조하십시오.
http://www.john-james-andersen.com/blog/service-now/tutorial-soap-into-servicenow-via-x509-ws-security.html
특히 SoapUI에서 WS-Security를 구성하는 방법에 대한 자세한 내용은
http://www.soapui.org/SOAP-and-WSDL/applying-ws-security.html
공급자 정보 및 실적 관리
구매
전략적 계약
전략적 소싱