我正在嘗試將 PKI 證書添加到 HTTP 客戶端,以便它發(fā)出的所有請求都通過它們正在與之交談的服務進行身份驗證。我可以通過執(zhí)行以下命令來實例化 HTTP 客戶端:client := &http.Client{ Transport: &http.Transport{ Proxy: http.ProxyFromEnvironment, TLSClientConfig: &tls.Config{ // TLS Implementation } }}這使用默認RoundTripper實現,其中包括一個TLS配置部分。但是,TLS 配置似乎在客戶端和服務器之間共享。我需要添加哪些設置才能調用其他 PKI 服務?
1 回答

侃侃爾雅
TA貢獻1801條經驗 獲得超16個贊
似乎只需要將Certificates
屬性添加到 TLS 配置中:
Certificates: []tls.Certificate{cert}
cert
可以使用輔助函數創(chuàng)建的位置:
cert, err := tls.LoadX509KeyPair(*certFile, *keyFile)
其中certFile
和keyFile
是指向pem
磁盤上文件的兩個字符串。正如 Peter 所提到的,您也可以實施GetClientCertificate
,但這對于實施 PKI 支持是不必要的。
- 1 回答
- 0 關注
- 143 瀏覽
添加回答
舉報
0/150
提交
取消