exteNd Application Server 5.0
コアヘルプ

 

    First Previous Next Last 管理ガイド  05/21/03 10:02:24 

第10章    セキュリティの使用

この章では、配備データベース、アプリケーションサーバ、およびアプリケーションサーバのクラスタへのアクセスを設定、制限するための方法を説明します。この章を構成する節は次のとおりです。

 
Top of page

認証とアクセス制御

アクセス制御では、ユーザがオブジェクトおよびリソースで実行できる操作を指定します。

 
Top of section

認証とアクセス制御

アプリケーションサーバの認証とアクセス制御の設定では、次のアクセスを管理します。

アプリケーションサーバでは、セキュリティ式を使用して、特定のユーザがアクセスを許可されている対象を特定します。

アプリケーションサーバでは、JavaセキュリティのACL (Access Control List (アクセス制御リスト))のAPIをサポートしています。このJavaセキュリティは、SMCおよびアプリケーションサーバの管理サーバAPIによるセキュリティで動作します。

For more information    管理サーバAPIの詳細については、 を参照してください。

次のリソースに対するアクセスを制御するには、SMCを使用します。

許可のタイプの説明に従ってアクセス許可を設定します。

 
Top of page

許可のタイプ

許可を使用して、さまざまな「管理操作」および「データベースオブジェクト」へのアクセス制御を設定します。

 
Top of section

管理サーバの許可

管理リソース」では、管理設定を表示および変更する権限(および設定にアクセスする許可)を制御します。管理リソースのセキュリティを設定すると、不正なユーザが管理操作を実行することはできなくなります。

注記:   管理設定にアクセスできるのは、管理グループのメンバーのみです。ログインしているユーザ、セッションの情報、ユーザとグループの許可の設定、接続数といったすべての管理情報に、不正なユーザがアクセスすることを防ぐには、この制限を維持することが重要です。

許可のタブと制限するべき管理リソースの内容は、次の表のとおりです。

許可

説明

Read Server Configuration

管理設定と接続パラメータを表示できるユーザを制限します。

Modify Server Configuration

ログインしているユーザ、ユーザとグループの許可の設定、接続数などの接続パラメータを変更することにより、サーバまたはクラスタを管理できるユーザを制限します。

Read Directory Listing

サーバディレクトリを参照できるユーザを制限します。ユーザのオブジェクトへのアクセスには影響しません。

Read Users and Groups

サーバに定義されているユーザとグループを表示できるユーザを制限します。許可を設定するには、ユーザはこの許可を取得している必要があります。そうでない場合、ユーザとグループを表示することはできません。

Set Permissions

管理リソースを制御する許可を変更できるユーザを制限します。ロックスミス権限を持つユーザは、この許可に対するチェックを受けずにオブジェクトのセキュリティプロパティを変更することができます。

 
Top of section

データベースオブジェクトの許可

配備データベースは、ディレクトリとオブジェクト(J2EEアーカイブなど)への許可を設定することによりセキュリティを保護します。アクセスの制限は、ユーザ単位またはグループ単位で設定できます。許可の設定は、ディレクトリ、すべてのサブディレクトリ(または特定のサブディレクトリ)、およびディレクトリ内のオブジェクトに適用されます。階層内の各オブジェクトまたはリソースを保護する必要があります。

For more information    詳細については、セキュリティチェックリストの 手順10: 配備データベースの保護を参照してください。

配備データベースでオブジェクトに適用される許可は次のとおりです。

許可

説明

Read

オブジェクトの場合、オブジェクトの設計情報を表示できるユーザを制限します。データベースまたはディレクトリの場合、チャイルドオブジェクトにアクセスできるユーザを制限します。

データベースまたはディレクトリ内のオブジェクトに対して、ユーザが簡単にアクセスできないようにするには、そのユーザのデータベースレベルまたはディレクトリレベルでの読み込みアクセスを拒否します。

注記:   サブディレクトリでオブジェクトを実行する必要があるユーザは、そのペアレントディレクトリのすべてに対する読み込みアクセスを持つ必要があります (詳細については、 アプリケーションオブジェクトを実行可能にするを参照してください)。

Modify

オブジェクトの場合、オブジェクトを変更できるユーザを制限します。データベースまたはディレクトリの場合、新しいチャイルドオブジェクトを追加できるユーザを制限します。

サーバへの不適切な変更を防ぐには、ディレクトリへの変更許可を持つユーザを慎重に確認します。

Execute

(データベースまたはディレクトリの場合、[Default Execute])

選択されたデータベースまたはディレクトリ内で、アプリケーションオブジェクト(J2EEアーカイブなど)を実行できるユーザを制限します。

通常、エンドユーザはオブジェクトに対する実行許可を与えられています。

個々のアプリケーションオブジェクトに設定されている許可は、データベースまたはディレクトリに設定されている許可より優先されます。

Set Permissions

オブジェクトに関するアクセス制御の情報を変更できるユーザを制限します。たとえば、管理者のみがオブジェクトのセキュリティプロパティを変更できるように設定することができます。

 
Top of section

アクセス権限の使用

サーバリソースは、そのタイプによって制限できる許可も異なります。

For more information    詳細については、 アプリケーションオブジェクトを実行可能にするを参照してください。

 
Top of section

アクセスの変更

オブジェクトのセキュリティは、SMCで許可を設定することにより、サーバまたはクラスタレベル、ディレクトリレベル、またはオブジェクトレベルで変更できます。

注記:   SMCでの許可の設定に加え、『機能ガイド』の「SilverCmdリファレンス」という章で説明されている、SilverCmdの セキュリティ設定を使用すると、いくつかのタイプの許可を設定することもできます。

Procedure ユーザアクセスを変更する

  1. SMCを起動します。

  2. ツールバーから[Security]アイコンを選択します。

  3. Permissions]パネルを選択します。

    SMCの表示が変わります。SMCで管理されているすべてのクラスタ、サーバ、およびデータベースが展開可能になり、コンテンツをリストで表示して、該当するレベルで許可を設定することができるようになります。

    PermissionsTab

  4. オブジェクトまたはディレクトリを選択し、 許可のタイプの説明に従って、許可を設定します。

複数オブジェクトでの許可の設定   オブジェクトが同じサーバ上で、同じタイプの1つのディレクトリにある場合に限り、一度に1つまたは複数のオブジェクトに対して許可を設定できます。この場合、隣接するエントリの場合、<Shift>キーを押しながらクリックする、または隣接していないエントリの場合、<Ctrl>キーを押しながらクリックし、選択したオブジェクトに許可を設定します。

許可の範囲とログイン要求の設定   [Permissions]パネルの下部に表示されるラジオボタンは、ディレクトリまたはオブジェクトのいずれを選択しているかによって異なります。ボタンで表示されるオプションは、次の表のとおりです。

ラジオボタンによるオプション

説明

選択している対象

Apply to this directory only

選択したディレクトリにのみ許可を適用し、ディレクトリ構造の新しいオブジェクトに対するデフォルトの設定になります。

ディレクトリ内の既存のオブジェクトに対する許可は変更されません。

ディレクトリを選択している場合のみ

Apply to this directory and all descendants

選択したディレクトリ、そのディレクトリにあるすべての既存のオブジェクト(サブオブジェクトを含む)、および新しいオブジェクトに対し、許可を適用します。

既存のオブジェクトに対する既存の設定より優先されます。

Require login for access

オブジェクトにアクセスしようとしているユーザに対し、クライアント証明書またはログインによって認証を要求します。

認証はオブジェクト単位で設定されます。サーバレベルで認証を要求することもできます( 認証の有効化を参照)。

オブジェクトを選択している場合のみ

 
Top of section

許可の制限

フォームの各タブは、選択したディレクトリまたはオブジェクトに適用する許可のタイプを示しています アクセスを制限するには、タブを選択し、[Unrestricted]の選択を解除してから、[Simple List]または[Advanced Expression]のいずれかを選択します。

注意:   [Unrestricted]チェックボックスをオフにした場合、[Simple List]または[Advanced Expression]を必ず選択してください。そうしないと、誰もアクセスできなくなります。[Simple List]の以前のエントリがすべてクリアされている場合にも、同じ問題が起こります。サーバに対する読み込みアクセスを持っているユーザがいないことが判明した場合は、コマンドラインオプションを使用してSilverMasterInitを実行することができます (詳細については、 SilverMasterInitプログラムの使用を参照してください)。

簡潔なリストの使用

Simple List]では、セキュリティプロバイダによって認識されるユーザとグループを指定したり、プロバイダの設定によるアクセス許可を使用したりすることができます。

Procedure 簡潔なリストを使用する

  1. ツールバーで、[Security]アイコンを選択し、次に[Permissions]パネルを選択します。

  2. SMCの左側で、許可を設定するオブジェクトまたはディレクトリを選択します。

  3. [Permissions]パネルで、制限を設定する許可のタイプに該当するタブを選択します。

  4. [Simple List]ボタンを有効にするには、[Unrestricted]がオンになっている場合、オフにします。

  5. [Simple List]はデフォルトの設定です。フォームで、許可を与えるユーザまたはグループを選択し、[>]をクリックします。すべてのユーザまたはグループを選択するには、[>>]をクリックします。  選択したユーザまたはグループが右側のリストボックスに表示されます。

    注記:   SMCに、グローバルグループを含むローカルグループ(NTユーザマネージャで指定)が、グループ名ではなく、個々のメンバー名で表示されます (詳細については、 NTセキュリティの使用を参照してください)。

    ユーザまたはグループから許可を削除するには、該当するユーザまたはグループを選択し、[<]をクリックします。  すべてのユーザまたはグループを削除するには、[<<]を選択します。

詳細な式の使用

特定の条件に基づいたアクセスを指定する式を作成するには、[Advanced Expression]を使用します。詳細な式を使用するには、[Simple List]ではなく、[Advanced Expression]を選択します( 簡潔なリストを使用するを参照)。式には、次のいずれかを含めることができます。

Procedure 詳細な式を使用する

  1. SMCの左側で、許可を設定するオブジェクトまたはディレクトリを選択します。

  2. [Permissions]パネルで、制限を設定する許可のタイプに該当するタブを選択します。

  3. Unrestricted]が選択されている場合は、オフにします。次に[Advanced Expression]を選択します。

    Expression Builderにより、変数、関数および演算子を選択するペインが表示されます。

詳細な式の例   詳細なセキュリティ式の例は、次のとおりです。

UUIDのサポート

Expression Builderでは、セキュリティの式に、UUID (Universally Unique Identifiers)をサポートしています。UUIDを使用すると、単純な整数のIDよりもさらに安全なセキュリティシステムを確立できます。UUIDは単純なセキュリティ式でデフォルトで使用されますが、詳細な式でも使用可能です。

UUID式は、Expression Builderに直接入力するか、Expression Builderの[Functions]パネルにある[ID]セクションから選択することができます。

関数

説明

userID()

現在ログオンしているユーザのUUIDを検索します。

userID(\qname\q)

特定ユーザのUUIDを検索します。

修飾名を作成するには、セキュリティの領域(SSSW、NT、LDAP、またはNIS+)に、セキュリティの権限(NTドメイン名またはLDAP/NIS+サーバ名など)を追加し、次にユーザ名を追加します。コンポーネントは、2つの円記号(\\)で区切ります (ユーザ名の円記号は、2倍の4つにして、エスケープする必要があります)。

  • デフォルトでは、領域と権限の両方が指定されていない場合、Silver Securityユーザであると見なされます。

  • デフォルトでは、領域が指定されていない場合、NTユーザであると見なされ、最初のコンポーネントはNTドメインであると見なされます。

次に例を示します。

  • userID(\qbobh\q)は、Silver Securityユーザのbobh (Silver Securityで指定されたユーザ)を指します。

  • userID(\qDEVA\\JWilkins\q)は、NTドメインのDEVAにいるNTユーザのJwilkinsを指します。

groupID(\qname\q)

特定グループのUUIDを検索します。

グループ名はユーザ名同様、修飾名を構成します。

次に例を示します。

  • groupID(\qAdministrators\q)は、Silver Securityの管理グループを指します。

  • groupID(\qDEVA\\Accounting\q)は、DEVAドメイン内のNTの経理グループを指します。

UUID(\quuidString\q)

UUIDの文字列表記に対応するUUIDを検索します。このフォームは、グループIDまたはユーザIDが解決されない場合に使用されます。

アプリケーションサーバは、AgAccessRightsシステムテーブルに保存する前に、名前を対応するUUIDに変換します。同様に、クライアントが式を表示するときは、内部フォームは人間が認識できる名前に変換し直されます。内部UUIDを変換できない場合(たとえば、削除されてる場合)、UUID()が使用されます。

例   UUIDを使用したセキュリティ式の例は、次のとおりです。

 
Top of page

アプリケーションオブジェクトを実行可能にする

配備データベースのセキュリティを保護する場合、ユーザが配備済みのアプリケーション(EAR、WAR、およびEJB JARなど)を実行できるかどうかを確認することも必要です。

Procedure データベースオブジェクトを実行可能にする

  1. 管理者またはロックスミス権限を持つユーザとしてSMCにログインします。

  2. ツールバーから[Security]アイコンを選択します。

  3. Permissions]を選択します。

  4. 変更するサーバとデータベースを選択します。

  5. 初期グループの許可を次のように設定します。

    1. 開発者と管理者に読み込みと変更の許可を割り当てます。

    2. 管理者に許可を設定するためのアクセスを割り当てます。

    3. エンドユーザに制限のない実行許可を割り当てます。

    注記:   前のすべてのタブで、[Apply to this directory and all descendants]チェックボックスをオンにします。

  6. Update]をクリックします。

  7. Deployed Objects]を選択します。

  8. Read]許可のタブで、[Unrestricted]チェックボックスを選択します。ただし、[Apply to this directory and all descendants]をクリックしないでください

  9. Update]をクリックして、設定を保存します。

  10. ユーザがアクセスするアプリケーションの主なディレクトリのすべてに、同じ「読み込み」許可の設定( Step 8のとおり)を適用します。これらの設定により、ユーザにペアレントディレクトリレベルのアクセスが与えられますが、それらのディレクトリ内にある個々のオブジェクトへのアクセスは制限されます。

  11. 個々のオブジェクトをチェックし、[Require login for access]オプションを有効にするかどうかを特定します。

 
Top of page

サーバとオブジェクトに対するデフォルトのセキュリティ

インストール時のデフォルトを選択すると、SilverMasterデータベースはアプリケーションサーバにより初期化されます。SilverMasterへのアクセスが制限されている場合、すべてのユーザ(管理グループ所属のユーザは除く)は、管理操作へのアクセス、データベースの追加、およびディレクトリリストの参照ができなくなります。アプリケーションサーバが制限された運用環境で実行されている場合、サーバにアクセスしようとするすべてのユーザに対して認証が要求されます。

インストール時に[Restrict Access to the Novell exteNd Application Server]オプションを選択していない場合、サーバのリソースはロックされません。「アクセスに制限を設定せずに」アプリケーションサーバをインストールすると、許可を設定してアクセスをロックしない限り、不正なユーザが管理操作を実行したり、ディレクトリリストを参照したりすることを可能にしてしまいます。

For more information    サーバをロックするための他の方法については、 サーバをロックする方法を参照してください。

 
Top of section

オブジェクトに対するデフォルトのセキュリティ

オブジェクトに対するデフォルトのセキュリティは次のとおりです。

 
Top of section

グループに対するデフォルトの許可

インストールでは、SilverMasterInitにより、2つの定義済みグループ(管理者と開発者)が作成され、両グループに対する許可が設定されます。サーバはすべてのユーザに対してログインを要求します。デフォルトでは、サーバの管理操作へのアクセスは、ロックされているサーバに対するSilver Securityの管理グループのメンバーに限定されます。管理リソースへのアクセス(SMCを使用できるユーザ、セッションや統計情報の表示、またはユーザとグループの追加と削除)は、このグループのメンバーにのみ限定されます。

通常、オブジェクトの読み込みを許可するユーザと、オブジェクトへの書き込みを許可するユーザは別に設定します。実行許可には、別のグループ(エンドユーザなど)を指定することもできます。

For more information    定義済みのSilver Securityグループの詳細については、 Silver Securityのユーザおよびグループについてを参照してください。

注記:   デフォルトでは、ユーザはSilverMasterデータベースとディレクトリのトップレベルに対する読み込みアクセスを持ち、既存の配備データベースにログインしてアクセスすることができます。

For more information    詳細については、 アプリケーションオブジェクトを実行可能にするを参照してください。

 
Top of page

サーバ、クラスタ、およびアプリケーションのロック

配備や配備のプロセスでは、配備データベース、サーバ、またはクラスタ全体、あるいはこれらすべてをロックする必要が生じます。これらをロックすると、適切なアクセス許可の設定を確実にすることによって、運用や配備の環境を保護することができます。

たとえば、アプリケーションを配備する場合、配備データベースをロックして自分以外のアクセスを完全に封鎖し、その後、運用環境で必要に応じて徐々にロックを解除していきます。

注意:   インストール時に[Restrict Access to the Novell exteNd Application Server]オプションを選択していない場合、サーバのリソースはロックされません。アプリケーションのロックや配備の準備が整っていない場合でも、サーバを「ロック」する必要があります。

 
Top of section

サーバをロックする方法

サーバへのアクセスを制限するための方法を説明している節は、次のとおりです。

内容

サーバとオブジェクトに対するデフォルトのセキュリティ

アプリケーションサーバのインストールのデフォルト設定を説明

サーバまたはアプリケーションをロックするためのSMCの使用

SMCを使用してサーバまたはアプリケーションをロックする方法を説明

サーバ、アプリケーション、またはクラスタをロックするためのSilverCmdの使用

SilverCmdを使用してサーバ、アプリケーション、またはクラスタをロックする方法を説明

セキュリティチェックリスト

サーバが保護されているかどうかを確認するための手順のリストを掲載

ロボットの除外

アプリケーションの開発環境を設定する際の注意事項を説明

 
Top of section

サーバまたはアプリケーションをロックするためのSMCの使用

Procedure 特定のサーバをロックする

  1. 管理グループのメンバーに対し、「サーバ設定の読み込み」、「サーバ設定の変更」、「ディレクトリリストの読み込み」、「ユーザとグループの読み込み」、および「許可の設定」の許可をサーバまたはクラスタレベルで制限します。

  2. SilverMasterデータベースを選択し、管理グループのメンバーに対して「読み込み」、「変更」、および「許可の設定」の許可を制限し、その制限をすべての子孫に適用します。

  3. SilverMasterデータベースに、制限のない「読み込み」アクセスを設定して、ユーザが(適切な許可で)他のデータベースへアクセスしたり、サーバへログインしたりできるようにします。

    For more information    詳細については、セキュリティチェックリストの 手順9: SilverMasterデータベースの保護を参照してください。

Procedure 選択したアプリケーションをロックする

 
Top of section

サーバ、アプリケーション、またはクラスタをロックするためのSilverCmdの使用

アプリケーションサーバには、SilverCmd SetSecurityコマンドの入力ファイルである、XMLファイルのサンプルが3つ(サーバのSamples\SilverCmdディレクトリに)含まれています。これらのファイルには、SilverCmdを使用してアプリケーション、サーバ、またはクラスタをロックする方法が示されています。すべてのファイルには、使用方法が詳細に記載されています。

ファイル

ロックする対象

適用する対象と状況

secure_server_sample.xml入力ファイル

サーバ全体

サーバ(運用環境に配備するとき)

secure_application_sample.xml入力ファイル

アプリケーション

データベース(適切に保護するため、配備する直前)

secure_cluster_sample.xml入力ファイル

クラスタ

運用クラスタでsecure_server_sample.xmlを使用して各サーバを保護した後

For more information    SilverCmdの使用の詳細については、『機能ガイド』の「 SilverCmdリファレンス」を参照してください。

 
Top of page

運用サーバの保護

実装するセキュリティのレベルとタイプは、その企業の規模とニーズにより異なります。アプリケーションを配備する段階では(またはすでに配備している場合でも)、ここで説明するセキュリティチェックリストの各手順を実行して、運用環境の保護を確実にする必要があります。

インストール時のデフォルトを選択している場合、SilverMasterデータベースへのアクセスはアプリケーションサーバにより制限されます。SilverMasterへのアクセスが制限されている場合、不正なユーザが管理操作へアクセスしたり、ディレクトリリストを参照したりすることはできません。

アプリケーションの配備中に、特定のアプリケーションやディレクトリに対するアクセスをすでに許可している場合があります。アプリケーションを構築した場合、「すべての」リソースが不正なユーザによるアクセスから保護されているかどうかを確認するのは管理者の役割です。

 
Top of page

セキュリティチェックリスト

ヒント:   サイトのセキュリティをテストするには、各手順に示されているテストを実行します。

 
Top of section

手順1: ファイアウォールの設計

アプリケーションサーバが、企業で使用している「ファイアウォールで保護された状態で」インストールされていることを確認します。

For more information    詳細については、 サーバ環境設定を参照してください。

 
Top of section

手順2: 固有データベースアカウントの設定

アプリケーションサーバに、各配備データベースへの接続に使用する固有のデータベースアカウントを設定します。

For more information    詳細については、 を参照してください。

 
Top of section

手順3: SSLの設定(オプション)

SSLによる通信を使用する場合、サーバ証明書を取得してサーバにインストールします。また、SSLのみを使用する場合は、RSAまたはDSA、あるいはその両方を有効にし、HTTPを無効にする必要があります。

For more information        詳細については、 証明書の使用を参照してください。

 
Top of section

手順4: 固有ポートの設定(オプション)

セキュリティを追加している場合、ランタイムと管理のポートを別に設定します。サーバでは、HTTP、HTTP-RSA、およびHTTPS-DSAのセキュリティプロトコルがサポートされます。設定する各固有ポートでは、関連付けられていないURLと操作は除外されます。別のポートは、サーバの許可の設定と連携して使用するために設定します。

For more information    詳細については、 別個のポートのセットアップを参照してください。

 
Top of section

手順5: ユーザ、グループ、およびセキュリティプロバイダの設定

ユーザとグループの情報は、Silver Securityを使用して指定するか、外部のセキュリティシステムから取得できます。Silver Securityの場合、情報はすべてSilverMasterデータベースに保存されます。外部セキュリティの場合、情報はすべて外部システムより取得されます。いずれの場合も、ディレクトリとオブジェクトにアクセスを指定します。

For more information    詳細については、 Silver Securityのユーザおよびグループの管理を参照してください。

 
Top of section

手順6: サーバでの認証の要求

SilverMasterデータベースのすべてのリソースに対する「実行」アクセスを制限する場合、サーバレベルで「ユーザ認証の要求」を有効にする必要があります。それ以外の場合は、ユーザ認証の要求はオプションです。

ユーザがログインせずにまたは証明書を送信せずに、サーバにアクセスできる場合、ユーザは匿名です。通常は、匿名ユーザがサーバに初めてアクセスするときに、証明書またはユーザIDとパスワードのセットを要求して認証を強制することにより、匿名ユーザのアクセスを禁止することが望まれます。ログインはオブジェクト単位で要求することもできます。

Procedure 不正なユーザのアクセスをテストする

Procedure ユーザ認証を要求する

  1. SMCを起動し、左側のペインからサーバを選択します。

  2. ツールバーから[Security]アイコンを選択します。

  3. [General]を選択します。

  4. Require user authentication]チェックボックスをオンにします。

  5. Update]をクリックして、設定を保存します。

For more information    詳細については、 認証の有効化を参照してください。

 
Top of section

手順7: サーバのディレクトリリストの制限

ユーザがブラウザから特定のURLを要求すると、アプリケーションサーバはディレクトリのリストを表示します。ディレクトリエントリの表示がサイトの保護上、重要でない場合でも、これらのリストの表示を防ぐ場合があります。

不正なユーザがHTMLのディレクトリリストとHTML以外のディレクトリリストにアクセスできるかどうかを確認するには、次の2つの手順を実行します。

Procedure HTMLディレクトリリストが有効かどうかをチェックする(およびオプションで無効にする)

  1. ブラウザで、次のような、サーバのディレクトリのURLを入力します。

      http://localhost/SilverStream/Meta/
    

    HTMLディレクトリリストが「保護されている」場合、次のエラーメッセージが表示されます。

      You are not allowed to read the specified resource.
      Additional technical details about this error are available.
    

    HTMLディレクトリリストが表示される場合、次の手順に従って、ディレクトリリストへのアクセスを無効にできます。

  2. SMCを開き、ツールバーから[Security]アイコンを選択します。

  3. Disable HTML directory listing]チェックボックスをオンにします。

  4. Update]をクリックして、設定を保存します。

Procedure HTML以外のディレクトリリストが有効かどうかをチェックする(およびオプションで無効にする)

  1. ブラウザで、次のような、ブラウザからのURLを入力します。

      http://localhost/SilverStream/Meta/?access-mode=text
    

    HTML以外のディレクトリリストが「保護されている」場合、次のエラーメッセージが表示されます。

      You are not allowed to read the specified resource.
      Additional technical details about this error are available.
    

    ディレクトリのコンテンツがプレインテキストで表示される場合、次の手順に従って、ディレクトリリストへのアクセスを無効にできます。

  2. SMCを開き、ツールバーから[Security]アイコンを選択し、次に[Permissions]を選択します。

  3. 管理リソースのサーバ設定の読み込みに関する設定をチェックするでの説明に従って、「ディレクトリリストの読み込み許可」を設定します。

  4. Update]をクリックして、設定を保存します。

For more information    詳細については、 認証の有効化を参照してください。

 
Top of section

手順8: 管理リソースの保護

管理リソース」では、管理設定を表示、修正、および変更する権限(および設定にアクセスする許可)を制御します。管理リソースへの許可を制限することにより、サーバオブジェクトを保護できます。管理リソースのセキュリティを設定すると、不正なユーザが管理操作を実行することはできなくなります。

次の2種類のテストを実行して、サーバへのアクセスをチェックします。ただし、テストURLが保護されたサーバの情報にアクセスできない場合でも、管理リソースのセキュリティの設定により、適切なユーザへのアクセスが正しく制限されているかどうかをSMCを使用して確認する必要があります。

Procedure 管理リソースへの一般的なアクセスをチェックする

  1. SMCを開きます。

  2. 匿名ユーザとして、アプリケーションオブジェクトの表示と変更を試します。

    保護された」サーバには、次のメッセージが表示されます。

      Read Access Denied. 
      Additional technical details about this error are available.
    
  3. アプリケーションオブジェクトを表示したり、変更したりできる場合、 管理アクセスを保護するの手順を「直ちに」実行する必要があります。

Procedure 管理リソースのサーバ設定の読み込みに関する設定をチェックする

  1. Webサイトに次のURLを入力します。

      http://localhost/SilverStream/Administration/
    

    保護された」サーバには、次のメッセージが表示されます。

      Read Access Denied. 
      Additional technical details about this error are available.
    

    サイトに固有のサーバプロパティが(次のテキストサンプルと類似した)プレインテキストのリストで表示される場合、サイトは保護されていません

      com.sssw.loadbalancer.connect.tryInterval=30
      com.sssw.srv.server=exteNd ApplicationServer/5.0
      com.sssw.srv.http.ClientPool.minIdle=0
      com.sssw.loadbalancer.connect.sleepCount=10
      com.sssw.srv.http.ClientPool.minFree=10
    
  2. サイトの管理リソースが保護されていない場合、 管理アクセスを保護するの手順を「直ちに」実行する必要があります。

注意:   管理リソースへのアクセスが制限されていないことが判明した場合、各データベースに対するユーザ名とパスワードを直ちに変更する必要があります。この手順により、リソースへのアクセスが制限されていなかったときにこの情報にアクセスしていたユーザは、今後アクセスできなくなります。

Procedure 管理アクセスを保護する

  1. SMCを起動し、左側のペインからサーバを選択します。

  2. ツールバーから[Security]アイコンを選択します。

  3. Permissions]を選択します。

  4. [Permissions]の各タブで、[Unrestricted]チェックボックスをオフにして、アクセスを制限します。

    Unrestricted]チェックボックスをオフにすることによって「サーバ設定の読み込み」の許可を制限することが特に重要です。

  5. Simple List]または[Advanced Expression]のいずれかを選択します。

  6. 選択したタブで、ユーザとグループを選択するか、許可を割り当てるユーザを指定する式を入力します。5つのタブ( 管理サーバの許可の表を参照)のすべてで、「管理」グループのメンバーにアクセスを制限する必要があります(デフォルトでは、開発者と管理者の両方に与えられています)。

For more information    詳細については、 許可のタイプを参照してください。

 
Top of section

手順9: SilverMasterデータベースの保護

SilverMasterデータベースを保護する際には、特別な注意が必要です。ユーザやグループの情報といったリソースを保存することに加え、SilverMasterでは、サーバが使用できる他のすべての配備データベースに関するログインのリソースとリファレンスも保存されます。

アプリケーションが適切に制御されていない場合、通常SilverMasterデータベースに対して読み込みの制限を適用しません。SilverMasterデータベースのトップレベルへの読み込みアクセスを許可し、ユーザがサーバ上のすべてにアクセスできるようにする必要があります。メインディレクトリレベル以下のすべてのリソースをロックする場合もあります。

SilverMasterデータベースへの読み込みアクセスを誤って制限してしまった場合、[Server Security]パネルで、[Require user authentication]を有効にします。認証の要求を忘れた場合、-aオプションでSilverMasterInitを実行し、コマンドラインからのユーザ認証を有効にします。認証の変更を有効にするには、サーバを再起動する必要があります。

Procedure SilverMasterデータベースへのアクセスをテストする

Procedure メインディレクトリレベル以下のSilverMasterリソースをロックする

  1. 管理者としてSMCを開き、ツールバーから[Security]アイコンを選択します。

  2. Permissions]を選択します。

  3. 左側のパネルから、目的のサーバの下層に位置するSilverMasterデータベースを選択します。

  4. 読み込み」、「変更」、および「許可の設定」を管理者グループのメンバーに制限し、[Apply to this directory and all descendants]ラジオボタンをオンにします。許可の設定の詳細については、 管理サーバの許可の表を参照してください。

  5. Update]をクリックして、設定を保存します。

  6. SilverMasterデータベースを再度選択し、制限のない「読み込み」アクセスを設定します(このとき、[Apply to this directory only]が選択されていることを確認します)。

  7. Update]をクリックして、設定を保存します。

  8. SilverMasterの下層で展開されているディレクトリとサブディレクトリ(たとえば、[Deployed Objects])で、 Step 6 Step 7を繰り返します。

  9. Update]をクリックして、設定を保存します。

For more information    詳細については、 配備データベースの設定を参照してください。

 
Top of section

手順10: 配備データベースの保護

ディレクトリとオブジェクトへの許可を設定して、配備データベースへのユーザのアクセスを制限する必要があります。

許可の設定の理解   許可の設定は、ディレクトリ、すべてのサブディレクトリ、およびディレクトリ内またはサブディレクトリ内のすべてのオブジェクトに適用されます。各アプリケーションについて、オブジェクトをチェックし、階層の各ディレクトリベルで読み込み、書き込み、デフォルトの実行、および許可の設定のアクセスを許可するユーザを指定します。階層内の各オブジェクトまたはリソースを保護する必要があります。

制限を設定しない限り、すべてのユーザが「オブジェクト」に対する完全なアクセス許可を持つことになります。「ディレクトリ」に特定のアクセスを指定すると、それがそのディレクトリ内で新しく作成されるオブジェクトに対するデフォルトのアクセスになります。SMCで[Permissions]パネルを選択している場合、ディレクトリを展開してコンテンツを表示することができます(これは、そのディレクトリに対する読み込み許可を持っていることが前提です)。許可のタブの下部にある[Apply to this directory and all descendants]ラジオボタンをオンにすると、複数のディレクトリの保護を設定できます。必要に応じて、選択したオブジェクトに対して[Require login for access]チェックボックスを有効にできます。

注記:   アプリケーションオブジェクトにEJBが含まれている場合、オブジェクトディレクトリのペアレントディレクトリ(およびすべての子孫)に対する読み込みアクセスが制限されていてはなりません。これは、アプリケーションによって読み込まれる必要のあるクラスがオブジェクトディレクトリに含まれているためです。

Procedure データベースオブジェクトへのアクセスをテストする(およびオプションで保護する)

  1. 管理者またはロックスミス権限を持つユーザとしてSMCにログインします。

  2. ツールバーから[Security]アイコンを選択します。

  3. Permissions]を選択します。

  4. 左側のパネルから、ディレクトリ構造のペアレントレベルの下層に保存されている、制限する必要があると思われるオブジェクトを選択します。

  5. 各タブをクリックし、このオブジェクトに対するアクセスを持つユーザを確認します。許可の制限が正しく設定されていない場合、次の手順を実行します。

  6. 各タブをクリックし、[Simple List]または[Advanced Expression]のいずれかを選択します。

  7. 選択したタブで、ユーザとグループを選択するか、許可を割り当てるユーザを指定する式を入力します。

  8. 管理者」グループに属するユーザがこのオブジェクトに対する「許可の設定」のアクセスを持っていることを確認します。

  9. Update]をクリックして、設定を保存します。

For more information    詳細については、 データベースオブジェクトの許可および アプリケーションオブジェクトを実行可能にするを参照してください。

 
Top of section

手順11: J2EEのセキュリティの役割のマップ

J2EEアーカイブを配置する際、配備記述子に指定されたセキュリティの役割を運用環境のセキュリティプリンシパルにマップします。たとえば、beanの開発者が3種類のセキュリティの役割を指定している場合、これらの同じ役割がターゲットサーバ上のセキュリティグループまたは個々のユーザにマップされる必要があります。(管理を容易にするため)役割をグループにマップする場合、グループのメンバーシップを確認する必要があります。

 
Top of page

ロボットの除外

ロボットは、検索エンジンやWebクロウラのような、リンクされたページを再帰的に取得することによってWebサイト上のたくさんのページを移動できるプログラムです。アプリケーションサーバでは、一般的に使用されている「ロボット排除プロトコル」がサポートされます。これにより、排除プロトコルに準拠したロボットがWebサイト内のどのファイルとディレクトリにアクセスできるかを指定できます。

注記:   ロボット排除プロトコルは完全に任意です。ロボットがプロトコルに準拠するかどうかは確実ではありませんが、ほとんどの場合、準拠しています。

この排除プロトコルでは、ロボットのアクセスポリシーはrobots.txtというファイルに指定されます。robots.txtファイルはアプリケーションサーバに付属しており、ロボットにサーバのルートより下層に進まないように指示します(つまり、排除プロトコルに準拠するすべてのロボットへのアクセスはすべて拒否されます)。したがってデフォルトでは、プロトコルに準拠するロボットによるWebサイトへのアクセスはすべて拒否されます。

robots.txtを変更して、ロボットに許可するアクセスを指定することができます。たとえば、あるディレクトリのみに対する検索エンジン型のアクセスを許可する場合などがあります。

Procedure ロボットのアクセスを変更する

    First Previous Next Last 管理ガイド  05/21/03 10:02:24 

Copyright © 1997, 1998, 1999, 2000, 2001, 2002, 2003 SilverStream Software, LLC, a wholly owned subsidiary of Novell, Inc. All rights reserved.