NSS共享数据库无法与SunPKCS11一起使用



我已经将NSS 3.12.4配置为在FIPS模式下使用SunPKCS11提供程序与我的java程序一起工作,一切都很好。现在,我正在执行中提到的步骤https://blogs.oracle.com/meena/entry/what_s_new_in_nss1以使NSS作为共享数据库工作。

当我在共享数据库模式下配置NSS时,secmod.db文件将按预期替换为pkcs11.txt。但现在SunPKCS11未能初始化,因为在初始化过程中似乎有对secmod.db的检查。我还尝试在configDir前面加上sql:,但这也不起作用。

我得到以下异常。

Caused by: java.io.FileNotFoundException: /etc/nss/secmod.db
    at sun.security.pkcs11.Secmod.initialize(Secmod.java:181)
    at sun.security.pkcs11.SunPKCS11.<init>(SunPKCS11.java:179)

有人尝试过用java共享NSS数据库,或者用任何方法来解决这个问题吗?

为了让它为我工作,我采取了两个额外的步骤。

  1. 使用touch创建一个空的secmod.db-Java代码只是在检查它是否存在,实际上并没有使用它
  2. 在启动Java进程"export NSS_default_DB_type=sql"之前设置默认数据库类型

有了这两个更改,我现在有了一个服务器端进程,使用NSS加载它的密钥。

相关内容

  • 没有找到相关文章

最新更新