저는 스프링 보안을 사용하여 로그인 페이지를 작성하고 있습니다. 이 페이지는 사용자가 사용자 이름과 암호 대신 인증서를 사용할 수있는 옵션을 제공해야합니다. 그러나 다음과 같은 시나리오에 갇혀 있습니다 :x509 클라이언트 인증서 유효성 확인
브라우저에 설치된 XYZ 회사의 인증서가 있다고 가정 해보십시오. 이제 서버 (신뢰할 수있는 XYZ)는 인증서의 유효성을 검사하려고했지만 질문은 다음과 같습니다.
Q1. 브라우저가 "브라우저에 하나 이상의 인증서가 설치되어 있다고 가정 할 때"올바른 인증서 "를 제공하기 위해 브라우저가 어떻게 요청할 수 있습니까?
2. 사용자가 로그인 페이지에서 단추를 클릭 할 때만 인증서를 보낼 수있는 단추가있을 수 있습니까?
3. 서버가 인증서를 받았다고 말하면, 서버가 "네, 인증서 체인 (XYZ 회사가 서명 함)을 조사하여 자신이 누구라고 말했는지 증명할 수 있습니까?"라고 말할 수 있습니까?
감사, 보안 초보자 :
감사합니다. 의심의 여지가 없습니다. 이제는 구현에 이르러 신뢰할 수있는 CA가 서명 한 내 인증서를 내 보낸 후 내 이름과 루트 인증서 지문을 내 서버 측 신뢰할 수있는 CA와 수동으로 매핑하려고합니다. 어떻게 든 똑같은 지문을 찾을 수 없습니다. 제가 여기에 뭔가 빠졌습니까? (btw, 나는 브라우저에 설치된 CA와 ssl을 설정하려고합니다.) – sglai
나는 사용자 certs 지문을 수동으로 매핑하려하지 않았습니다. 난 항상 rser 인증서가 Active Directory의 사용자 계정에 매핑되는 Windows Server에 내장 된 CA에 의존했습니다. 이 (물론 Windows 통합 인증 포함) 항상 예상대로 작동했습니다. –