![]() ![]() ![]() ![]() |
以下の節では、WebLogic Integration ソリューションのデプロイメントでセキュリティを設定および管理する方法について説明します。
このトピックの以降の部分に進む前に、必ず『WebLogic Server のセキュリティ』に目を通してください。
WebLogic Integration ソリューションのセキュア デプロイメントの基盤は、WebLogic Server が提供する一群のセキュリティ機能です。ご使用の環境の基底の WebLogic Server レイヤのセキュリティをコンフィグレーションした後は、以下に示す、WebLogic Integration に固有の WebLogic Server エンティティのセキュリティをコンフィグレーションし、管理する必要があります。
セキュリティ管理者は、WebLogic Integration ドメインの作成時に一緒に作成された定義済みプリンシパルとリソースのセットに集中的に取り組む必要があります。
この概要紹介では、以下のトピックを通じて、WebLogic Integration セキュリティの十分な理解を図ります。
注意 : | セキュアなデプロイメントでは、セキュリティが提供されないアプリケーションと同じ WebLogic Server インスタンスで WebLogic Integration を実行しないでください。内部 WebLogic Integration API 呼び出しは、同じインスタンスのアプリケーションから保護されません。 |
Configuration Wizard を使用して WebLogic Integration ドメインを作成する場合、ドメインは以下を使用するようにコンフィグレーションされます。
Configuration Wizard の使用については、『コンフィグレーション ウィザードを使用した WebLogic ドメインの作成』を参照してください。
パスワードはすべて、暗号化形式で PasswordStore に保管されます。WebLogic Integration では、クリアテキストのパスワードは不要です。PasswordStore では、Sun JCE プロバイダを使用して、パスワードによる暗号化を行います。パスワードへのアクセスは MBean API によって制御され、パスワードはパスワード エリアスを使用してアクセスされます。
PasswordStore 内のパスワードは、WebLogic Integration Administration Console で管理できます。詳細については、『WebLogic Integration Administration Console の使用』の「トレーディング パートナ管理 」を参照してください。
WebLogic Integration では、すべてのプライベート キーと証明書をキーストアに格納する必要があります。キーストアは、キーおよび証明書を保持する、保護されたデータベースです。キーおよび証明書を使用して、メッセージを暗号化したり、デジタル署名や SSL を使用したりする場合は、それらのキーおよび証明書をキーストアに格納し、認証や署名の目的でキーおよび証明書を必要とするアプリケーションに対してキーストアを使用可能にしておく必要があります。
Trading Partner Integration のコラボレーションに対して、WebLogic Integration ドメインをセットアップすると、以下のキーストアがコンフィグレーションされます。
|
|
WebLogic Platform の Configuration Wizard と WebLogic Integration テンプレートを使用して新しいドメインを作成すると、新しいドメインには、JKS タイプのデモ キーストアが含まれます。これらのキーストアには、次の特長があります。デモ キーストアでは、次の操作を実行します。
開発環境やテスト環境でデモ キーストアを使用できますが、プロダクション環境の場合は、プロダクション環境用の ID と信頼キーストアを作成するか、既存のものを使用する必要があります。キーストアを作成し、Trading Partner Integration でこのキーストアを使用できるようにするには、以下の手順を実行します。
WebLogic Integration Administration Console でのキーストアのリフレッシュ方法については、『WebLogic Integration Administration Console の使用』の「トレーディング パートナ管理」を参照してください。
クラスタ化されたドメインでは、WebLogic サーバごとに独立したキーストアを作成およびコンフィグレーションする必要があります。
WebLogic Integration では、ロールベースの認可がサポートされています。WebLogic Integration アプリケーションを構成するコンポーネントにアクセスする特定のユーザ (プリンシパル) は、デプロイメント環境により変更されることがありますが、アクセス権を必要とするロールは、通常、あまり変更されません。認可は、特定のリソースに対して特定のアクションを実行するためのパーミッションや権限をエンティティに付与することです。
ロールベースの認可では、セキュリティ ポリシーによって、リソースへのアクセスを認可されたロールが定義されます。WebLogic Integration Administration Console では、特定の管理特権とモニタ特権に関連付けられている組み込みのロールのほかに、次のリソースへのアクセスを制御するセキュリティ ポリシーをコンフィグレーションできます。
プロセス オペレーションを呼び出すのに必要なロールをポリシーで定義します。設定できるポリシーの詳細については、『WebLogic Integration Administration Console の使用』の「プロセス コンフィグレーション」の「プロセス コンフィグレーションについて」の下にある「プロセス セキュリティ ポリシー」を参照してください。
指定されたチャネルでサブスクライブおよびパブリッシュするのに必要なロールをポリシーで定義します。詳細については、『WebLogic Integration Administration Console の使用』の「メッセージ ブローカ 」にある「メッセージ ブローカ チャネルについて」を参照してください。
アプリケーション ビューで、サービスを実行し、イベントをサブスクライブするのに必要なロールをポリシーで定義します。詳細については、『WebLogic Integration Administration Console の使用』の「Application Integration」にあるセキュリティの管理に関する説明を参照してください。
B2BDefaultWebAppApplication
の URI で、リモート トレーディング パートナからメッセージを受け入れるのに必要なロールをポリシーで定義します。
管理者は、アクセスに必要なロールを設定したら、必要に応じてそのロールにユーザまたはグループをマップできます。
直接割り当てられるグループのメンバシップとは異なり、セキュリティ ロールのメンバシップは、ロール文を定義している一連の条件に基づいて動的に計算されます。各条件ではユーザ名、グループ名、または時刻を指定しています。ロール文の評価に基づいてプリンシパル (ユーザ) がロールに該当すると判断されると、そのロールのアクセス パーミッションがプリンシパルに付与されます。
WebLogic Integration ドメイン用にセキュリティをコンフィグレーションする前に、以下を考慮してください。
以下の節では、これらの考慮事項について詳しく論じ、それらが WebLogic Integration のセキュリティ コンフィグレーションに及ぼす影響について説明します。
デジタル証明書は、インターネットなどのネットワーク上でプリンシパルとオブジェクトをユニークなエンティティとして識別するために使用される電子ドキュメントです。デジタル証明書によって、認証局と呼ばれる信頼性のあるサード パーティによって証明されたとおりに、ユーザまたはオブジェクトのアイデンティティが特定の公開鍵に安全にバインドされます。デジタル証明書のオーナは、公開鍵とプライベート キーの組み合わせによってユニークに識別されます。
Trading Partner Integration 機能を使用し、企業間商取引のベースとして WebLogic Integration 環境を設定する場合は、デジタル証明書とキーの特定のセットを取得してコンフィグレーションする必要があります。以下のアイテムがセットに含まれます。
デジタル証明のフォーマットおよびパッケージ化規格が、WebLogic Server に対応していることを確認してください。デジタル証明書には、次に挙げるように、さまざまな暗号化方式があります。
WebLogic Server の公開鍵インフラストラクチャ (Public Key Infrastructure : PKI) は、X.509 のバージョン 1 または 3、X.509v1、X.509v3 に適合するデジタル証明書を認識します。デジタル証明書は、Verisign、Entrust などの認証局から取得することをお勧めします。
注意 : | 会話中のトレーディング パートナが Microsoft IIS をプロキシ サーバとして使用する場合は、その会話で使用されるすべての証明書が、Verisign や Entrust などのよく知られた認証局によって信頼されている必要があります。自己署名証明書を使用すると、IIS プロキシ サーバを通過した要求は失敗します。これは、WebLogic Integration ではなく、IIS の制限です。 |
詳細については、『Trading Partner Integration の紹介』の「Trading Partner Integration のセキュリティ」にある「転送レベルのセキュリティ」を参照してください。
SSL プロトコルは、次の 2 つの機能をサポートすることにより、セキュアな接続を可能にします。
SSL 接続はデジタル証明書を交換するアプリケーション間のハンドシェークで始まり、使用する暗号化アルゴリズムの取り決め、そのセッションの残りで使用する暗号化キーの生成と続きます。
Trading Partner Integration コラボレーションには、トレーディング パートナの認証と認可に SSL を使用することを推奨しますが、その場合は、以下のコンフィグレーションが必要です。
SSL の必須要件ではありませんが、WebLogic Integration ドメインで使用されるすべての証明書とキーを格納する ID と信頼キーストアの作成および活用をお勧めします。SSL、証明書、およびキーストアの詳細については、『WebLogic Server のセキュリティ』の「SSL のコンフィグレーション」を参照してください。
この節では、発信プロキシ サーバまたは WebLogic プロキシ プラグインの使用が及ぼす影響について説明します。
プロキシ サーバを使用することにより、セキュリティで妥協せずに、トレーディング パートナ同士がイントラネットやインターネットを経由して通信できます。高度なセキュリティで保護する必要のある環境で WebLogic Integration を使用する場合、WebLogic Integration をプロキシ サーバの後ろで使用すると効果的です。具体的には、プロキシ サーバの用途は以下のとおりです。
プロキシ サーバをローカル ネットワーク上でコンフィグレーションすると、ネットワーク トラフィック (SSL プロトコルと HTTP プロトコル) は、プロキシ サーバを経由して外部ネットワークにトンネリングされます。
発信プロキシ サーバを使用する環境では、ローカル トレーディング パートナに対する転送 URI エンドポイントの指定に注意してください。HTTP プロキシを使用している場合は、Java システム プロパティの ssl.ProxyHost
と ssl.ProxyPort
を指定する必要があります。詳細については、『Trading Partner Integration の紹介』の「Trading Partner Integration のセキュリティ」にある「Trading Partner Integration で送信 HTTP プロキシ サーバを使用するコンフィグレーション」を参照してください。
発信プロキシ サーバを使用する代わりに、リモートのトレーディング パートナからのビジネス メッセージを処理できるようにプログラムされた、Apache サーバなどの Web サーバを使用して WebLogic Integration をコンフィグレーションすると便利な場合もあります。Web サーバは以下のサービスを提供できます。
続いて、Web サーバは WebLogic プロキシ プラグインを使用します。プラグインは以下のサービスを提供するようにコンフィグレーションできます。
WebLogic プロキシ プラグインをコンフィグレーションする際に、次の処理を行います。
WebLogic Integration 環境にファイアウォールが設定されている場合は、HTTP または HTTPS を介して、ローカル トレーディング パートナとの間でビジネス メッセージを自在にやり取りできるように、ファイアウォールが正しくコンフィグレーションされていることを確認してください。
以下の節では、セキュアなデプロイメントの設定に必要なタスクを実行する手順について説明します。
「単一サーバ デプロイメントのコンフィグレーション」または「クラスタ デプロイメントのコンフィグレーション」を参照して、Configuration Wizard を使用して WebLogic Integration ドメインを作成します。
注意 : | ドメインをコンフィグレーションでは、SSL を有効にすることをお勧めします。 |
WebLogic Server Administration Console では、WebLogic Integration ドメインとデフォルトのセキュリティ レルムをカスタマイズできます。WebLogic Server Administration Console を使用してセキュリティ機能をカスタマイズする方法については、『WebLogic Server のセキュリティ』の「デフォルト セキュリティ コンフィグレーションのカスタマイズ」を参照してください。
ドメイン コンフィグレーション ファイルにファイアウォール情報を追加する方法については、「プロキシ サーバまたはファイアウォール情報のドメイン コンフィグレーションへの追加」を参照してください。
WebLogic Server のセキュリティをコンフィグレーションする場合は、必ず以下を実行してください。
この 2 つの名前が同一でない場合は、ローカルの WebLogic Server インスタンスは、ホスト名確認機能を無効にしてコンフィグレーションする必要があります。この要件は、Trading Partner Integration にあるすべてのトレーディング パートナのサーバ証明書に適用されます。ホスト名確認機能は、WebLogic Server Administration Console で、該当する Server ノードに対する [SSL] タブの [ホスト名検証を無視] 属性にチェックを付けることにより無効にできます。
注意 : | ホスト名検証を無効にするコンフィグレーションはお勧めできません。ホスト名検証により、ある種のセキュリティ攻撃を防御できます。 |
「デジタル証明書について」には、サポートされている証明書のフォーマットが掲載されています。SSL サーバが受け入れる最も一般的なサーバ証明書のフォーマットは、PEM フォーマットで暗号化される X.509 V1 または V3 です。
プライベート キーについては、パスワード暗号化方式の PKCS8 が最も一般的なフォーマットです。WebLogic Server がプライベート キーを読み取れるように、そのパスワードを設定してください。
証明書チェーンは、信頼性のある CA のデジタル証明書の配列で、各 CA はチェーン内の先行するデジタル証明書の発行者です。
すべての中間およびルート CA 証明書を含む 1 つのファイルを指定できます (ファイルに複数の CA 証明書が含まれていると、WebLogic Server は PEM フォーマットで暗号化されたファイルを要求する)。信頼キーストアを使用して信頼性のある CA 証明書を格納する場合は、必ず、チェーン全体を信頼キーストアにインポートしてください。
注意 : | キーストアの使い方に関しては、以下の考慮事項に注意してください。 |
WebLogic Integration は、Application Integration の機能で作成および管理される統合ソリューションに以下のセキュリティ メカニズムを提供します。
詳細については、『Application Integration Design Console の使い方』の「カスタム コードの記述によるアプリケーション ビューの使用」にある「シナリオ 1 : 特定の資格を使用した接続の作成」を参照してください。
詳細については、『Application Integration Design Console の使い方』の「アプリケーション ビューの定義」に記載されているアプリケーション ビューを定義する手順を参照。
開発者は、WebLogic Integration アプリケーションを含む EAR ファイルを構築およびパッケージ化する前に、WebLogic Workshop を使用して、Web アプリケーション設定と Web サービス セキュリティ関連のデプロイメント記述子を次の 3 つの XML ファイルで編集できます。
システム管理者は、デプロイメントの段階で、プロダクション環境とセキュリティ要件に関する詳細情報を取得できます。この場合、次の手順を実行することにより、必要に応じて、EAR ファイルの Web アプリケーション設定と Web サービスのセキュリティ関連のデプロイメント記述子を再コンフィグレーションすることができます。
注意 : | 開発者は、通常、サービス ブローカ コントロール、プロセス コントロール、またはコールバック セレクタの注釈を追加します。これらは、デプロイメントのために EAR ファイルをパッケージ化する前に、セキュリティ上の理由で jcx ファイルや jpd ファイルに必要なものです。ただし、これらの注釈は、以下の手順の途中で追加、変更することもできます。 |
web.xml
と weblogic.xml
で、JPD を含む Web アプリケーションのセキュリティ関係のデプロイメント記述子を使用して、ユーザの資格、認証方式、リソースの場所を適切に設定する。
デプロイメント記述子の詳細については、次を参照してください。
警告 : | WebLogic Workshop からアプリケーションを再デプロイすると、セキュリティ認可情報が失われます。セキュリティ認可情報を保持するには、WebLogic Server Administration Console を使用して EAR ファイルをデプロイします。 |
EAR ファイルのパッケージ化とデプロイの詳細については、BEA Workshop 製品ファミリの「アプリケーションのデプロイメント、実行、デバッグ」を参照してください。
WebLogic Integration アプリケーションをプロダクション環境のハードウェアにデプロイしたら、WebLogic Integration Administration Console を使用して、セキュリティ ポリシーをコンフィグレーションし、ユーザを管理することができます。
WebLogic Integration Administration Console を起動する方法については、『Administration Console オンライン ヘルプ』の「コンソールの起動」を参照してください。
次の節では、セキュリティ ポリシーのコンフィグレーションと、ユーザ管理に必要なタスクを実行する手順について説明します。
[プロセス プロパティ概要] ページには、WebLogic Integration アプリケーションの各ビジネス プロセスが表示されます。
[プロセス タイプの詳細] ページでは、ビジネス プロセスの次のセキュリティ設定をコンフィグレーションできます。
これらの設定の詳細、およびコンフィグレーションする手順については、『WebLogic Integration Administration Console の使用』の「プロセス コンフィグレーション」にある「プロセス詳細の表示および変更」を参照してください。
[動的コントロールの表示] ページには、WebLogic Integration アプリケーションのすべての動的コントロールが表示されます。
これらのページでは、選択したサービス ブローカまたはプロセス制御による送信呼び出しで使用する、クライアント証明書またはユーザ名/パスワードの設定をコンフィグレーションできます。これらの設定の詳細、およびコンフィグレーションする手順については、『WebLogic Integration Administration Console の使用』の「プロセス コンフィグレーション」にある「動的コントロール セレクタの追加または変更」を参照してください。
[チャネル概要リスト] ページには、メッセージ ブローカの各チャネルが表示されます。
[チャネルのサブスクライブおよびパブリッシュ ポリシーを編集] ページでは、チャネルに次のセキュリティ設定をコンフィグレーションできます。
これらの設定の詳細、およびコンフィグレーションする手順については、『WebLogic Integration Administration Console の使用』の「プロセス コンフィグレーション」にある「プロセス詳細の表示および変更」を参照してください。
[アプリケーション ビューの詳細] ページでは、次のセキュリティ設定をコンフィグレーションできます。
セキュリティ ポリシーをコンフィグレーションする手順については、『WebLogic Integration Administration Console の使用』の「Application Integration」にある「セキュリティ ポリシーの更新」を参照してください。
アプリケーション ビューでコンテナ管理のサインオンが有効な場合、アプリケーション ビューでは、サービス接続にコンフィグレーションされたプリンシパル マップを使用できます。アプリケーション ビューでコンテナ管理のサインオンが有効であり、使用するサービス接続がプリンシパル マップによってコンフィグレーションされている場合、実行時には、アプリケーション ビューで起動されたサービスが、EIS インスタンス内で実行されます。EIS インスタンスには、サービスが起動したときに WebLogic Server プリンシパルへマップされる EIS プリンシパルの ID が含まれています。コンテナ管理のサインオンが無効の場合、またはサービス接続にプリンシパル マップが含まれていない場合、サービス接続の認証プロパティ (存在する場合) が EIS インスタンスへの接続に使用されます。
この設定をコンフィグレーションする手順については、『WebLogic Integration Administration Console の使用』の「Application Integration」にある「コンテナ管理のサインオンの有効化または無効化」を参照してください。
[アダプタ インスタンス概要] ページには、WebLogic Integration アプリケーションの各アダプタ インスタンスの ID が表示されます。
[アダプタ インスタンス サービス接続] ページには、アダプタ インスタンスの各サービス接続名が表示されます。
[アダプタ インスタンス サービス接続の詳細] ページでは、次のセキュリティ設定をコンフィグレーションできます。
セキュリティ ポリシーをコンフィグレーションする手順については、『WebLogic Integration Administration Console の使用』の「Application Integration」にある「セキュリティ ポリシーの更新」を参照してください。
このマップをコンフィグレーションする手順については、『WebLogic Integration Administration Console の使用』の「Application Integration」にある「WebLogic Server から EIS へのプリンシパル マッピングの表示および変更」を参照してください。
[ユーザの表示および編集] ページには、WebLogic Integration 内のすべてのユーザの一覧が表示されます。このページでは、新規ユーザの作成、ユーザの削除、選択したユーザのグループ メンバシップを含む詳細の表示などを行えます。
ユーザ管理の詳細については、『Worklist Console の使い方』の「ユーザ管理」にある以下のトピックを参照してください。
[グループの表示および編集] ページには、WebLogic Integration 内のすべてのグループの一覧が表示されます。このページでは、新規グループの作成、グループの削除、選択したグループのグループ メンバシップを含む詳細の表示などを行えます。
グループの管理の詳細については、『Worklist Console の使い方』の「ユーザ管理」にある以下のトピックを参照してください。
[ロールの表示および編集] ページには、WebLogic Integration 内のすべてのロールの一覧が表示されます。このページでは、新規ロールの作成、ロールの削除、選択したロールのロール条件を含む詳細の表示などを行えます。
ユーザ管理の詳細については、『Worklist Console の使い方』の「ユーザ管理」にある以下のトピックを参照してください。
WebLogic Integration ドメインには、デフォルトで Worklist 機能へのアクセスができる、次の WebLogic Integration グループとロールがあります。
ワークリストのセキュリティをコンフィグレーションするプロセスは、基本的にはグループへのユーザの割り当てやロールへのグループの割り当てを行ったり、ポリシーの定義によってロールに適切なパーミッション レベルが与えられていることを確認したりするプロセスです。これらの割り当て方法については、「プロダクション ユーザの管理」を参照してください。ワークリストのセキュリティをコンフィグレーションしたら、タスクのオーナを Worklist で管理できます。
WebLogic Integration Administration Console には、ユーザ、グループ、ロール、ポリシーをワークリスト タスクの所有権とともに管理できるツールがあります。
ファイアウォール越しに行われるトレーディング パートナ間のメッセージ交換に関与する WebLogic Integration ソリューションには、トレーディング パートナの認証および認可や否認防止性など、特別なセキュリティ要件があります。
Trading Partner Integration セキュリティをコンフィグレーションするには、以下のタスクを実行します。
Trading Partner Integration のコンフィグレーションに関する詳細情報と手順については、『Trading Partner Integration の紹介』の「Trading Partner Integration のセキュリティ」を参照してください。
![]() ![]() ![]() |