4

FIPSモードでSunPKCS11プロバイダーを使用してJavaプログラムで動作するようにNSS3.12.4を構成しましたが、すべてが正常に機能します。現在、 https://blogs.oracle.com/meena/entry/what_s_new_in_nss1に記載されている手順に従って、NSSを共有データベースとして機能させています。

NSSを共有データベースモードで構成すると、secmod.dbファイルが期待どおりにpkcs11.txtに置き換えられます。しかし、初期化中にsecmod.dbのチェックが行われているように見えるため、SunPKCS11は初期化に失敗しました。また、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共有データベースを試しましたか?

4

1 に答える 1

1

これを機能させるために、さらに2つの手順を実行しました。

  1. touchを使用して空のsecmod.dbを作成します-Javaコードは、それが存在することを確認しているだけで、実際には使用していません。
  2. Javaプロセスを開始する前にデフォルトのデータベースタイプを設定します'exportNSS_DEFAULT_DB_TYPE = sql'

これらの2つの変更により、NSSを使用してキーをロードするサーバー側プロセスができました。

于 2014-01-08T21:05:58.630 に答える