[英]Spring Boot - Reading x509 client certificate from HTTP request
如何從客戶端獲得x509證書? 我正在使用Java的Spring-Boot-Framework和嵌入式tomcat。 對於原型設計,我使用Java SE進行了配置:
HttpsExchange httpsExchange =(HttpsExchange)httpReq;
name = httpsExchange.getSSLSession()。getPeerPrincipal()。getName();
用戶在這里給了我一個參考(下面)
@RequestMapping(value = "/grab")
public void grabCert(HttpServletRequest servletRequest) {
Certificate[] certs =
(Certificate[]) servletRequest.getAttribute("javax.servlet.request.X509Certificate");
}
但我無法獲得一些證書! 也許是因為我正在使用tomcat,它正在處理所有SSL-Connections。 所以沒有證書收到我的申請。 我必須做什么才能獲得客戶證書? 客戶端證書用於獲取https連接。 我需要證書主題的一些信息。 謝謝。
你必須從HttpServletRequest
獲得它。
您可以檢查此問題的答案: 如何將證書放入X509過濾器(Spring Security)? :
不,你不能這樣做。 你需要從HttpServletRequest中獲取它:
X509Certificate[] certs = (X509Certificate[])HttpServletRequest.getAttribute("javax.servlet.request.X509Certificate");
這是我試圖指向你的帖子,由甘道夫寫的。
這是最初的問題
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.