嗯,我是Spring Boot Security的新手,我有一個問題。我有簡單的設置,以在服務器上啓用HTTPS,具體如下:如何在客戶端使用Spring Boot Security禁用證書驗證
server: port: 8443 ssl: key-store-type: PKCS12 key-store: classpath: keystore.p12 key-store-password: mypass key-alias: testkey
到目前爲止好。問題在於訪問該服務器端點的客戶端(例如簡單的捲曲)會接收到證書驗證失敗。從我所能讀到的信息來看,https通信是通過TSL(或SSL)進行的,它要求用戶驗證服務器頒發的證書以啓用安全通道。
我不希望所有客戶端都必須隨身攜帶證書才能訪問端點,因爲它是我正在開發的Rest API。
的API的網址有些啓用HTTPS,但不需要證書:
我應該遵循什麼方式才能保持啓用加密,即保持https,但也不需要客戶端證書驗證? PS:通過瀏覽器我可以訪問我的服務並獲得答案,但是java客戶端,python或curl不起作用。
編輯
我不想設置客戶端上的選項,以使該請求沒有安全感,我想保持HTTPS,但並沒有要求客戶用他隨身攜帶的證書。也許我甚至無法做到這一點,所以我問,因爲我絕對是一個初學者。如果沒有辦法做到這一點,我就等着朝那個方向回答,如果可能的話更加完整。
您已經找到解決方案,您必須配置客戶端。如果你想了解更多信息,請編輯你的問題並說出你使用的客戶端。對於cURL,請參閱https://unix.stackexchange.com/questions/60750/does-curl-have-a-no-check-certificate-option-like-wget – dur
男人,我不想在選項上設置客戶端爲了使請求不安全,我想保留https,但並不要求客戶端隨身攜帶證書。也許我甚至無法做到這一點,所以我問。 –
您的問題是關於證書驗證,但您的評論是關於攜帶證書。你有什麼問題?正如您已經發現的那樣,您可以禁用驗證。你爲什麼認爲客戶攜帶證書?如果您不使用其中一個緩存的根證書,則客戶端不會攜帶證書。 – dur