當我查看java.security.cert中的X509certificate類時,它有一個方法,如getExtendedKeyUsage()
和getKeyUsage()
。有沒有使用keytool設置這些值的方法?如何使用keytool設置Usage屬性
回答
有一個新的-ext
選項keytool
in Java 7檢查表中的-ext
文檔下,特別是KU
和EKU
選項。
注意,你通常可以使用/生成一個密鑰存儲在Java 7的keytool
與其他版本的JRE處理(包括Java 6)。
當然,這個將僅適用於您生成的證書請求(在這種情況下,您使用的CA可能會選擇忽略或更改您的CSR的某些內容)或證書(即您發出的證書)。你在哪裏是CA)。您將無法更改現有證書。
如果有,我從來沒有見過它,我只是用JDK進行檢查(儘管極不可能)。請注意,密鑰用法應該是一個簽名屬性(以及關鍵擴展名),所以更改通常不會起作用,因爲它會破壞頒發CA的簽名。它可以改變爲一個特定的應用程序(和屬性單獨存儲,但這不是一個Java密鑰存儲區內的功能,它不會因爲它會與X509標準不兼容)
「簽名屬性(關鍵擴展名)」。簽名屬性和關鍵擴展不是一回事。所有屬性(以及X.509證書的全部內容)均由頒發CA簽署。擴展是否至關重要是不同的:這是CA向消費者告知證書的一種方式,即它必須理解這個特定的擴展。 – Bruno 2012-01-04 19:34:33
@布魯諾你當然是對的,改成&時,在發佈時有點睏倦 - 我還假設作者正在嘗試更改現有證書,我會問他 – 2012-01-04 21:54:32
該選項似乎是keytool -ext EKU = codeSigning 但我還沒有親自嘗試過它。
- 1. 使用keytool將屬性添加到.jks
- 2. 如何使用MethodInfo.Invoke設置屬性值?
- 3. 如何使用Dispatcher設置Image.Source屬性?
- 4. 使用屬性設置布爾屬性
- 5. 設置屬性值使用屬性名
- 6. 如何攔截使用屬性的類屬性設置器
- 7. 如何使用屬性裝飾器來設置屬性?
- 8. 使用javascript設置屬性
- 9. 如何設置oracle.jdbc.V8Compatible屬性
- 10. C#:如何設置屬性
- 11. 如何設置DataTextField屬性?
- 12. 如何設置CheckBoxList屬性?
- 13. 如何設置屬性:hbm2dll.auto?
- 14. powershell - 如何設置屬性
- 15. 如何設置屬性值
- 16. 如何獲得屬性獲取或設置屬性屬性
- 17. 如何在使用流利的nhibernate時設置配置屬性?
- 18. 設置屬性
- 19. 何處/何時/如何設置tabBarItem字體屬性屬性?
- 20. 如何從附屬依賴項屬性設置屬性值?
- 21. 如何使用MVC Razor設置html屬性,如類?
- 22. 使用JAX-WS:我如何設置用戶代理屬性
- 23. C#屬性:如何使用自定義設置屬性沒有私人領域?
- 24. 如何使用反射通過屬性標記名稱設置屬性值?
- 25. NodeJS如何使用一個屬性來設置module.exports中的另一個屬性?
- 26. 如何使用Spring的@MessageMapping從屬性中設置註釋屬性
- 27. 我如何使用Visual Studio設置「SecureCustomProperties」屬性在MSI的「屬性表」?
- 28. 如何使用Jquery基於父li屬性設置子li屬性?
- 29. WooCommerce:使用wp_set_object_terms發佈設置屬性
- 30. 使用ContentExchange設置請求屬性
您是否正在嘗試更改當前證書的任何內容(我假設)還是布魯諾正確猜測您還可以將其用於新證書? – 2012-01-04 21:55:21