2017-03-15 2 views
0

내 로컬 개발 (5 노드) 클러스터에 2 개의 Stateless 서비스가 설치되어 있습니다. 하나의 .Net Core Web Gui 서비스와 하나의 .Net Core WebAPI 서비스. 둘 다 https 엔드 포인트를 사용하도록 구성됩니다. 인증서는 자체 서명 된 인증서이며 신뢰할 수있는 루트 및 개인 (현재 사용자와 로컬 컴퓨터 모두)에 추가됩니다.로컬 클러스터 SSL 인증서 유효하지 않은 트러스트

인증서 오류가 발생하지 않고 로컬 브라우저를 사용하여 두 끝점에 모두 액세스 할 수 있습니다. 연결이 안전하고 인증서가 신뢰할 수 있다고 말합니다. 지금까지 너무 좋아.

하지만 내 Web API 서비스가 내 Web Gui 서비스를 호출 할 때 신뢰할 수있는 연결을 만들 수 없다고합니다.

내 로컬 브라우저가 신뢰할 수있는 연결을 만들 수 있지만 로컬 클러스터에서 실행중인 서비스를 만들 수없는 이유는 무엇입니까?

로컬 클러스터의 노드에 자체 인증서 저장소가 있습니까?

+0

는 핸드 쉐이크가 실패한 이유에 대한 자세한 정보를 보려면'ServicePointManager.ServerCertificateValidationCallback'를 사용할 수 있습니다? – LoekD

+0

좋아, 나는 그것을 시도하고 결과와 함께 돌아올 것입니다. 감사합니다 –

+0

ServerCertificateValidateCallback 함수를 보면 문제가 있음을 알 수있었습니다. System.Security.Cryptography.X509Certificates.X509ChainStatusFlags.UntrustedRoot 하지만 서비스에서 내 웹 브라우저가 아닌이 문제를보고하는 이유는 무엇입니까? –

답변

0

그래서 나는 인증서를 기계 루트에 추가하는 것을 놓친 것으로 밝혀졌으며 이것이 그 문제를 일으켰습니다.

localmachine/my 
localmachine/root 

이 서비스는 로컬 클러스터 내에서 서비스를 호출 할 수 있습니다 :

작업 로컬 SSL, 나는에 자체 서명 된 인증서를 추가 할 필요가 있었다.

currentuser/my 
currentyser/root 

이렇게하면 브라우저에서 ssl 오류없이 서비스를 호출 할 수 있습니다.

희망이 다른 사람 :

+0

에 '자기 서명 된 인증서가 있는데 신뢰할 수있는 루트와 개인용 (현재 사용자와 로컬 컴퓨터 모두에 추가됨)'이라고 표시됩니다. – LoekD

+0

예, 이것은 잘못된 것입니다. 인증서 저장소를 검사하면보기를 새로 고치는 것을 잊었습니다. 인증서가 제거되었음을 알지 못함 :( –