3

Web アプリケーションの Weblogic のカスタム キーストア構成で構成された ID キーストア (JKS) にアクセスしたいと考えています。-Djavax.net.ssl.Keystore、-Djavax.net.ssl.KeystorePassword.

4

1 に答える 1

2

次のコードを出発点として使用できます。

いくつかのメモ:

  • コードを実行するユーザーは、というグループに属している必要がありますOracleSystemGroup
  • キーストアは、EJB 仕様で推奨されていないファイル システムからロードされます。でもファイル読み込みは問題なくできると思います。
  • キーストア パスフレーズは に含まれてjava.lang.Stringいますが、これはお勧めできません。

これらの短所のため、私はより良いアプローチを調査しています。ID ストア内の証明書とキーにアクセスするためのサービスを提供する WebLogic サービスを探しています。一つもないようです。

InitialContext ic = new InitialContext();
MBeanServer server = (MBeanServer) ic.lookup("java:comp/env/jmx/runtime");

// Get access to server configuration
ObjectName runtime = new ObjectName("com.bea:Name=RuntimeService,Type=weblogic.management.mbeanservers.runtime.RuntimeServiceMBean");
ObjectName serverConfig = (ObjectName) server.getAttribute(runtime, "ServerConfiguration");

/* Load identity store location and passphrase.
 * If e.g. Demo identity has been configured (in WL console) instead of
 * custom identity then the following does not work.
 */

// Passphrase as clear text
Object keyStorePassPhrase = server.getAttribute(serverConfig, "CustomIdentityKeyStorePassPhrase");
Object keyStoreFileName = server.getAttribute(serverConfig, "CustomIdentityKeyStoreFileName");

// Load keystore
KeyStore ks = KeyStore.getInstance(KeyStore.getDefaultType());
ks.load(new FileInputStream(keyStoreFileName.toString()),
        keyStorePassPhrase.toCharArray());
于 2013-06-05T09:50:30.910 に答える