pkcs11

pkcs11 API 使扩展能够枚举 PKCS #11 安全模块,并将它们作为密钥和证书的来源提供给浏览器。

要使用此 API,您需要拥有 "pkcs11" 权限

使用 Firefox 首选项对话框安装 PKCS #11 模块

执行以下步骤

  1. 将 PKCS #11 模块保存在本地计算机上的永久位置

  2. 选择 工具 > 选项 或选择 Firefox 菜单,然后选择 选项

  3. 打开选项页面后,选择 隐私与安全

  4. 向下滚动到页面底部,在 证书 下方,点击或轻触 安全设备… 安全模块和设备

  5. 点击或轻触 加载 按钮 加载 PKCS#11 设备驱动程序

  6. 为安全模块输入一个名称,例如 "我的客户端数据库"

    警告: 请注意使用国际字符,因为 Firefox 目前存在一个 bug,国际字符可能会导致问题。

  7. 选择 浏览… 以查找本地计算机上 PKCS #11 模块的位置,然后点击或轻触 确定 以确认。

配置 PKCS #11 模块

注意: 从 Firefox 58 开始,扩展可以使用此 API 来枚举 PKCS #11 模块,并将它们作为密钥和证书的来源提供给浏览器。

使用此 API 有两个环境先决条件

  • 用户计算机上必须安装一个或多个 PKCS #11 模块
  • 对于每个已安装的 PKCS #11 模块,必须有一个 原生清单 文件,使浏览器能够找到该模块。

最有可能的是,用户或设备管理员会安装 PKCS #11 模块,并且其安装程序会同时安装原生清单文件。

但是,模块和清单不能作为扩展自身安装过程的一部分来安装。

有关清单文件内容和位置的详细信息,请参阅 原生清单

函数

pkcs11.getModuleSlots()

对于模块中的每个插槽,获取其名称以及是否包含令牌。

pkcs11.installModule()

安装指定的 PKCS #11 模块。

pkcs11.isModuleInstalled()

检查指定的 PKCS #11 模块是否已安装。

pkcs11.uninstallModule()

卸载指定的 PKCS #11 模块。

浏览器兼容性