안녕하세요!내 API에 CA 체인 제공 : 모든 인증서를 체인에 포함해야합니까?
HTTPS를 통해 액세스 할 수있는 REST와 유사한 API를 개발 중입니다. 내 인증서는 CA에서 발급 한 인증서로 중간 수준의 인증서가 있습니다 (내 인증서 : AddTrust -> Comodo -> EssentialSSL -> my cert).
나 페이스 북과 같은 내 API 사용자를위한 내 .NET 및 PHP SDK를 사용하여 인증서 체인을 제공하고자하는 수행합니다 https://github.com/facebook/php-sdk/blob/master/src/fb_ca_chain_bundle.crt
나는 하나 그것에 의해 내 인증서 하나를 주문하여 유사한 텍스트 파일을 만들었습니다 커맨드 라인 컬 및 PHP 컬 라이브러리에서 작동합니다.
그러나 루트 인증서 (내 경우에는 AddTrust)가있을 때만 작동합니다.
모든 인증서를 내 SDK 또는 루트 인증서와 함께 묶어야합니까?
처음에는 전체 체인이 필요하다고 생각하기 때문에 여기에 질문이옵니다. "단 하나의 루트 인증서 만있을 때 작동합니다"라고 말하면 말하자면 전체 체인을 제공하고 SSL 검사를 요구할 때 단 하나의 최상위 루트 인증서를 제공 할 때와 동일한 방식으로 작동합니다. – artvolk
개발 기계가 아닌 다른 기계에서 이것을 테스트하고 있습니까? 중간 인증서가 로컬 인증서 저장소에 설치되어 있으면 체인이 필요하지 않습니다. 인증서 체인이 제대로로드되고 있는지 확인하려면 "EssentialSSL"인증서가 설치되지 않은 컴퓨터를 찾아야합니다. –
Windows의 커맨드 라인 curl과 php의 curl 라이브러리에는 기본적으로 * 모든 certs * (심지어 브라우저 같은 CA 인증서)가 없습니다. – artvolk