Oracle® Fusion Middleware Oracle WebLogic Server 12.1.3セキュリティの管理 12c (12.1.3) E57576-07 |
|
前 |
次 |
この章では、WebLogic Server 12.1.3でアウトバウンド双方向SSL接続を行う場合のクライアント証明書の指定方法について説明します。
この章では、以下のトピックについて説明します。
アウトバウンド双方向SSL接続を行う際、デフォルトでWebLogic Serverはそのサーバー証明書を使用して、クライアントとしてアイデンティティを確立します。ただし、かわりに個別のクライアント証明書を指定して、アイデンティティを確立することもできます。この機能は、特にWebLogic Serverが双方向SSL接続を行うクライアントとして機能している場合に役立ちます。
アウトバウンド双方向SSL接続を指定するためにクライアント証明書を使用するには、次の項で説明する手順を実行します。
注意: WebLogic Serverのアイデンティティのクライアント証明書への切替えは、アウトバウンド双方向SSL接続を行う場合にのみサポートされます。WebLogic ServerがSSLサーバーとして機能するインバウンドSSL接続の場合、アイデンティティには常にサーバー証明書が使用されます。 |
WebLogic Serverのアイデンティティ・キーストアにクライアント証明書を追加し、秘密鍵およびパブリック証明書が保存される別名の名前を書き留めます。これは一度だけ行う必要があります。次の手順が完了すると、現在のWebLogic Serverインスタンスで、アウトバウンド双方向SSL接続を行うクライアントIDはいつでも使用できるようになります。
クライアント証明書をアイデンティティ・キーストアに追加するには、次の手順を実行します。
クライアント鍵ペア(公開鍵と関連する秘密鍵)および秘密鍵の別名を作成し、これをWebLogic Serverアイデンティティ・キーストアに保存します。これは、keytoolユーティリティを使用して行うことができます。
証明書署名リクエスト(CSR)を生成し、これを認証局(CA)に提出すると、認証局はCAの署名のあるクライアント証明書を返します。サーバー証明書と同じCAを使用し、両方の証明書が信頼性のある同じルートCAを持つようにすることをお薦めします。
CA署名のあるクライアント証明書をアイデンティティ・キーストアに保存します(クライアント証明書がサーバー証明書と同じCAによって署名されている場合、ルートCA証明書はすでに信頼キーストアにあるため、これを保存する手順をスキップできます)。
クライアント証明書を使用してアウトバウンド双方向SSL接続を開始するには、次の操作を行うWLSTスクリプトを作成します。
WebLogic Serverインスタンスに接続します。
SSLMBean.UseServerCerts
属性をtrue
に設定します。これで発信接続のサーバーIDが確立します。
SSLMBean.UseClientCertForOutbound
属性をtrue
に設定することにより、クライアント証明書のIDに切り替えます。
SSLMBean.ClientCertPrivateKeyPassPhrase
属性を使用してクライアント証明書の秘密鍵パスワードを指定し、SSLMBean.ClientCertAlias
属性を使用してクライアント証明書のキーストア別名を指定します。
例33-1は、WebLogic Serverに構成されたIDキーストアにあるクライアント証明書を使用して、アウトバウンド双方向SSL接続を開始するWLSTスクリプトを示します。
例33-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()
アウトバウンドSSL接続用にサーバーID証明書の使用を復元するには、SSLMBean.UseClientCertForOutbound
属性をfalse
に設定するWLSTコマンドを入力します。
次の点に注意してください。
SSLMBean.ClientCertPrivateKeyPassPhrase
属性およびSSLMBean.ClientCertAlias
属性の値は永続化され、次にクライアントIDを使用してアウトバウンド双方向SSL接続が行われるとき(次にSSLMBean.UseClientCertForOutbound
属性がtrue
に設定されるとき)に使用されます。
アウトバウンドSSL接続のクライアント証明書の指定に使用されるSSLMBean属性は、WebLogic Server管理コンソールからは使用できません。