bea ホーム | 製品 | dev2dev | support | askBEA
BEA Logo Tuxedo
 ドキュメントのダウンロード   サイトマップ   用語集 
検索
0

Tuxedo CORBA アプリケーションのセキュリティ機能

 Previous Next Contents Index View as PDF  

SSL プロトコルのコンフィギュレーション

ここでは、以下の内容について説明します。

 


SSL プロトコルのパラメータの設定

IIOP リスナ/ハンドラまたは CORBA C++ オブジェクト・リクエスト・ブローカ (ORB) で SSL プロトコルを使用するには、以下の作業が必要です。

以下の節では、ISL コマンドや CORBA C++ ORB のオプションを使用して SSL パラメータを設定する方法について説明します。

 


SSL ネットワーク接続用のポートの定義

SSL ネットワーク接続用のポートを定義するには、以下の手順に従います。

注記 共同クライアント/サーバ・アプリケーションで SSL プロトコルを使用する場合は、SSL ネットワーク接続用のポートを指定しなければなりません。デフォルト設定を使用することはできません。

SSL ネットワーク接続用の安全なポートを定義するには、SSL プロトコルのライセンスをインストールしておく必要があります。-S オプションまたは -ORBsecurePort コマンド行オプションを実行したときに、SSL プロトコルを有効にするためのライセンスがインストールされていないと、IIOP リスナ/ハンドラまたは CORBA C++ ORB は起動しません。

 


ホスト照合の有効化

SSL プロトコルではメッセージを暗号化して機密性を保護できますが、暗号化は介在者の攻撃の防止策とはなりません。介在者の攻撃では、あるプリンシパルが、開始元アプリケーションがブートストラップ処理で使用する初期オブジェクト・リファレンスの取得先となる場所を偽ります。

介在者の攻撃を防ぐには、SSL 接続で受信したデジタル証明書が意図したプリンシパルのものであることを確認します。ホスト照合とは、SSL 接続を確立するために使用されたオブジェクト・リファレンスに指定されたホストが、ターゲットのデジタル証明書に指定された識別名のサブジェクトの一般名と一致するかどうかをチェックすることです。ホスト照合は、SSL 接続のイニシエータによってのみ実行され、要求のターゲットが実際にターゲットのデジタル証明書のドメイン名で指定されたネットワーク・アドレスにあることを確認されます。この照合が失敗した場合、SSL 接続のイニシエータはターゲットの認証を拒否し、SSL 接続を終了します。技術的には、ホスト照合は SSL の一部ではなく、Web ブラウザで行われるチェックに似ています。

デジタル証明書に含まれているドメイン名は、オブジェクト・リファレンスに含まれているホスト情報と正確に一致しなければなりません。したがって、IP アドレスの代わりに DNS ホスト名を使用することをお勧めします。

デフォルトでは、ホスト照合は、IIOP リスナ/ハンドラおよび CORBA C++ ORB で有効になっています。ホスト照合を有効にする必要がある場合は、次のいずれかの手順を実行します。

-v オプションおよび -ORBpeerValidate コマンド行オプションの値は、以下のとおりです。

BEA Tuxedo ドメインで複数の IIOP リスナ/ハンドラが SSL 接続を使用するようにコンフィギュレーションされている場合 (障害耐久性のためなど)、IIOP リスナ/ハンドラの DNS エイリアス名を使用するか、それぞれの IIOP リスナ/ハンドラ用に別々のデジタル証明書を作成することをお勧めします。IIOP リスナの -H スイッチを使用すると、オブジェクト・リファレンスが正しく作成されるように、DNS エイリアス名を指定できます。

 


暗号化レベルの設定

暗号化レベルを設定するには、以下の手順に従います。

-z オプションと -ORBminCrypto コマンド行オプションは、アプリケーションが IIOP リスナ/ハンドラまたは CORBA C++ ORB と SSL 接続を確立する場合に使用する暗号化の最低レベルを設定します。有効な値は、0、40、56、および 128です。値 0 はデータが署名されるだけで暗号化されないことを示し、40、56、および 128 は暗号鍵の長さ (ビット単位) を指定します。暗号化の最低レベルを満たさない場合、SSL 接続は失敗します。デフォルト値は 40 です。

-Z オプションと -ORBmaxCrypto コマンド行オプションは、アプリケーションが IIOP リスナ/ハンドラまたは CORBA C++ ORB と SSL 接続を確立する場合に使用する暗号化の最大レベルを設定します。有効な値は、0、40、56、および 128です。値 0 はデータが署名されるだけで暗号化されないことを示し、40、56、および 128 は暗号鍵の長さ (ビット単位) を指定します。デフォルトの最小値は 40 です。デフォルトの最大値は、ライセンスの指定に基づきます。

-z または -Z オプションと -ORBminCrypto および -ORBmaxCrypto コマンド行オプションは、SSL プロトコル用のライセンスがインストールされている場合にのみ有効です。

現在 CORBA アプリケーションで使用されている暗号化のレベルを変更するには、IIOP リスナ/ハンドラまたは ORB をシャットダウンする必要があります。

設定する暗号化の値の組み合わせは非常に重要です。SSL 接続のイニシエータに設定する暗号化の値は、SSL 接続のターゲットに設定する暗号化の値のサブセットである必要があります。

表 6-1 は、暗号化の値の組み合わせと暗号化の動作を示したものです。

表 6-1 暗号化の値の組み合わせ

-z

-ORBminCrypto

-Z

-ORBmaxCrypto

説明

指定なし

指定なし

ORBminCrypto および ORBmaxCrypto に値を指定せず、これら以外のコマンド行オプションまたはシステム・プロパティを使用して SSL プロトコルを使用するように指定した場合、こうしたコマンド行オプションやシステム・プロパティにはデフォルト値が設定されます。

0

指定なし

暗号化の最大レベルは、ライセンスで指定された最大値にデフォルト設定されます。改ざんやリプレイの検出および暗号化レベルが調整されます。

指定なし

0

改ざんやリプレイの検出が調整されます。暗号化は行われません。

0

0

改ざんやリプレイの検出が調整されます。暗号化は行われません。

40, 56, 128

指定なし

暗号化の最大レベルは、ライセンスで指定された最大値にデフォルト設定されます。暗号化レベルは、SSL ライセンスで許可されている最大レベルまで調整できます。

指定なし

40, 56, 12

暗号化レベルは、SSL ライセンスで許可される最大値より小さい値である限り、-Z オプションで指定された値まで調整できます。-z オプションのデフォルト値は 40 です。

40, 56, 128

40, 56, 128

暗号化レベルは、SSL ライセンスで許可される最大値より小さい値である限り、-z オプションで指定した値と -Z オプションで指定した値の間で調整できます。


 

注記 最大ビット・レベルは、表 6-1 に示した組み合わせの中で、SSL ライセンスの値によって制御されます。ラインセンスの最大値を超えてビット・レベルを指定した場合、IIOP リスナ/ハンドラまたは ORB は起動せず、ビット・レベルの設定が無効であることを示すメッセージが生成されます。最大値を引き下げて警告だけを表示する代わりに、IIOP リスナ/ハンドラまたは ORB を起動できないようにすることで、正しくコンフィギュレーションされていないアプリケーションを意図しているよりも低い保護レベルで実行せずに済みます。

ライセンスの最大ビット・レベルを超えて暗号化が調整された場合でも、SSL 接続は確立されません。

CORBA セキュリティ環境でサポートされている暗号スイートの一覧については、第 2 章の 12 ページ「サポートされている暗号スイート」を参照してください。

 


セッション再調整の間隔の設定

注記 セッションを再調整する間隔を設定するのは、IIOP リスナ/ハンドラの場合だけです。

ISL コマンドの -R オプションを使用して、セッションを再調整する間隔を制御します。SSL セッションを定期的に再調整すると、対称鍵の有効期間を制限する情報を暗号化/解読するための対称鍵が更新されます。暗号化用の対称鍵を定期的に変更することで、長時間の SSL 接続をより安全に継続できます。

-R オプションには、再調整の間隔を分単位で指定します。SSL 接続が指定した間隔で再調整を行う場合、IIOP リスナ/ハンドラは、インバウンド接続の SSL セッションの再調整をアプリケーションに要求するか、またはアウトバウンド接続の場合に実際に再調整を実行します。デフォルト値は 0 で、定期的なセッションの再調整は行われません。

ISL コマンドの -a オプションを使用して証明書による認証を有効にした場合は、セッションの再調整を使用できません。

 


IIOP リスナ/ハンドラのセキュリティ・パラメータの定義

SSL 接続に参加する場合、IIOP リスナ/ハンドラは SSL 接続を開始したピアに対して自身を認証します。この認証には、デジタル証明書が必要となります。デジタル証明書に関連付けられた秘密鍵は、SSL 接続を確立する処理の中で使用されます。この処理では、プリンシパルとピア (この場合は、クライアント・アプリケーションと IIOP リスナ/ハンドラ) がセッション・キーについて合意します。セッション・キーは、秘密鍵/公開鍵とは対照的に、SSL セッション中にデータを暗号化するための対称鍵です。ピアが認証できるように、IIOP リスナ/ハンドラに関して以下の情報を定義します。

注記 IIOP リスナ/ハンドラのセキュリティ・パラメータの定義が不正な場合、ULOG ファイルで次のエラーが報告されます。

ISH.28014: LIBPLUGIN_CAT:2008:ERROR:No such file or directory SEC_PRINCIPAL_LOCATION
ISH.28014:ISNAT_CAT:1552:ERROR:Could not open private key, erro =-3011
ISH.28104:ISNAT_CAT:1544:ERROR:Could not perform SSL accept from host/port//
IPADDRESS:PORT

このエラーを解決するには、セキュリティ・パラメータの情報を修正し、IIOP リスナ/ハンドラを再起動します。

これらのパラメータは、ISL システム・プロセスを定義する UBBCONFIG ファイルの SERVERS セクションに含まれています。

また、tpusradd コマンドを使用して、IIOP リスナ/ハンドラを BEA Tuxedo ドメインで認可されたユーザとして定義する必要があります。IIOP リスナ/ハンドラのパスワードの入力を求められます。SEC_PRINCIPAL_PASSVAR で定義したパス・フレーズを入力します。

初期化時に、IIOP リスナ/ハンドラは、SEC_PRINCIPAL_NAME で定義されたプリンシパル名を引数としてインクルードして、クリデンシャルを取得するための認証プラグインを呼び出します。CORBA アプリケーションと対話を試みるリモート・クライアント・アプリケーションを認証し、リモート・クライアント・アプリケーションの認証および監査トークンを取得できるように、IIOP リスナ/ハンドラにはクリデンシャルが必要です。

IIOP リスナ/ハンドラは、BEA Tuxedo ドメインに対して自身の ID を認証しないと、信頼性のあるシステム・プロセスになることができません。そのため、デフォルトの認証プラグインを使用する場合の認証サーバをコンフィギュレーションする必要があります。詳細については、認証サーバのコンフィギュレーションを参照してください。

 


ISL システム・プロセスのパラメータの設定例

ISL サーバ・プロセスに関する情報を定義する UBBCONFIGSERVERS セクションで SSLプロトコルのパラメータを設定します。リスト6-1 は、SSL プロトコルおよび証明書による認証を使用する IIOP リスナ/ハンドラのコンフィギュレーションのパラメータを設定する UBBCONFIG ファイルのコードです。

コード リスト 6-1 UBBCONFIG ファイルでの ISL コマンドの使い方

...
ISL
SRVGRP = SYS_GRP
SRVID = 5
CLOPT = “-A -- -a -z40 -Z128 -S3579 -n //ICEPICK:2569
SEC_PRINCIPAL_NAME=”BLOTTO”
SEC_PRINCIPAL_LOCATION=”BLOTTO.pem”
SEC_PRINCIPAL_VAR=”AUDIT_PASS”

 


CORBA C++ ORB のコマンド行オプションの設定例

リスト6-2 のサンプル・コードは、SSL プロトコルを使用するように ORB をコンフィギュレーションするための CORBA C++ ORB のコマンド行オプションの使い方を示しています。

コード リスト 6-2 CORBA C++ ORB のコマンド行オプションの設定例

ChatClient		-ORBid BEA_IIOP
-ORBsecurePort 2100
-ORBminCrypto 40
-ORBMaxCrypto 128
TechTopics

 

Back to Top Previous Next
Contact e-docsContact BEAwebmasterprivacy