2015-08-13 41 views
0

我試圖爲每個將連接到返回json的REST調用的客戶端生成證書,該證書將通過電子郵件發送,並且將是個人的。這樣做的目標是,當客戶端使用該證書發送HTTPS請求時,我們將讀取其DN並記錄訪問權限。我們正在使用相互SSL。從一個java密鑰庫生成多個個人證書

我明白證書是如何工作的方式,發行人是,簽署證書的機構,和主題是目標機器上的安全,因此任何個人信息應當包括客戶端的證書中。

如果這是正確的,你將如何實現這一點? 我已經嘗試使用openssl生成證書,但頒發者和主題都填充了相同的數據,我無法更改它,並且我不知道如何繼續。

回答

0

RFC5280發行人主題需要證書的領域。

OpenSSL實施證書籤名請求(CSR) - PKCS#10。以下是使用它來演示CSR生成的示例。您最終將獲得2個文件:一個私鑰(MyCommonName.key)和一個名爲的CSR MyCommonName.csr

openssl req -new -newkey rsa:2048 -nodes -out MyCommonName.csr -keyout MyCommonName.key -subj "/C=US/ST=MyState/L=MyCity/O=MyOrganization/OU=MyDepartment/CN=MyCommonName" 

cert.csr現在可以發送到CA.如果CA無法處理.PEM格式,則 將使用其他參數-outform,然後使用特定的format