美好的一天!爲我的API提供CA鏈:我應該包含鏈中的所有證書嗎?
我正在開發可通過HTTPS訪問的類似REST的API。我的證書由CA頒發並具有中間證書(我的證書爲3級:AddTrust - > Comodo - > EssentialSSL - >我的證書)。
我想提供證書鏈與我的.NET和PHP SDK爲我的API,如Facebook的用戶做: https://github.com/facebook/php-sdk/blob/master/src/fb_ca_chain_bundle.crt
我已經下令我的證書逐一及其創建的類似文本文件適用於命令行卷曲和PHP捲曲庫。
但它工作時,我只有一個根證書(AddTrust在我的情況下)。
我是否應該將所有證書與我的SDK或僅一個根證書捆綁在一起?
首先,我真的認爲我需要充分的鏈條,所以這裏有一個問題。當我說「只有一個根證書時才起作用」,這意味着當我提供完整的curl鏈並需要進行SSL檢查時,當我僅提供一個頂級根證書時,它的工作方式相同。 – artvolk 2012-03-14 20:51:33
您是否在開發機器之外的其他機器上測試了這個?如果中間證書安裝到本地證書存儲中,則根本不需要鏈。您需要找到沒有安裝「EssentialSSL」證書的計算機,以驗證您的證書鏈是否正確加載。 – 2012-03-14 21:02:39
Windows上的命令行curl和php中的curl庫默認情況下沒有*任何證書*(甚至CA證書,如瀏覽器)。 – artvolk 2012-03-14 21:05:25