簡體   English   中英

信任沒有 cer 文件的自簽名證書?

[英]Trust a self signed certificate without a cer file?

所以我正在處理的這個移動應用程序主要是在 flutter 中,但我在本機 Android 和 Swift 中有一些我想保留的 API 回調,但是實際的 api 調用可以是自定義服務器。 在意識到 Flutter 無法讀取 Android 上手動安裝的用戶證書后,我試圖想辦法像 chrome 那樣做,並詢問用戶“你想信任這個證書 y/n”,但是我想不出一個在 Java 上進行操作的方法。

在 flutter 端,HttpClient 有一個稱為 badCertificateCallback 的回調部分,如果應用程序中的任何地方證書不安全,無論在哪里調用證書,它都會自動引用那里,目前在 flutter 端,我已經設置了它,以便如果用戶信任某個鏈接,它將信任該證書信息,我可以做 Android 上類似的事情嗎? 我發現的大多數其他解決方案要么信任所有不理想的證書,要么要求用戶在某處擁有 cer 文件。

您可以通過多種方式 go:

  • 您可以將自簽名證書添加到客戶端的信任庫中。
  • 或者您使用自己的證書頒發機構簽署服務器的證書簽名請求 (CSR),並將該證書頒發機構的證書添加到客戶端的信任庫中。 即使在這里,您也可以決定直接將服務器的證書添加到信任庫,但是為什么要使用 CA?
  • 或者您使用官方證書頒發機構(讓我們加密、geocerts、digicert 等)來簽署證書。 由於官方證書頒發機構已經安裝在您的客戶端的信任庫中,因此不需要額外的步驟。

簡短回答:沒有證書你就不會成功。 但它不一定是.cer文件。

由於您拒絕“無證書檢查/全部信任”:檢查證書是更好的方法,即使您使用自簽名證書也是如此。 但是客戶端需要一些東西來檢查,並且該數據通常在證書中傳輸。 您可以以不同的文件格式存儲此類證書。 檢查此頁面: https://www.ssls.com/knowledgebase/what-are-certificate-formats-and-what-is-the-difference-between-them/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM