1 回答

TA貢獻1859條經(jīng)驗 獲得超6個贊
您的葉證書僅用于客戶端身份驗證。
$ openssl x509 -noout -text -in leaf.pem | grep -A1 'Key Usage'
X509v3 Key Usage: critical
Digital Signature, Key Encipherment
X509v3 Extended Key Usage:
TLS Web Client Authentication
如果這是故意的,則必須指定 KeyUsages 選項,因為“空列表意味著 ExtKeyUsageServerAuth”。您還必須返回到單獨提供中間證書的代碼版本:
chain, err := cert.Verify(x509.VerifyOptions{
Roots: roots,
Intermediates: inters,
KeyUsages: []x509.ExtKeyUsage{x509.ExtKeyUsageClientAuth},
})
在操場上嘗試一下:https ://play.golang.org/p/1BNLthzu5Tz 。請注意,playground 需要 CurrentTime 選項才能正確驗證。復(fù)制到其他地方時刪除它!
- 1 回答
- 0 關(guān)注
- 167 瀏覽
添加回答
舉報