跳过导航链接 | |
退出打印视图 | |
Oracle Solaris 11.1 管理:安全服务 Oracle Solaris 11.1 Information Library (简体中文) |
密钥管理框架 (Key Management Framework, KMF) 提供了一种用来管理公钥技术 (public key technology, PKI) 的统一方法。Oracle Solaris 中有多个不同的应用程序采用了 PKI 技术。每种应用程序都提供自己的编程接口、密钥存储机制和管理实用程序。如果某个应用程序提供了策略执行机制,则此机制将仅适用于该应用程序。借助 KMF,各应用程序可以使用一套统一的管理工具,单一一组编程接口,以及同一个策略执行机制。这些功能可以管理采用这些接口的所有应用程序的 PKI 需求。
KMF 通过以下接口统一管理公钥技术:
kmfcfg 命令-此命令管理 PKI 策略数据库和第三方插件。
PKI 策略决策包括一些操作,如某项操作的验证方法。此外,PKI 策略还可以限制证书的范围。例如,PKI 策略可以声明某个证书仅可用于特定的目的。这种策略可防止将证书用于其他请求。
应用程序不必选择某种特定的密钥库机制,但可以从一种机制迁移到另一种机制。支持的密钥库包括 PKCS #11、NSS 和 OpenSSL。该库具有可插接式框架,因此可添加新的密钥库机制。由于这一原因,使用新机制的应用程序将只需要微小的修改就能使用新密钥库。
KMF 提供了管理密钥存储的方法,并且提供了使用这些密钥的整体策略。KMF 管理以下三种公钥技术的策略、密钥和证书:
来自 PKCS #11 提供者(即来自加密框架)的令牌
NSS,即网络安全服务 (Network Security Services)
OpenSSL,一种基于文件的密钥库
kmfcfg 工具可以创建、修改或删除 KMF 策略项。该工具还可以管理框架的插件。KMF 通过 pktool 命令管理密钥库。有关更多信息,请参见 kmfcfg(1) 和 pktool(1) 手册页以及以下各节。
KMF 策略存储在数据库中。使用 KMF 编程接口的所有应用程序在内部访问此策略数据库。该数据库可以约束由 KMF 库管理的密钥和证书的使用。当某个应用程序试图验证证书时,该应用程序将检查策略数据库。使用 kmfcfg 命令可修改策略数据库。
kmfcfg 命令提供了以下插件子命令:
list plugin-列出由 KMF 管理的插件。
install plugin-按模块的路径名安装插件并为插件创建密钥库。要从 KMF 删除插件,请删除密钥库。
uninstall plugin-通过删除插件的密钥库从 KMF 删除插件。
modify plugin-使插件通过在插件的代码中定义的选项(如 debug)运行。
有关更多信息,请参见 kmfcfg(1) 手册页。有关过程,请参见如何在 KMF 中管理第三方插件。
KMF 可管理以下三种公钥技术的密钥库:PKCS #11 令牌、NSS 和 OpenSSL。对于所有这些技术,pktool 命令可用于执行以下操作:
生成自签名证书。
生成证书请求。
生成对称密钥。
生成公钥/私钥对。
生成要发送到外部证书颁发机构 (certificate authority, CA) 进行签署的 PKCS #10 证书签名请求 (certificate signing request, CSR)。
签署 PKCS #10 CSR。
将对象导入密钥库。
列出密钥库中的对象。
删除密钥库中的对象。
下载 CRL。
对于 PKCS #11 和 NSS 技术,pktool 命令还可用于通过生成口令短语设置 PIN:
为密钥库生成口令短语。
为密钥库中的对象生成口令短语。
有关使用 pktool 实用程序的示例,请参见 pktool(1) 手册页以及使用密钥管理框架(任务列表)。