この章では、以下のトピックについて説明します。
アウトバウンド双方向SSL接続を行う際、デフォルトでWebLogic Serverはそのサーバー証明書を使用して、クライアントとしてアイデンティティを確立します。ただし、かわりに個別のクライアント証明書を指定して、アイデンティティを確立することもできます。この機能は、特にWebLogic Serverが双方向SSL接続を行うクライアントとして機能している場合に役立ちます。
アウトバウンド双方向SSL接続を指定するためにクライアント証明書を使用するには、次の項で説明する手順を実行します。
注意:
WebLogic Serverのアイデンティティのクライアント証明書への切替えは、アウトバウンド双方向SSL接続を行う場合にのみサポートされます。WebLogic ServerがSSLサーバーとして機能するインバウンドSSL接続の場合、アイデンティティには常にサーバー証明書が使用されます。
WebLogic Serverのアイデンティティ・キーストアにクライアント証明書を追加し、秘密鍵およびパブリック証明書が保存される別名の名前を書き留めます。これは一度だけ行う必要があります。次の手順が完了すると、現在のWebLogic Serverインスタンスで、アウトバウンド双方向SSL接続を行うクライアントIDはいつでも使用できるようになります。
クライアント証明書をアイデンティティ・キーストアに追加するには、次の手順を実行します。
クライアント証明書を使用してアウトバウンド双方向SSL接続を開始するには、次の操作を行うWLSTスクリプトを作成します。
SSLMBean.UseServerCerts
属性をtrue
に設定します。これで発信接続のサーバーIDが確立します。SSLMBean.UseClientCertForOutbound
属性をtrue
に設定することにより、クライアント証明書のIDに切り替えます。SSLMBean.ClientCertPrivateKeyPassPhrase
属性を使用してクライアント証明書の秘密鍵パスワードを指定し、SSLMBean.ClientCertAlias
属性を使用してクライアント証明書のキーストア別名を指定します。例32-1 クライアントIDを使用してアウトバウンド双方向SSL接続を開始するWLSTスクリプトのサンプル
url="t3://localhost:7001" adminUsername="weblogic" adminPassword="password" connect(adminUsername, adminPassword, url) edit() server=cmo.lookupServer('myserver') cd('Servers') cd('myserver') startEdit() cd('SSL') cd('myserver') ssl = server.getSSL() ssl.setUseServerCerts(true) ssl.setUseClientCertForOutbound(true) ssl.setClientCertAlias("myClientCert") ssl.setClientCertPrivateKeyPassPhrase("myClientCertPrivateKeyPassPhrase") save() activate() disconnect() exit()
例32-1は、WebLogic Serverに構成されたIDキーストアにあるクライアント証明書を使用して、アウトバウンド双方向SSL接続を開始するWLSTスクリプトを示します。
アウトバウンドSSL接続用にサーバーID証明書の使用を復元するには、SSLMBean.UseClientCertForOutbound
属性をfalse
に設定するWLSTコマンドを入力します。
次の点に注意してください。
SSLMBean.ClientCertPrivateKeyPassPhrase
属性およびSSLMBean.ClientCertAlias
属性の値は永続化され、次にクライアントIDを使用してアウトバウンド双方向SSL接続が行われるとき(次にSSLMBean.UseClientCertForOutbound
属性がtrue
に設定されるとき)に使用されます。
アウトバウンドSSL接続のクライアント証明書の指定に使用されるSSLMBean属性は、WebLogic Server管理コンソールからは使用できません。