2016-05-14 46 views
1

所有 我薩米特,我與第一個需要兩個級別的認證與用戶名,密碼和第二位用戶的數字簽名基於Java的Web應用程序工作(存儲在USB令牌上)由CA頒發。 因此,一個運行在服務器上的基於Java的Web應用程序,它可以通過客戶端Web瀏覽器訪問。並且網絡用戶在他/她的PC上插入他/她的USB令牌進行認證,以便Web應用程序如何從USB令牌讀取公鑰並將其發送到服務器以通過瀏覽器進一步驗證。是否有任何JavaScript庫用於執行此操作?瀏覽器如何訪問USB令牌事件並從該USB令牌獲取公鑰?任何人有任何想法或例子,請幫助我。自從過去15天以來,我一直在使用谷歌搜索,但沒有找到任何更好的解決方案。數字簽名認證插在客戶端PC

你的幫助是非常讚賞。

提前致謝。

回答

1

是否USB令牌是智能卡類型PKCS#11?你有適合你的操作系統的驅動程序嗎?

在這種情況下,您可以配置服務器的SSL/TLS連接需要客戶端身份驗證。例如,使用Apache和mod_ssl使用指令 SSLVerifyClient要求

一旦用戶連接到https URL,瀏覽器將請求用戶證書,執行電子簽名並將其與證書的公共部分一起發送。在服務器,你就能得到上述內容

你不能用JavaScript這樣做,因爲JavaScript是不允許訪問PC資源。在好的時候你可以使用Java,但現在在Chrome,Edge或JDK的新版本中不再支持。而在其他瀏覽器中則是挑戰