保護


ACL に受け入れ可能なエントリ
アクセス制御リスト (ACL) に作成する任意のエントリの詳細についてはこのトピックを参照してください。

ACL に受け入れ可能なエントリは、次のとおりです。


ACL エントリの長さは、それぞれ最大 255 文字です。

階層名を使用して ACL に名前を追加すると、セキュリティを強化できます。次に例を示します。

Sandra E Smith/West/Renovations/US

Randi Bowker/Sales/FactoryCo

ワイルドカードを使用するエントリ

データベースのアクセスに規則性を持たせるには、ACL でワイルドカード文字 (*) のある階層名を入力します。ワイルドカードは、共通名や組織単位の構成要素に使用できます。

ACL に特定のユーザー名やグループ名がまだ存在せず、階層名に含まれるコンポーネントにワイルドカードが含まれているユーザーやサーバーには、一致する各ワイルドカードエントリによって指定される最も高いレベルのアクセス権が与えられます。

ワイルドカードを使用した ACL エントリの例を次に示します。

*/Illustration/Production/Renovations/US

このエントリにより、次のユーザーには、指定したアクセスレベルが与えられます。

Mary Tsen/Illustration/Production/Renovations/US

Michael Bowling/Illustration/Production/Renovations/US

次のユーザーには、指定したアクセスレベルが与えられません。

Sandy Braun/Documentation/Production/Renovations/US

Alan Nelson/Renovations/US

ワイルドカードは、ACL エントリの左端の部分のみで使用できます。次は無効な指定の例です。

*/Illustration/*/Renovations/US

次のようなユーザーを表すものとして、上のエントリを使用することはできません。

Michael Bowling/Illustration/West/Renovations/US

Karen Richards/Illustration/East/Renovations/US

ACL エントリでワイルドカードを使用する場合は、ユーザーの種類を [指定なし]、[混在グループ]、[ユーザーグループ] のいずれかにしてください。

ユーザー名

ACL には、認証された IBM Notes ユーザー ID を持つ任意のユーザー名や、名前とパスワードまたは SSL クライアント認証を使用して認証するインターネットユーザー名を追加できます。


サーバー名

ACL にサーバー名を追加すると、レプリカが行うデータベースの変更を制御できます。セキュリティを強化するために、追加するサーバーの名前がデータベースのあるサーバーと階層上別の組織に属するかどうかには関係なく、サーバーの階層付きの完全な名前 (Server1/Sales/Renovations など) を入力します。

グループ名

同じアクセス権が必要な複数のユーザーやサーバーがある場合は、ACL にグループ名 (Training など) を追加します。ユーザーをグループに登録する場合、1 次階層名で登録する必要があります。グループのメンバーとしてワイルドカードを使用するエントリを指定することもできます。ACL にグループ名を追加する前に、IBM Domino ディレクトリ内、またはディレクトリアシスタントデータベースでグループ認証用に設定されている 2 次 Domino ディレクトリか外部 LDAP ディレクトリ内のいずれかに、グループをあらかじめ作成しておく必要があります。

注: ACL で使用するすべてのグループ名は、グループの作成用に定められたガイドラインに従っていることを確認してください。間違った名前を使用すると、アクセスに支障をきたすことがあります。

ヒント: データベース管理者には、グループ名ではなく個人名を使用します。こうすると、ユーザーが [作成] -> [その他] -> [データベース管理者へのメール] を選んだときに、相手が誰か分かります。

グループを使用すると、データベース ACL を管理しやすくなります。ACL でグループを使用することには、次の利点があります。


ヒント: また、グループを使用すると、特定のユーザーに [管理者] のアクセス権や [設計者] アクセス権を与えずに、データベースへのアクセスを制御させることができます。例えば、必要なアクセスレベルそれぞれに対応するグループを Domino ディレクトリに作成し、ACL にグループを追加して、特定のユーザーにグループの所有を許可します。それらのユーザーは、グループを変更することはできますが、データベースの設計を変更することはできません。

[Terminations] グループ

社員が退職するときは、Domino ディレクトリにあるすべてのグループからその社員の名前を削除し、サーバーへのアクセスを拒否するために使用する [アクセス不可グループのみ] グループに追加します。サーバー文書内の [アクセス不可グループ] には、Domino サーバーへのアクセス権を失った IBM Notes ユーザーとグループの名前が格納されます。また、組織内のすべてのデータベースの ACL から退職した社員の名前が削除されていることを確認する必要もあります。Domino ディレクトリからユーザーを削除する際には、[削除済みユーザーをアクセス禁止グループに追加] オプションを選択することができます (このようなグループが作成済みの場合)。(そのようなグループが存在しない場合は、「アクセス禁止グループが未選択または有効ではありません」とダイアログボックスに表示されます。)

LDAP ユーザー

2 次 LDAP ディレクトリを使用してインターネットユーザーを認証できます。そして、これらのインターネットユーザー名をデータベースの ACL に追加し、ユーザーのデータベースへのアクセスを制御できます。

インターネットユーザー名を含む 2 次 LDAP ディレクトリを使用してグループを作成し、Notes データベースの ACL エントリとしてそのグループを追加することもできます。例えば、インターネットユーザーが IBM Domino Web サーバー上のデータベースにアクセスを試みたとします。Web サーバーがそのユーザーを認証し、ACL に「Web」という名前のグループがあると、1 次 Domino ディレクトリ内の検索に加えて外部の LDAP ディレクトリにある「Web」グループ内のインターネットユーザー名もサーバーによって検索できます。このケースが正しく処理されるためには、Web サーバー上のディレクトリアシスタントデータベースに、LDAP ディレクトリ用の LDAP ディレクトリアシスタント文書が格納されていて、文書の [グループの追加] オプションで [はい] が選択されていなければなりません。この機能は、データベース ACL のチェックで、外部 LDAP ディレクトリグループに格納されている IBM Notes ユーザー名を検索する場合にも利用できます。

LDAP ディレクトリユーザー名やグループ名をデータベース ACL に追加するとき、名前の形式には LDAP 形式を使用し、区切り文字にはカンマ (,) ではなくスラッシュ (/) を使用してください。例えば LDAP ディレクトリのユーザー名が次のような場合は、

uid=Sandra Smith,o=Renovations,c=US

データベース ACL には次のように入力します。

uid=Sandra Smith/o=Renovations/c=US

LDAP ディレクトリの非階層グループ名を入力するには、属性名ではなく、属性値だけを入力します。例えば、LDAP グループの非階層名が次のような場合は、

cn=managers

ACL エントリは次のようになります。

managers

グループの階層名を入力するには、LDAP の属性名を ACL エントリに含めます。例えば、グループの階層名が次のような場合は、

cn=managers,o=acme

ACL エントリは次のようになります。

cn=managers/o=acme

ただし、指定する属性名が IBM Notes で使用している属性名 (cn、ou、o、c) と完全に同じ場合は、ACL では属性名が表示されません。

例えば、次のような名前を ACL に追加すると、

cn=Sandra Smith/ou=West/o=Renovations/c=US

属性名が Notes で使用している属性名と完全に同じであるため、ACL には次のように表示されます。

Sandra Smith/West/Renovations/US

LDAP ユーザーで受け入れ可能な ACL エントリ

表 1. LDAP ユーザーで受け入れ可能な ACL エントリ
LDAP DNACL エントリ
cn=Scott Davidson+ id=1234, ou=Sales,o=Renovationscn=Scott Davidson+id=1234/ou=Sales/o=Renovations
cn=Scott Davidson,o=Renovations¥, Inccn=Scott Davidson/o=Renovations, Inc

注: LDAP 名内のバックスラッシュの後に別の文字がある場合は、その名前をデータベース ACL 内で指定する際、バックスラッシュを省いてください。

uid=smd12345,dc=Renovations,dc=Comuid=smd12345/dc=Renovations/dc=Com
uid=Sandra Smith,o=Renovations,c=USuid=Sandra Smith/o=Renovations/c=US

匿名

最初に認証を受けずにサーバーにアクセスするユーザーやサーバーは、サーバーでは [Anonymous] という名前で処理されます。サーバーで認証されていないインターネットユーザーや IBM Notes ユーザーには、データベースに対する [Anonymous] のアクセス権が与えられます。

一般的に、[Anonymous] のアクセス権は、一般公開されるサーバー上のデータベースで使用されます。匿名ユーザーや匿名サーバーからデータベースへのアクセスのレベルを制御するには、アクセス制御リストに [Anonymous] という名前を入力し、適切なレベルのアクセス権を割り当てます。通常、[Anonymous] のユーザーには、データベースに対して [読者] のアクセス権を与えます。

すべてのデータベーステンプレート (.NTF) ファイルに対する [Anonymous] の ACL エントリは、デフォルトでは [読者] のアクセスレベルを持ちます。そのため、ユーザーやサーバーは、テンプレートに基づいて .NSF ファイルの作成や更新を実行する際、そのテンプレートから読み込みを正常に実行できます。

データベースファイル (.NSF ) ファイルに対する [Anonymous] の ACL エントリは、デフォルトでは [なし] のアクセス権になります。

表 2. データベースへの匿名アクセスの条件
インターネットプロトコルで [Anonymous] のアクセス権が有効インターネットプロトコルで [Anonymous] のアクセス権が無効
データベースの ACL 内で [Anonymous] のアクセス権が有効ユーザーは、[Anonymous] エントリに指定されたアクセスレベルでデータベースにアクセスします。例えば、[Anonymous] のアクセス権として [読者] が設定されていると、データベースにアクセスする匿名ユーザーには [読者] のアクセス権が与えられます。ユーザーは、サーバー上のリソースにアクセスしようとしたとき、認証を得るよう求められます。ユーザーがグループエントリやワイルドカードエントリによってデータベースにリストされていない場合、またはユーザー名が明示的にリストされている場合、[-Default-] エントリのアクセスレベルでデータベースにアクセスします。
データベースの ACL 内で [Anonymous] に [なし] が指定されている[Anonymous] に「なし」が指定されていて、パブリック文書 [読者] とパブリック文書 [作成者] のオプションが無効である場合、匿名ユーザーはデータベースにアクセスできず、認証を得るよう求められます。認証を行うと、データベースの ACL 内で名前がチェックされ、付与されるデータベースアクセスのレベルが決定されます。
データベースの ACL 内に [Anonymous] エントリがない匿名ユーザーは、[-Default-] エントリに指定されたアクセスレベルでデータベースにアクセスします。例えば、[-Default-] のアクセス権として [読者] が設定されていて、ACL 内に [Anonymous] エントリがない場合、データベースにアクセスする匿名ユーザーには [読者] のアクセス権が与えられます。

匿名ユーザー ([Anonymous] エントリによってデータベースへのアクセス権が付与されているユーザーと、[-Default-] エントリによってアクセス権が付与されているユーザー) は、自分のアクセスレベルで許可されていない処理をデータベース内で実行しようとすると、認証を得るよう求められます。例えば、[Anonymous] のアクセス権として [読者] が設定されている場合、匿名ユーザーが文書を新規作成しようとすると、名前とパスワードで認証を得るよう求められます。

ヒント: すべてのユーザーに対してデータベースでの認証を行うようにするには、データベースの ACL 内で [Anonymous] に「なし」のアクセスレベルが設定されていることと、パブリック文書 [読者] とパブリック文書 [作成者] が無効になっていることを確認します。インターネットユーザーの名前を、必要なアクセスレベルで ACL に追加します。

Domino サーバーでグループ名 [Anonymous] が使用されるのは、アクセス制御を検査するときだけです。例えば、データベース ACL で [Anonymous] に [作成者] のアクセス権を設定してある場合、文書の [作成者] フィールドには本当のユーザー名が表示されます。ただし、Domino サーバーで文書の [作成者] フィールドに本当の名前が表示できるのは、匿名 IBM Notes ユーザーの場合だけです。匿名インターネットユーザーの本当の名前は表示できません。匿名アクセスが使用されているかどうかにかかわらず、[作成者] フィールドはセキュリティの対象とはなりません。作成者名の有効性をチェック対象とする必要がある場合は、署名入り文書にしてください。

レプリカ ID

データベース内のエージェントが @DbColumn や @DbLookup を使用して別のデータベース内のデータを取得できるようにするには、取得対象のデータが含まれるデータベースの ACL に、そのエージェントを含むデータベースのレプリカ ID を入力します。エージェントを含むデータベースは、取得対象のデータが含まれるデータベースに対して [読者] 以上のアクセス権を持っていなければなりません。どちらのデータベースも、同一のサーバー上に存在している必要があります。データベース ACL 内で、レプリカ ID は 85255B42:005A8fA4 のように表示されます。レプリカ ID には小文字と大文字の両方を使用できますが、引用符で囲まないでください。

取得先データベースの [-Default-] のアクセスレベルが [読者] 以上に設定されている場合、このデータベースは、アクセス制御リストにレプリカ ID が含まれていなくてもデータを取得できます。

ACL エントリの評価順序

ACL エントリは、決まった順序で評価されます。その結果によって、データベースにアクセスしようとする認証済みユーザーに付与されるアクセスレベルが決まります。ユーザーがサーバーでの認証に失敗すると、サーバーは、ユーザー名が [Anonymous] であるものとしてアクセス権を計算し、その結果に従ってアクセスを許可します。


関連概念
サーバーとユーザーに階層名を付ける
ACL のデフォルトエントリ
インターネット/イントラネットクライアントの名前とパスワードによる認証
サーバー間の複製用にデータベース ACL を設定する
ディレクトリアシスタントを設定する

関連タスク
Web ユーザーによるアクセスの上限
グループを作成して変更する
別名言語と別名をユーザー ID に追加する
データベース ACL を設定する