第10章

セキュリティの使用

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

 
Top of page

認証とアクセス制御

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

 
Top of section

認証とアクセス制御

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

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

アプリケーションサーバでは、JavaセキュリティのACL (アクセス制御リスト)のAPIをサポートしており、開発者はデータおよび展開済みアプリケーションへのアクセスをプログラムベースで制御できます。このJavaセキュリティは、SMCおよびアプリケーションサーバのサーバ管理APIによって提供されるセキュリティと共に動作します。

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

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

許可のタイプの説明に従って、許可を設定することによってアクセスを指定します。

 
Top of page

許可のタイプ

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

 
Top of section

管理サーバの許可

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

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

次の表に一覧表示されているそれぞれの許可タブは、制限を維持する必要のある管理リソースの内容を示します。

許可

説明

サーバ環境設定の読み込み

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

サーバ環境設定の変更

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

ディレクトリリストの読み込み

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

ユーザとグループの読み込み

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

許可の設定

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

 
Top of section

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

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

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

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

許可

説明

読み込み

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

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

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

変更

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

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

実行

(データベースおよびディレクトリの場合、[デフォルトの実行])

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

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

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

許可の設定

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

 
Top of section

アクセス権限の使用

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

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

 
Top of section

アクセスの変更

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

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

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

  1. SMCを開始します。

  2. ツールバーから[セキュリティ]アイコンを選択します。

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

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

    PermissionsTab

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

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

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

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

説明

選択している対象

このディレクトリだけに適用する

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

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

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

このディレクトリ以下全体に適用する

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

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

アクセス時にログインを要求する

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

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

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

 
Top of section

許可の制限

フォームの各タブは、選択したディレクトリまたはオブジェクトに適用する許可のタイプを示していますアクセスを制限するには、タブを選択し、[無制限]をオフにしてから、[簡潔なリスト]または[詳細な式]のいずれかを選択します。

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

簡潔なリストの使用

簡潔なリスト]では、セキュリティプロバイダに認知されており、プロバイダ設定で定義されたアクセス許可を持つユーザおよびグループを指定できます。

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

  1. ツールバーで、[セキュリティ]アイコンを選択し、次に[許可]パネルを選択します。

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

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

  4. [簡潔なリスト]ボタンを有効にするには、[無制限]がオンになっている場合、オフにします。

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

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

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

    すべてのユーザおよびグループを削除するには、[<<]を選択します。

詳細な式の使用

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

Procedure 詳細な式を使用する

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

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

  3. 無制限]がオンの場合は、オフにします。次に[詳細な式]を選択します。

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

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

UUIDのサポート

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

UUID式は、式ビルダに直接入力するか、式ビルダの[関数]パネルにある[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. 管理者またはLocksmith権限を持つユーザとしてSMCにログインします。

  2. ツールバーから[セキュリティ]アイコンを選択します。

  3. 許可]を選択します。

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

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

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

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

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

    重要:   前のすべてのタブで、[このディレクトリ以下全体に適用する]チェックボックスをオンにします。

  6. 更新]をクリックします。

  7. 展開オブジェクト]を選択します。

  8. 読み込み]許可のタブで、[無制限]チェックボックスをオンにします。ただし、[このディレクトリ以下全体に適用する]をオンにはしないでください。

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

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

  11. 個々のオブジェクトを確認し、[アクセス時にログインを要求する]オプションを有効にするかどうかを決定します。

 
Top of page

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

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

インストール時に[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

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

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

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

警告:    インストール時に[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. ツールバーから[セキュリティ]アイコンを選択します。

  3. 一般]を選択します。

  4. ユーザの認証を必須にする]チェックボックスをオンにします。

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

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

 
Top of section

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

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

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

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

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

      http://localhost/SilverStream/Meta/
    

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

      指定されたリソースの読み込みは許可されていません。
      このエラーに関する追加の詳細情報があります。
    

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

  2. SMCを開き、ツールバーから[セキュリティ]アイコンを選択します。

  3. HTMLディレクトリのリスト表示を無効にする]チェックボックスをオンにします。

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

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

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

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

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

      指定されたリソースの読み込みは許可されていません。
      このエラーに関する追加の詳細情報があります。
    

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

  2. SMCを開き、ツールバーから[セキュリティ]アイコンを選択し、次に[許可]を選択します。

  3. 管理リソースのサーバ設定の読み込みに関する設定を確認するでの説明に従って、[ディレクトリリストの読み込み]許可を設定し、アクセスを制限します。

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

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

 
Top of section

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

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

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

Procedure 管理リソースへの一般的なアクセスを確認する

  1. SMCを開きます。

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

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

      読み込みアクセスが拒否されました。 
      このエラーに関する追加の詳細情報があります。
    
  3. アプリケーションオブジェクトを表示したり、変更したりできる場合、管理アクセスを保護するの手順を「直ちに」実行する必要があります。

Procedure 管理リソースのサーバ設定の読み込みに関する設定を確認する

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

      http://localhost/SilverStream/Administration/
    

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

      読み込みアクセスが拒否されました。 
      このエラーに関する追加の詳細情報があります。
    

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

      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. ツールバーから[セキュリティ]アイコンを選択します。

  3. 許可]を選択します。

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

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

  5. 簡潔なリスト]または[詳細な式]のいずれかを選択します。

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

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

 
Top of section

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

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

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

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

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

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

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

  2. 許可]を選択します。

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

  4. 読み込み]、[変更]、および[許可の設定]を管理者グループのメンバーに制限し、[このディレクトリ以下全体に適用する]ラジオボタンをオンにします。許可の設定の詳細については、管理サーバの許可の表を参照してください。

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

  6. SilverMasterデータベースを再度選択し、無制限の[読み込み]アクセスを設定します(このとき、[このディレクトリだけに適用する]が選択されていることを確認します)。

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

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

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

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

 
Top of section

手順10:展開データベースの保護

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

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

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

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

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

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

  2. ツールバーから[セキュリティ]アイコンを選択します。

  3. 許可]を選択します。

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

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

  6. 各タブをクリックし、[簡潔なリスト]または[詳細な式]のいずれかを選択します。

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

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

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

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 ロボットのアクセスを変更する



Copyright © 2004 Novell, Inc. All rights reserved. Copyright © 1997, 1998, 1999, 2000, 2001, 2002, 2003 SilverStream Software, LLC. All rights reserved.  more ...