WebLogic Server のセキュリティ

     前  次    新しいウィンドウで目次を開く     
ここから内容の開始

セキュリティ管理の概要

以下の節では、WebLogic Server のセキュリティ システムの概要について説明します。より広範囲の概要については、『WebLogic Security について』を参照してください。

注意 : このマニュアルでは、6.x という用語は WebLogic Server 6.0 および 6.1、およびそれらに関連するサービス パックを表します。

 


WebLogic Server のセキュリティ レルム

WebLogic Server のセキュリティ サービスは、セキュリティのコンフィグレーションと管理を簡素化しながらも、WebLogic Server デプロイメントを保護する堅牢な機能を提供します。セキュリティ レルムは、スコーピング (有効範囲の設定) メカニズムとして機能します。各セキュリティ レルムは、コンフィグレーション済みのセキュリティ プロバイダ、ユーザ、グループ、セキュリティ ロール、およびセキュリティ ポリシーで構成されます。1 つのドメインに複数のセキュリティ レルムをコンフィグレーションできますが、アクティブなセキュリティ レルムに指定できるのはそのうちの 1 つだけです。WebLogic Server には、以下の 2 つのデフォルト セキュリティ レルムが用意されています。

新しいセキュリティ レルムをコンフィグレーションして認証機能と認可機能をカスタマイズし、必要なセキュリティ サービスを用意します。次に、その新しいセキュリティ レルムをデフォルト セキュリティ レルムとして設定します。

WebLogic Server のデフォルト セキュリティ コンフィグレーションについては、「WebLogic Server のデフォルト セキュリティ コンフィグレーション」を参照してください。

セキュリティ レルムをコンフィグレーションしてデフォルト セキュリティ レルムに設定する方法については、「デフォルト セキュリティ コンフィグレーションのカスタマイズ」を参照してください。

互換性セキュリティの詳細については、「互換性セキュリティの使い方」を参照してください。

 


セキュリティ プロバイダ

セキュリティ プロバイダは、認証や認可など、セキュリティの特定の側面を処理するモジュール コンポーネントです。アプリケーションではデフォルトの WebLogic セキュリティ プロバイダでサービスを利用できますが、WebLogic Security サービスのインフラストラクチャは柔軟性が高いので、セキュリティ ベンダで独自のカスタム セキュリティ プロバイダを WebLogic Server 用に作成することもできます。WebLogic セキュリティ プロバイダとカスタム セキュリティ プロバイダを適宜組み合わせて独自のセキュリティ ソリューションを構築することができるので、ある分野では新たな技術の進歩を利用しつつ、それ以外の分野では実証済みの手法を堅持できるようになります。WebLogic Administration Console を使用すると、統合された単一の管理インタフェースを通じてすべてのセキュリティ プロバイダを管理できます。

WebLogic Security サービスは、以下のセキュリティ プロバイダをサポートしています。

WebLogic セキュリティ プロバイダで提供される機能の詳細については、「WebLogic セキュリティ プロバイダのコンフィグレーション」と「認証プロバイダのコンフィグレーション」を参照してください。

デフォルト セキュリティ コンフィグレーションについては、「WebLogic Server のデフォルト セキュリティ コンフィグレーション」を参照してください。

カスタム セキュリティ プロバイダの作成については、『WebLogic セキュリティ プロバイダの開発』を参照してください。

 


セキュリティ ポリシーと WebLogic リソース

WebLogic Server は、セキュリティ ポリシー (WebLogic Server 6.x で使用していた ACL とパーミッションに代わるもの) を使用して WebLogic リソースを保護します。セキュリティ ポリシーは、WebLogic リソースへの「アクセス権は誰が持つか」という問いに答えます。セキュリティ ポリシーは、WebLogic リソースとユーザ、グループ、またはセキュリティ ロールの間の関連付けを定義するときに作成します。また、セキュリティ ポリシーに時間の制約を関連付けることもできます。WebLogic リソースは、セキュリティ ポリシーが割り当てられるまでは保護されません。

セキュリティ ポリシーの作成手順にはいくつかの段階があり、さまざまなオプションが用意されています。この手順について理解を深めるには、『ロールおよびポリシーによる WebLogic リソースの保護』に目を通してください。WebLogic Server のデプロイメントに対するセキュリティを完全にコンフィグレーションするには、このマニュアルと『ロールおよびポリシーによる WebLogic リソースの保護』を併読する必要があります。

WebLogic リソース

WebLogic リソースは、権限のないアクセスから保護することができる WebLogic Server エンティティを表す構造化オブジェクトです。WebLogic Server では、以下のリソースが定義されます。

デプロイメント記述子と WebLogic Server Administration Console

WebLogic Server では、セキュリティ ロールおよびポリシーのコンフィグレーション モデルを選択できます。標準の Java Enterprise Edition モデルでは、ロール マッピングやポリシーを Web アプリケーションまたは EJB のデプロイメント記述子に定義します。WebLogic Security サービスでは、デプロイメント記述子に定義された情報を使用して、セキュリティ ロールを付与したり、Web アプリケーションと EJB のセキュリティ ポリシーを定義したりできます。WebLogic Server を最初に起動するときに、web.xmlweblogic.xmlejb-jar.xml、または weblogic-ejb-jar.xml デプロイメント記述子に格納されたセキュリティ ロールとセキュリティ ポリシーの情報が、デフォルト セキュリティ レルムにコンフィグレーションされている認可プロバイダとロール マッピング プロバイダにロードされます。この情報は、後で Administration Console を通じて変更できます。

デプロイメント記述子内の情報を利用するには、セキュリティ レルム内の少なくとも 1 つの認可プロバイダとロール マッピング プロバイダがそれぞれ DeployableAuthorizationProvider および DeployableRoleProvider セキュリティ サービス プロバイダ インタフェース (SSPI) を実装している必要があります。この SSPI を使用すると、プロバイダはデプロイメント記述子から情報を (検索ではなく) 格納できます。デフォルトでは、WebLogic 認可プロバイダとロール マッピング プロバイダがこの SSPI を実装しています。

Administration Console からデプロイメント記述子内のセキュリティ ロールとセキュリティ ポリシーを変更し、それ以降もこの情報を Administration Console から変更する予定がある場合は、Administration Console で行った変更が WebLogic Server の再起動時にデプロイメント記述子の古い情報で上書きされないように、セキュリティ レルムにコンフィグレーション オプションを設定できます。

詳細については、『ロールおよびポリシーによる WebLogic リソースの保護』の「Web アプリケーションおよび EJB リソースの保護のオプション」を参照してください。

 


WebLogic Server のデフォルト セキュリティ コンフィグレーション

WebLogic Server のセキュリティのコンフィグレーションと管理を簡素化するために、デフォルトのセキュリティ コンフィグレーションが用意されています。デフォルト セキュリティ コンフィグレーションでは、myrealm がデフォルト セキュリティ レルムとして設定され、WebLogic 裁決、認証、ID アサーション、XACML 認可、資格マッピング、XACML ロール マッピング、および証明書パスの各プロバイダがセキュリティ プロバイダとして定義されています。WebLogic Server の組み込み LDAP サーバは、これらのデフォルト セキュリティ プロバイダ用のデータ ストアとして使用されます。デフォルト セキュリティ コンフィグレーションを使用するには、セキュリティ レルムでユーザ、グループ、およびセキュリティ ロールを定義し、セキュリティ ポリシーを作成してドメイン内の WebLogic リソースを保護する必要があります。

注意 : WebLogic Server には、WebLogic 認可プロバイダと WebLogic ロール マッピング プロバイダがあります。これらのプロバイダは、Administration Console などではそれぞれ「デフォルト認可プロバイダ」、「デフォルト ロール マッピング プロバイダ」と呼ばれています。WebLogic Server 9.1 から、新しく作成されるセキュリティ レルムでは、これらのプロバイダはデフォルトのプロバイダではなくなりました。代わりに、XACML 認可プロバイダと XACML ロール マッピング プロバイダがデフォルトのプロバイダになっています。

WebLogic セキュリティ プロバイダで提供される機能の詳細については、『WebLogic Security について』を参照してください。これらの WebLogic セキュリティ プロバイダがセキュリティ要件を必ずしも完全に満たしていない場合には、それらを補うか、あるいは入れ替えることができます。『WebLogic セキュリティ プロバイダの開発』を参照してください。

デフォルト セキュリティ コンフィグレーションでは要件が満たされない場合、WebLogic セキュリティ プロバイダとカスタム セキュリティ プロバイダを自由に組み合わせて新しいセキュリティ レルムを作成し、そのセキュリティ レルムをデフォルト セキュリティ レルムとして設定できます。「デフォルト セキュリティ コンフィグレーションのカスタマイズ」を参照してください。

 


WebLogic セキュリティのコンフィグレーション : 主な手順

WebLogic Server のセキュリティ機能は互いに関連しているので、セキュリティをコンフィグレーションする場合にどこから始めるべきか判断しにくいものです。実際、WebLogic Server デプロイメントのセキュリティをコンフィグレーションする場合には、同じ作業を繰り返すこともあります。コンフィグレーションの手順はいくつかありますが、次の手順を実行することをお勧めします。

  1. デフォルト セキュリティ コンフィグレーションをカスタマイズする理由」に目を通して、デフォルト セキュリティ コンフィグレーションを使用するかどうかを決定します。
    • デフォルト セキュリティ コンフィグレーションを使用する場合は、手順 3 に進みます。
    • デフォルト セキュリティ コンフィグレーションを使用しない場合は、手順 2 に進みます。
  2. デフォルト セキュリティ レルムで、追加のセキュリティ プロバイダをコンフィグレーションするか (たとえば、WebLogic 認証プロバイダを使用する代わりに LDAP 認証プロバイダをコンフィグレーションする)、またはカスタム セキュリティ プロバイダをコンフィグレーションします。この手順は省略可能です。デフォルトでは、WebLogic Server はデフォルト セキュリティ レルム (myrealm) の WebLogic セキュリティ プロバイダをコンフィグレーションします。デフォルト セキュリティ コンフィグレーションをカスタマイズする必要がある状況については、「デフォルト セキュリティ コンフィグレーションをカスタマイズする理由」を参照してください。カスタム セキュリティ プロバイダの作成については、『WebLogic セキュリティ プロバイダの開発』を参照してください。
  3. 注意 : また、新しいセキュリティ レルムを作成し、そのセキュリティ レルムでセキュリティ プロバイダ (WebLogic またはカスタム) をコンフィグレーションし、そのセキュリティ レルムをデフォルト セキュリティ レルムとして設定することもできます。「デフォルト セキュリティ コンフィグレーションのカスタマイズ」を参照してください。
  4. 必要に応じて、組み込み LDAP サーバをコンフィグレーションします。WebLogic Server の組み込み LDAP サーバは、デフォルト オプションでコンフィグレーションされています。ただし、これらのオプションを変更して、組み込み LDAP サーバの使い方を環境に合わせて最適化できます。「組み込み LDAP サーバの管理」を参照してください。
  5. ユーザ アカウントが適切に保護されていることを確認します。WebLogic Server にはユーザ アカウントを保護するためのコンフィグレーション オプションが用意されています。デフォルトでは、属性は最高のセキュリティ レベルに設定されています。ただし、WebLogic Server の開発およびデプロイメント時には、ユーザ アカウントに対する制限の緩和が必要な場合もあります。プロダクション環境に移行する前に、ユーザ アカウントのオプションが最高の保護レベルに設定されていることを確認してください。新しいセキュリティ レルムを作成する場合は、ユーザのロックアウトのオプションを設定する必要があります。「WebLogic Server でのパスワードの保護の仕組み」と「ユーザ アカウントの保護」を参照してください。
  6. セキュリティ ポリシーで WebLogic リソースを保護します。セキュリティ ポリシーの作成手順にはいくつかの段階があり、さまざまなオプションが用意されています。この手順について理解を深めるには、『ロールおよびポリシーによる WebLogic リソースの保護』に目を通してください。WebLogic Server のデプロイメントに対してセキュリティを完全にコンフィグレーションするには、このマニュアルと『ロールおよびポリシーによる WebLogic リソースの保護』を併読する必要があります。
  7. WebLogic Server の ID と信頼をコンフィグレーションします。この手順は省略可能ですが、実行することをお勧めします。「ID と信頼のコンフィグレーション」を参照してください。
  8. WebLogic Server に対して SSL を有効にします。この手順は省略可能ですが、実行することをお勧めします。「SSL のコンフィグレーション」を参照してください。
  9. プロダクションに移行する場合、『プロダクション環境の保護』で説明されている追加のセキュリティ オプションを確認し、実装してください。

また、以下のことを行うことができます。

 


セキュリティのコンフィグレーション方法

多くの場合、このマニュアルでは WebLogic Server Administration Console を使用して WebLogic セキュリティをコンフィグレーションする方法について説明しています。一般に、Administration Console で実行できるコンフィグレーション タスクは、WebLogic Scripting Tool または Java Management Extensions (JMX) API を使用して実行することもできます。WLST を使用した WebLogic セキュリティの管理については、『WebLogic Scripting Tool ガイド』の「セキュリティの管理」を参照してください。JMX API の使い方については、『JMX によるカスタム管理ユーティリティの開発』の「セキュリティ レルムを管理する MBean サーバの選択」を参照してください。

セキュリティ レルムを管理する場合は、タスクに応じて 2 つの異なる MBean サーバを使用する必要があります。

また、両立不能な変更が発生しないように、自身のクライアントや別の JMX クライアントに現在アクティブな編集セッションがある場合にはセキュリティ プロバイダ MBean でオペレーションを呼び出すことはできません。Administration Console では、この制限が自動的に適用され、適切な MBean サーバへのアクセスが自動的に行われます。Administration Console を使用する場合には、[ドメイン : セキュリティ : 全般] ページで [動的でない変更が行われた場合にセキュリティ管理操作を許可する] を有効化することで、この制限をオーバーライドできます。この属性を true に設定すると、ユーザはサーバを再起動しなくてもセキュリティ管理操作を実行できるようになります。この属性は、新しい MBean 編集セッションが開始されると、false にリセットされます。

たとえば、DefaultAuthenticatorMBeanMinimumPasswordLength 属性の値は、ドメインのコンフィグレーション ドキュメントに格納されています。このドキュメントに対するすべての変更は WebLogic Server によって制御されているため、この属性の値を変更するには、編集 MBean サーバを使用してドメインのコンフィグレーションに対してロックを取得する必要があります。DefaultAuthenticatorMBeancreateUser オペレーションは、LDAP サーバにデータを追加します。このオペレーションは WebLogic Server によって制御されていません。DefaultAuthenticatorMBean のコンフィグレーションとそれが LDAP サーバで使用するデータの間で両立不能な変更が発生するのを避けるため、自身や別のユーザが MinimumPasswordLength 属性の変更を行っている場合に createUser オペレーションは呼び出せません。さらに、この属性の変更には WebLogic Server の再起動が必要なので、サーバを再起動するまで createUser オペレーションは呼び出せません。

 


互換性セキュリティとは

互換性セキュリティとは、WebLogic Server 6.x で行ったセキュリティ コンフィグレーションをこのリリースの WebLogic Server で実行するための機能です。互換性セキュリティでは、6.x のセキュリティ レルム、ユーザ、グループ、および ACL の管理、ユーザ アカウントの保護、レルム アダプタ監査プロバイダのコンフィグレーションや、必要に応じてレルム アダプタ認証プロバイダ内の ID アサーション プロバイダのコンフィグレーションを行うことができます。

互換性セキュリティで使用可能なセキュリティ レルムは CompatibilityRealm だけです。互換性レルムのレルム アダプタ プロバイダ (監査、裁決、認可、および認証) を使用すると、6.x セキュリティ レルムの認証、認可、および監査サービスとの下位互換性を保持できます。詳細については、「互換性セキュリティの使い方」を参照してください。

注意 : 互換性セキュリティは非推奨になりました。今後のメジャー リリースではサポートされなくなります。WebLogic Server デプロイメントをこのリリースの WebLogic Server のセキュリティ機能にアップグレードすることを強くお勧めします。互換性セキュリティは、このアップグレードの間だけ使用してください。

互換性セキュリティで実行できる管理タスク

互換性セキュリティでは WebLogic Server 6.x でサポートされる認証、認可、およびカスタム監査の実装にしかアクセスできないので、6.x のすべてのセキュリティ タスクが実行できるわけではありません。互換性セキュリティを使用するには、次の手順に従います。

注意 : レルム アダプタ裁決プロバイダとレルム アダプタ認可プロバイダは、6.x の既存の config.xml ファイルの情報を使用して、CompatibilityRealm にデフォルトでコンフィグレーションされています。これらのプロバイダは CompatibilityRealm でのみ使用できます。レルム アダプタ認証プロバイダも CompatibilityRealm に自動的にコンフィグレーションされます。ただし、このプロバイダは、6.x セキュリティ レルムに格納されたユーザとグループにアクセスするために、他のレルムでコンフィグレーションすることもできます。詳細については、「RDBMS 認証プロバイダのコンフィグレーション」を参照してください。

ID と信頼のコンフィグレーション、SSL の使用、接続フィルタのコンフィグレーション、およびドメイン間の相互運用性の有効化も可能ですが、これらのタスクはこのリリースの WebLogic Server のセキュリティ機能を使用して実行します。以下を参照してください。


  ページの先頭       前  次