目次
はじめに
第 1 章 Netshare の使用
第 2 章 Web サーバ パブリッシングについて
第 3 章 インストールと設定
第 4 章 Web Publisher クイックスタート
第 5 章 サービスとメニュー
第 6 章 検索について
第 7 章 アクセス コントロール
戻る 目次


第 7 章 アクセス コントロール

Web Publisher のドキュメントやディレクトリへのアクセス、およびそれらに対するユーザやユーザ グループ別の操作は、制限することができます。ファイルやフォルダへのアクセスは、完全に禁止、または特定の認証ユーザのみにアクセスを許可することができます。

ノート
アクセス コントロールの表示や変更は、自分のファイルまたはフォルダに対してのみ行うことができます。オーナがいないファイルまたはフォルダへのアクセス許可を定義する場合は、Web Publisher サービス ページから [プロパティ] フォームを使用して自分にオーナシップを割り当てます。詳細は、「ファイルとフォルダのオーナシップ」を参照してください。

アクセス コントロールは、制限を階層化したルールに基づいて行われ、このルールを「アクセス コントロール リスト (ACL)」と呼びます。アクセス コントロールの階層は、URL パスまたはファイル パスに基づいており、階層の最上部から下位のディレクトリやサブ ディレクトリ、最終的に各ファイルまで ACL ルールが適用されます。アクセスが要求されると、それ以上のアクセスを制限するルールが検出されるまで、またはそのリソースにある最後のルールに到達するまで、サーバが各ルールを調べます。ルールが検出された場合、ユーザは、自分の登録ユーザ名とパスワードを入力するよう求められます。入力した ID 情報が受け入れられると、そのユーザにアクセス許可が与えられます。

この章では、以下の項目について説明します。


ユーザ認証
ユーザの識別は、ダイアログ ボックスにユーザ名とパスワードを入力、または Netscape Navigator や Netscape Communicator などの Web ブラウザにインストールされているクライアント証明書を使用して行います。

証明書を使用したユーザ認証がサーバで処理されない場合は、ユーザが、サーバにあるユーザとグループのデータベースで定義されている可能性があります。このデータベースは、Web サーバ上、またはリモート コンピュータ (Netscape Directory Server などを実行しているコンピュータ) の LDAP サーバ上に保存されているファイルです。

ユーザ/グループ認証が設定されているファイルまたはディレクトリにアクセスした場合、ユーザ名とパスワードの入力を求めるダイアログ ボックスが Web ブラウザに表示されす。図 7.1 は、iPlanet Web Server のデフォルトの認証ダイアログ ボックスです。

図 7.1 認証ダイアログ ボックス

情報の入力後、要求したファイルやディレクトリ リストへのアクセスが許可または拒否されます。ユーザがユーザとグループのデータベースに記録されていないためサーバがユーザを認識しない場合、またはアクセス コントロール ルールでそのユーザによるアクセスが拒否されている場合は、アクセスが拒否されます。


Web Publisher アクセス許可
Web Publisher には、有効なサーバ ユーザ一般に対して使用が制限されている操作が多くありますが、Agent サービス用のルールなど、ACL ルールの多くは、サーバ上で有効な (サーバのユーザ データベースで定義されている) ユーザが使用できます。

Web Publisher の起動直後に、ユーザ名認証ダイアログ ボックスが表示されます。これを空白にしたまま匿名ユーザとして起動することも可能ですが、その場合は有効ユーザのみに制限される操作の実行時にユーザ名とパスワードを入力する必要があり、認証ユーザのみが操作を続行できます。


ファイルとフォルダのオーナシップ
Web Publisher のファイルおよびフォルダは、個々のユーザによる所有が可能で、オーナのみがそのアクセス コントロールの定義や、オーナシップの再割り当てを行うことができます。ファイルやフォルダにオーナが存在しない場合、そのアクセス権を変更することはできません。「アクセス設定の例」および「ユーザとグループを設定する」で説明されているように、オーナシップが再割り当てされている場合でも、ファイルやフォルダの現在のオーナであるユーザに対して特定の操作を制限するアクセス コントロールを定義できます。

オーナシップの割り当ては、サーバ管理者が一括して行う場合、ユーザが Web Publisher のプロパティ ページから個々のファイルやフォルダに対して行う場合、特定のアクションを実行した結果として、ファイルやフォルダのオーナシップがユーザに自動的に割り当てられる場合などがあります。

ノート
ロックされているファイルにはロック オーナが存在しますが、これは、ファイルのオーナとは異なり、ファイルに対するロックのみを所有することになります。これらのロックは、ロック オーナ (およびサーバ管理者) のみがアンロックすることができます。

オーナシップを手動で割り当てる
ファイルやフォルダのオーナシップは、[Web Publisher サービス] フォームの一部であるプロパティ ページを使用して、手動で割り当てることができます。[オーナ] プロパティを変更できるのは、以下の場合のみです。

前者 (ユーザがファイルまたはフォルダのオーナ) の場合は、ほかのユーザへのオーナシップの再割り当てが可能です。ほかのユーザへのオーナシップ譲渡後は、オーナとしての権利がなくなり、それ以降は、新しいオーナのみが [オーナ] フィールドやアクセス コントロールの変更を行うことができます。

後者 (オーナが未設定) の場合は、ユーザ自身またはほかのユーザをオーナとして設定できます。前者の場合と同様に、ほかのユーザへのオーナシップ設定後は、[オーナ] フィールドやアクセス コントロールを変更する権利がなくなります。

自動割り当て
オーナが未設定のファイルやフォルダに特定の操作を行った場合、そのユーザは自動的にオーナとして設定されますが、ファイルやフォルダに既にオーナが存在する場合、オーナシップは割り当てされません。また、フォルダに対して以下のいずれかの操作を実行した場合、ユーザはそのフォルダ内の全ファイルのオーナとして設定されます。

オーナが存在しないファイルやフォルダにオーナシップを割り当てる Web Pub の操作。


アクセス設定の例
所有するファイルやフォルダには、アクセス制限を設けることができます。このセクションでは、ファイルのオーナのみにアクセスを制限する方法を、例を使用して説明します。この例では、デフォルト ドキュメント ディレクトリの「index.html」というファイルを使用しますが、ほかのファイルやフォルダのアクセス コントロール ルールを定義する場合も、同じ方法が使用できます。

  1. Web Publisher のアプレット ウインドウで「index.html」ファイルを選択します。
  2. この時点では、以下の 3 つの方法で Web Publisher のアクセス コントロール インタフェースを表示できます。

  1. [新しい行の作成] をクリックして新しいデフォルト ルールを挿入し、これを変更せずにそのまま残します。デフォルトのルールは、全ユーザに対してすべての操作を拒否するものです。この設定後、次のステップで特定のユーザおよびグループに対してアクセス権を設定します。
  2. [新しい行の作成] を再度クリックし、表の一番下の行に新しいデフォルト ルールをもう 1 つ挿入します。必要に応じて、左のカラムにある上下の矢印を使用してルールを移動します。
  3.  

    図 7.2 ファイルのオーナ用 ACL のサンプル

  4. このファイルへのアクセスを許可する場合は、[アクション] カラムにある [拒否] リンクをクリックします。下のフレームに [Allow/Deny] フォームが表示されます。詳細は、「アクションを設定する」を参照してください。
  5. [許可] をクリック、次に [更新] をクリックし、新しいデータが入った上のフレームに戻ります。
  6. 特定のユーザに対してアクセスを許可する場合は、[ユーザ/グループ] カラムにある [Anyone] リンクをクリックします。下のフレームに [ユーザ/グループ] フォームが表示されます。デフォルトでは認証が設定されていないため、全員がリソースにアクセスできます。詳細は、「ユーザとグループを設定する」を参照してください。
  7. 特定のコンピュータまたはネットワークのみにアクセスを制限する場合は、[From Host] カラムにある [Anyplace] リンクをクリックします。この設定オプションの使用方法についての詳細は、「ホスト名と IP アドレスを指定する」を参照してください。
  8. 特定の操作を制限する場合は、[Rights] カラムにある [All] リンクをクリックします。下のフレームに [アクセス権] フォームが表示されます。デフォルトでは、ユーザはすべての操作が可能です。詳細は、「アクセス権を設定する」を参照してください。
  9. 新しい行を 1 行追加して今度はオーナに書込みと削除のアクセスを許可し、ステップ 4 〜 6 を実行します。
  10. 通常は、以上でファイルの ACL 定義に必要な作業が完了するため、[送信] をクリックして「index.html」ファイルに対してこの ACL を設定します。この他の使用可能なオプションについての詳細は「追加オプション」を参照してください。

アクセス コントロールの詳細

Web Publisher では、アクセス コントロール インタフェースを使用することにより、広い範囲にわたるアクセス定義を柔軟に行うことができます。インタフェースは 2 つのフレームに分割され、下のフレームに表示される各種フォームの新規データまたは変更データにより、上のフレームに表示される ACL ルールが更新されます。また、上のフレームには、アクセス コントロールのカスタマイズに使用するアイコンやチェックボックスが表示されます。

アクションを設定する
要求がアクセス コントロール ルールと一致した場合にサーバが実行するアクションを指定できます。

ユーザとグループを設定する
ファイルやフォルダへのアクセス制限は、アクセスを要求したユーザ別に設定できます。ユーザとグループ認証を使用している場合は、アクセス コントロール ルールで指定されているリソースにアクセスする際に、ユーザ名とパスワードが必要になります。Web サーバでは、ユーザとグループのリストに基づいて、リソースを要求しているユーザのアクセス権が決定されます。この情報は、Web サーバ コンピュータ上のデータベース、または Netscape Directory Server などの LDAP サーバに保存されています。

アクセスの許可や拒否は、データベース中の全ユーザに対して設定することができます。また、ワイルドカード パターンやユーザ/グループのリストを使用することにより、特定のユーザに対するアクセスの許可または拒否を設定できます。その際、ユーザの実際の名前ではなく、サーバで定義されているユーザ名を使用します。たとえば、「JSmith」のみやファイルのオーナのみにアクセス許可を与える、または「s*」というワイルドカード パターンを使用して「s」で始まる名前の全ユーザにアクセス許可を与えることなどが可能です。

[ユーザ/グループ] リンクをクリックすると、下のフレームにフォームが表示されます。以下は、このフォームで使用できるオプションの一覧です。

アクセス権を設定する
Web Publisher のファイルおよびディレクトリには、アクセス権を設定できます。これにより、全アクセス権の許可および拒否に加え、部分的なアクセス権を許可または拒否するルールも指定できます。たとえば、ファイルの読み込みのみのアクセス権を与えた場合、ユーザはファイルを参照できても編集は行うことができません。

アクセス コントロール ルールを作成する際、デフォルトでは全アクセス権が設定されています。アクセス権を変更する場合は、上のフレームにある [Rights] リンクをクリックし、特定のルールに対して設定するアクセス権のチェックボックスをオンまたはオフにします。次のリストでは、設定できるアクセス権について説明します。


アクセス コントロール ウィンドウ

ACL ウインドウには、各ルールの再構成や削除を容易に行うための、特殊なグラフィック要素があります。また、リソースへのアクセスを拒否されたユーザに対して表示するメッセージを再定義するためのチェックボックスも用意されています。

ルールを上下に移動する
各ルールは、サーバが処理する順番で適用されます。ルールの定義後は、各ルールの左側にある矢印を使用して、そのリソースに対するルールの順序を並べ替えることができます。これは、絶対ルールを一時的に定義し、そのあとのルールへのアクセスをブロックする場合に、特に便利です。ルールをシーケンス内で上に移動することにより、ルールを削除して再作成する必要がなくなります。このようなルールを絶対ルールの下に配置することにより、サーバによるチェックが行われません。

ACL ルールを削除する
「Access control is on」のオプションをオフにした場合、ACL ファイルにあるレコードを消去するかどうかを確認するプロンプトが表示されます。[OK] をクリックすると、そのリソースに対するアクセス コントロール ルールがすべて削除されます。

アクセス コントロール ルールをすべて一度に削除しない場合は、各行末のごみ箱アイコンをクリックし、ルールを 1 つずつ削除します。

アクセスを拒否されたときの対応
You can vary the message for each file or folder. By default, the user is sent a message that says the file wasn't found (the HTTP error message 404 Not Found is also sent). In general, do not change this setting without consulting with your server administrator.ユーザがアクセスを拒否された時に表示するメッセージを選択できます。各ファイルまたはフォルダに対し、それぞれ異なるメッセージを表示できます。デフォルトでは、ファイルが検出されないというメッセージ (および「404 Not Found」という HTTP エラー メッセージ) がユーザに送信されます。この設定の変更は通常、サーバ管理者との相談の上で行ってください。

特定のリソースへのアクセスが拒否された場合に送信するメッセージを変更するには、以下の操作を行います。

  1. 上のフレームにある [Response when denied] リンクをクリックします。[Access Deny Response] フォームとデフォルトのオプション セットが下のフレームに表示されます。
  2. [Respond with the following url] というラベルの付いたラジオ ボタンをクリックします。
  3. アクセス拒否時にユーザに送信する、サーバのドキュメント ルートにあるファイル (テキストまたは HTML) の URL を、テキスト フィールドに入力します。ほかのファイルへの参照 (スタイル シートなど) やイメージは送信されないため、このファイルにこれらが含まれていないことを確認します。
  4. [更新] をクリックし、上のフォームに戻ります。
  5. [送信] をクリックし、この応答をアクセス コントロール ルールの一部として設定します。
ノート
応答ファイルを受け取るユーザ全員には、そのファイルへのアクセス権があることを確認します。応答ファイルへのアクセス コントロールを所有し、ほかのユーザがオリジナルのリソースとその応答ファイルの両方へのアクセスを拒否された場合は、デフォルトの拒否応答が送信されます。


追加オプション

多くのユーザは、このセクションで説明する追加の ACL 機能を使用する必要はありませんが、特定のファイルやフォルダに関して任意レベルの制御を行うためにこうした機能が必要となる場合があります。たとえば、人事部門の人事ディレクトリや企業の CEO が所有する機密ファイルへのアクセスに対して、特殊な制限を設ける場合などがあります。

Continue オプションを使用する
デフォルト設定では、アクセス コントロール ルールの [Continue] オプションがオンに設定されています。これにより、下位レベルのファイルおよびフォルダに、すでに定義されている ACL ルールと矛盾する個々の ACL ルールを設定できます。たとえば、すでにチェックされた ACL ルールでディレクトリにある全ファイルの読み込みを全員に許可すると同時に、同じディレクトリにある自分のファイルに対して、自分以外の全ユーザによるアクセスを拒否するルールを定義することが可能です。

また、フォルダとは異なるアクセス権をフォルダ中のファイルに対して定義する ACL ルールの設定を禁止する ACL ルールを、フォルダに対して設定できます。これを「絶対」制御と呼び、[Continue] チェック ボックスをオフにすることによってこのオプションを設定します。サーバがリソースに対するアクセス コントロール ルールを評価する際、[Continue] がオフになっているルールが検出されると、その時点でルールの評価が終了します。

たとえば、次のファイルへのアクセス要求があったとします。

http://www.mozilla.com/docs/Project-X/presentation.html

サーバは、このオブジェクトに影響するすべての ACL ルールをチェックします。最初にサーバの全般的な許可がチェックされ、「/docs」ディレクトリの許可、次に「/Project-X」サブディレクトリの許可がチェックされます。そして、要求された URL (この場合は「presentation.html」) の ACL、または [Continue] オプションがオフになっている ACL ルールに到達するまで、ACL ルールのチェックが続きます。

絶対ルールに到達した場合、その時点で定義されている ACL が唯一の有効なアクセス コントロール ルールとなります。したがって、ドキュメント ツリーのこれより下位レベルにあるファイルやフォルダに対して、より条件の緩いルールは定義できません。

ホスト名と IP アドレスを指定する
このオプションはあまり必要になりませんが、ファイルやフォルダへのアクセスを、ユーザが使用しているコンピュータによって制限することができます。複数のコンピュータやネットワーク全体を指定する場合は、ワイルドカード パターンを使用できます。この機能を使用する場合は、ネットワーク上で DNS が起動されており、使用中のコンピュータがこれを使用するように設定されている必要があります。

ノート: 特定のコンピュータに、複数のユーザがアクセスすることもあるため、ユーザ/グループ認証を併用したホスト IP 認証がもっとも効果的です。両方の認証方法を使用している場合、エンド ユーザは、アクセス時にユーザ名とパスワードの両方を入力する必要があります。

この制限を指定するには、コンピュータのホスト名または IP アドレスに一致するワイルドカード パターンを使用します。たとえば、特定のドメインにある全コンピュータのアクセスを許可または拒否するには、「*.netscape.com」のように、そのドメインの全ホストに一致するワイルドカード パターンを入力します。

ホスト名または IP アドレスを指定するには、以下の操作を行います。

  1. [ACL] フォーム上部にある [From Host] カラムの [Anyplace] リンクをクリックします。下のフレームに、[From Host] フォームが表示されます。
  2. [Only From] オプションのフィールドに、ワイルドカード パターン、カンマで区切ったホスト名、IP アドレスのリストのいずれかを入力します。
  3. [更新] をクリックし、変更後のデータが入力された [ACL] フォームの上の部分に戻ります。
  4. [送信] をクリックし、アクセス コントロール ルールを変更します。
ユーザの IP アドレスが変更された場合に、このリストを更新する必要がないため、ホスト名による制限のほうが IP アドレスによる制限よりも柔軟性があります。一方、接続しているクライアントの DNS 照合に失敗した場合は、ホスト名による制限が使用できないため、IP アドレスによる制限の方が確実ということになります。

ホスト名および IP アドレスの指定には、ワイルドカード パターンまたはカンマで区切ったリストを使用します。ここで使用できるワイルドカードは、「*」のみに限られます。

IP アドレスの場合、「*」は、アドレスの 1 バイトを表します。つまり、「198.95.251.*」は使用できますが、「198.95.251.3*」は使用できません。また、IP アドレスに「*」を使用する場合は、これを一番右に置く必要があります。たとえば「198.*」は使用できますが、「198.*.251.30」は使用できません。

ホスト名の場合、「*」は、名前の 1 コンポーネント全体を表します。つまり、「*.netscape.com」は使用できますが、「*sers.netscape.com」は使用できません。また、ホスト名に「*」を使用する場合は、これを一番左に置く必要があります。たとえば「*.netscape.com」は使用できますが、「users.*.com」は使用できません。


(c) Copyright (c) 2000 Sun Microsystems, Inc. (一部) Copyright (c) 2000 Netscape Communications Corp. All rights reserved.