WebSpherePortal6.1で実行されているアプリケーションでデジタル署名を使用する必要があります。サーバーキーストレージからjava.security.PrivateKeyを取得するためのAPIはありますか?アプリケーションのソースコードで、キーストレージとストレージパスワードへの明示的なパスを避けたい。
1 に答える
IBMKeySetHelperAPIを確認してください。
まず、WASadminでKeyStoreを定義します。これは、パスを介してファイルシステム上のキーデータベース(JKS、PKCS12など)を参照するものです。次に、名前付きKeySetを定義し、KeyStoreを参照します。KeyStoreのラベルと一致するエイリアスをキーセットに作成します。これにより、ストアに複数のキーがある場合、特定のキーへのアクセスが制限されます。
次に、KeySetHelperを介して名前付きキーストアを名前で「検索」できます。注:ストアにあるキーのタイプを知る必要があります。コード内のキーデータベース(またはパスワード)内のラベルを知る必要はありません。ただし、キーが共有シークレットであるかどうかを知る必要があります(この場合、java.security.SecretKey実装を受け取ります。java.security.PrivateKeyが必要なので、必ず個人証明書をロードしてください。キーストアとしてWASで表されるキーデータベースに追加します。
キーストアをサポートするキーデータベースに証明書を手動でロードする場合は、キーセットのキージェネレータークラス名パラメーターを省略できます。これは、WASにキーを生成させる場合に使用されます。java.security.PublicKeyも必要な場合は、必ず「キーペアを生成する」オプションをチェックしてください。その場合、KeySetHelper :: getLatestKeysForKeySetから、java.security.PrivateKeyとjava.security.PublicKeyの両方(およびjava.security.Certificateへのアクセス)を含むcom.ibm.websphere.crypto.KeyPairを呼び出して返されます。 )。
参照: