2017-10-12 4 views
0

SignAndEncrypt 모드가 사용될 때 올바른 인증서 체인을 전달할 예제 서버를 설정하려고합니다.eclipse Milo 인증서 체인 서버에

제공된 예제를 사용하면 .pfx 파일에 루트 인증서 (중간 사용 안 함)가 포함되어 있어도 서버는 인증서를 제공하지만 체인 인증서는 전달하지 않습니다.

나는 OpcUaServer.java과 내 길을 근무하고 인증서 체인을 포함하지만, OpcUaServer.java 호출 : 인증서 체인을 오버로드되지

UaStackServer addEndpoint(String endpointUri, 
          String bindAddress, 
          X509Certificate certificate, 
          SecurityPolicy securityPolicy, 
          MessageSecurityMode messageSecurity); 

, 그래서 내가 가지 붙어있어.

서버 인증서 만 전달하는 대신 전체 인증서 체인을 전달하는 (예) OPC UA Milo 서버를 어떻게 설정합니까?

답변

0

릴리스 0.1.4부터 클라이언트와 서버를 모두 인증서 체인으로 구성 할 수 있습니다.

구성 개체를 빌드 할 때 setCertificateChain()을 호출하여 클라이언트 체인을 구성 할 수 있습니다.

체인을 허용하는 DefaultCertificateManager의 생성자를 사용하거나 CertificateManager의 구현을 사용하는 경우 getCertificateChain을 구현하여 서버의 체인을 구성 할 수 있습니다.

이것을 구현하는 PR은 here입니다.

+0

감사합니다. 나는이 서버를 시도했지만 wireshark에서 연결을 모니터링, 루트 인증서는 클라이언트 (UaExpert,하지만 그건 중요하지 않아야)로 전송되지 않습니다. 나는 이것이 왜 있는지 알아 내면 갱신 할 것이다. – Niklas

+0

서버는 구성된 체인을 비대칭 보안 헤더로 보내지 만 가장 중요한 곳은 현재 반환되는 EndpointDescriptions의 ServerCertificate 필드에 체인을 반환하지 않습니다. 이것이 올바른 행동인지 아닌지를 조사 할 필요가 있습니다. 이것이 당신이 보는 것과 일치합니까? –