eDirectoryオブジェクトの各タイプの定義を、オブジェクトクラスといいます。たとえば、「ユーザ」や「組織」は、オブジェクトクラスです。オブジェクトの各クラスには、それぞれ特定のプロパティがあります。たとえば、ユーザオブジェクトでは、名、姓、および他の多くのプロパティがあります。
スキーマでは、オブジェクトクラスとプロパティ、および包含ルール(どのコンテナにどのオブジェクトを保管するか)が定義されます。eDirectoryにはベーススキーマが付属しています。このベーススキーマは、ユーザまたはユーザが使用するアプリケーションによる拡張が可能です。スキーマの詳細については、スキーマを参照してください。
コンテナオブジェクトは、他のオブジェジェクトを格納し、ツリーをさまざまな分岐に分割するために使用されます。一方、リーフオブジェクトはネットワークリソースを表します。
次の表に、eDirectoryのオブジェクトクラスを示します。サービスを追加した場合は、表内のオブジェクトクラス以外のオブジェクトクラスがeDirectory内に新たに作成されることがあります。
|
iManagerアイコン |
コンテナオブジェクト(略語) |
説明 |
|---|---|---|
|
|
ツリー |
ツリーの開始点を表します。詳細については、ツリーを参照してください。 |
|
|
カントリ(C) |
ネットワークが存在する国を表します。その下には、国内の他のディレクトリオブジェクトが編成されます。詳細については、国を参照してください。 |
|
|
ライセンスコンテナ(LC) |
NLS (NetIQ Licensing Services)技術を使用してライセンス許可証をインストールした場合やメータリング許可証を作成した場合に、自動的に作成されます。NLS対応のアプリケーションをインストールすると、LCコンテナオブジェクトがツリーに追加され、ライセンス許可証リーフオブジェクトがそのコンテナに追加されます。 |
|
|
組織(O) |
ディレクトリ内の他のオブジェクトの編成に使用されます。組織オブジェクトは、カントリオブジェクトの直下に配置されます(カントリオブジェクトを作成している場合)。詳細については、組織を参照してください。 |
|
|
部門(OU) |
ディレクトリ内の他のオブジェクトをさらに細かく編成するために使用されます。部門オブジェクトは、組織オブジェクトの直下に配置されます。詳細については、部門を参照してください。 |
|
|
ドメイン(DC) |
ディレクトリ内の他のオブジェクトをさらに細かく編成するために使用されます。ドメインオブジェクトは、Treeオブジェクトの下、または組織、部門、カントリ、および地域オブジェクトの下に作成されます。詳細については、ドメインを参照してください。 |
|
iManagerアイコン |
Leaf Object (リーフオブジェクト) |
説明 |
|---|---|---|
|
|
AFPサーバ |
eDirectoryネットワーク内のノードとして機能する、AppleTalk*ファイリングプロトコルサーバを表します。通常、複数のMacintosh*コンピュータに対するルータおよびAppleTalkサーバとしても機能します。 |
|
|
別名 |
ディレクトリ内にあるオブジェクトの実際の位置を指します。別名を使用することによって、ディレクトリ内のディレクトリオブジェクトを、実際の場所とは異なる場所に存在するように表示できます。詳細については、別名を参照してください。 |
|
|
Application (アプリケーション) |
ネットワークアプリケーションを表します。アプリケーションオブジェクトによって、権利の割り当て、ログインスクリプトのカスタマイズ、およびアプリケーションの起動のような、管理作業を簡素化できます。 |
|
|
コンピュータ |
ネットワーク内のコンピュータを表します。 |
|
|
ディレクトリマップ |
ファイルシステム内のディレクトリを表します。詳細については、ディレクトリマップを参照してください。 |
|
|
グループ |
ディレクトリ内のユーザオブジェクトのリストに名前を割り当てます。権利をそれぞれのユーザに割り当てる代わりに、グループに割り当てることができます。こうすると、グループ内の各ユーザに権利が与えられます。詳細については、グループを参照してください。 |
|
|
ライセンス許可証 |
プロダクトライセンス許可証をデータベースのオブジェクトとしてインストールするために、NLS技術とともに使用されます。NLS対応アプリケーションをインストールすると、ライセンス許可証オブジェクトがライセンスプロダクトコンテナに追加されます。 |
|
|
職種 |
組織内での地位や職種を定義します。 |
|
|
プリントキュー |
ネットワークのプリントキューを表します。 |
|
|
Print Server |
ネットワークのプリントサーバを表します。 |
|
|
プリンタ |
ネットワークのプリンタを表します。 |
|
|
プロファイル |
共通のログインスクリプトコマンドを共有するユーザグループが使用するログインスクリプトを表します。これらのユーザは同じコンテナに属する必要はありません。詳細については、プロファイルを参照してください。 |
|
|
サーバ |
任意のオペレーティングシステムが動作するサーバを表します。詳細については、サーバを参照してください。 |
|
|
テンプレート |
新しいユーザオブジェクトに適用する標準のユーザオブジェクトプロパティを表します。 |
|
|
不明 |
iManagerにカスタムアイコンが存在しないオブジェクトを表します。 |
|
|
User (ユーザ) |
ネットワークを使用する人を表します。詳細については、User (ユーザ)を参照してください。 |
|
|
ボリューム |
ネットワーク上の物理的なボリュームを表します。詳細については、ボリュームを参照してください。 |
ネットワーク内のサーバにeDirectoryを初めてインストールすると、ツリーコンテナ(以前の[ルート])が作成されます。最上位のコンテナであるTreeコンテナには、通常、組織オブジェクト、カントリオブジェクト、または別名オブジェクトが格納されます。
Treeコンテナはツリーの最上部を表します。
Treeは、包括的な権利の割り当てに使用します。Treeに対して行った権利の割り当ては、継承機能によって、ツリー内のすべてのオブジェクトに適用されます。eDirectoryでの権利を参照してください。デフォルトで、トラスティ[Public]はTreeに対するブラウズ権を所有し、AdminはTreeに対するスーパバイザ権を所有します。
Treeオブジェクトは名前プロパティを持っています。名前プロパティは、最初のサーバのインストール時に指定されたツリー名を表します。ツリー名はiManagerの階層に表示されます。
ツリー名は32文字以下にする必要があります。
ネットワーク内のサーバにeDirectoryを初めてインストールすると、組織コンテナオブジェクトが作成されます。通常、組織コンテナは最上部のTreeコンテナの直下に作成され、コンテナ内には部門オブジェクトとリーフオブジェクトが格納されます。
デフォルトでは、最初の組織コンテナに、Adminという名のユーザオブジェクトが作成されます。
通常、組織オブジェクトは会社を表しますが、Treeの下に組織オブジェクトを追加作成することもできます。一般的に、組織オブジェクトの追加作成は、さまざまな地区で構成されるネットワークや、独立した複数のeDirectoryツリーがマージされているネットワークで行われます。
ツリーでの組織オブジェクトの運用方法は、ネットワークのサイズと構造により異なります。小規模のネットワークでは、1つの組織オブジェクトの下にすべてのリーフオブジェクトを配置します。
大規模なネットワークでは、組織オブジェクトの下に部門オブジェクトを作成します。これにより、リソースの検索と管理を容易化できます。たとえば、社内の各部署や事業部ごとに部門オブジェクトを作成できます。
複数のサイトがあるネットワークでは、組織オブジェクトの下に各サイトを表す部門オブジェクトを作成します。ディレクトリを分割するためのサーバ数が十分にあれば(または設置の計画があれば)、このようにサイトの境界で論理的にパーティションを区切ることができます。
プリンタ、ボリューム、アプリケーションといった、社内全体で使用するリソースを共有しやすくするために、組織の直下に、対応するプリンタ、ボリューム、アプリケーションのオブジェクトを作成します。
組織オブジェクトの最も有用なプロパティを次に示します。名前プロパティは必須です。すべてのプロパティの一覧を表示するには、iManagerで組織オブジェクトを選択します。プロパティの各ページの説明を表示するには、[ヘルプ]をクリックします。
名前
通常、名前プロパティは会社名と同じです。簡素化のために短くすることもできます。たとえば、会社名がYour Shoe Companyの場合、YourCoとすることができます。
組織名は、その下に作成されるすべてのオブジェクトのコンテキストの一部として使用されます。
ログインスクリプト
ログインスクリプトプロパティには、組織の直下にあるユーザオブジェクトが実行するコマンドが格納されます。これらのコマンドは、ユーザのログイン時に実行されます。
組織名の長さは64文字以下にする必要があります。
ツリーを細分化するために部門(OU)コンテナオブジェクトを作成することができます。部門は、iManagerで、組織、カントリ、または別の部門オブジェクトの下に作成されます。
部門には、ユーザオブジェクトやアプリケーションオブジェクトといった、他の部門やリーフオブジェクトを格納できます。
通常は、部門オブジェクトは1つの部署を表し、互いにアクセスする必要があるオブジェクトのセットを格納します。部門オブジェクトの主な格納内容として、ユーザのセット、およびユーザが使用するプリンタ、ボリューム、アプリケーションなどを挙げることができます。
部門オブジェクトの最上位レベルに配置された各部門は、WANリンクごとに区切られたネットワークの各サイトを表します。
ツリーでの部門オブジェクトの運用方法は、ネットワークのサイズと構造により異なります。小規模のネットワークでは、部門オブジェクトを作成する必要がない場合もあります。
大規模なネットワークでは、組織オブジェクトの下に部門オブジェクトを作成します。これにより、リソースの検索と管理を容易化できます。たとえば、社内の各部署や事業部ごとに部門オブジェクトを作成できます。ユーザオブジェクトと、ユーザが頻繁に使用するリソースを一緒に部門オブジェクトに格納すると、管理が最も容易になります。
複数のサイトがあるネットワークでは、組織オブジェクトの下に各サイトを表わす部門オブジェクトを作成します。ディレクトリを分割するためのサーバ数が十分にあれば、このようにサイトの境界で論理的にパーティションを区切ることができます。
部門オブジェクトの最も有用なプロパティを次に示します。名前プロパティは必須です。すべてのプロパティの一覧を表示するには、iManagerで部門オブジェクトを選択します。プロパティの各ページの説明を表示するには、[ヘルプ]をクリックします。
名前
通常、名前プロパティは部署名と同じです。簡素化のために短くすることもできます。たとえば、部署名がAccounts Payableの場合、省略してAPとすることができます。
部門名は、その下に作成されるすべてのオブジェクトのコンテキストの一部として使用されます。
ログインスクリプト
ログインスクリプトプロパティには、部門の直下にあるユーザオブジェクトが実行するコマンドが格納されます。これらのコマンドは、ユーザのログイン時に実行されます。
部門名は64文字まで指定できます。
iManagerを使用して、国オブジェクトをツリーオブジェクトの直下に作成できます。国オブジェクトは、特定のX.500グローバルディレクトリに接続する場合にのみ必要です。
国オブジェクトは、ツリーの分岐の国名を表します。
ネットワークが複数の国に渡っている場合でも、管理者は通常、国オブジェクトを作成しません。これは、国オブジェクトがツリーに不要なレベルを追加するだけだからです。ネットワークが複数の国家で構成されている場合は、必要に応じて、Treeオブジェクトの下に1つ以上の国オブジェクトを作成できます。国オブジェクトには、組織オブジェクトのみ格納できます。
国オブジェクトを作成していない場合でも、後で必要になった時には、随時ツリーを変更して国オブジェクトを追加できます。
国オブジェクトには、2文字の名前プロパティがあります。国オブジェクト名には、US、UK、またはDEといった、2文字の標準コードが使用されます。
カントリ名は2文字を超えることができません。
iManagerを使用して、ドメインオブジェクトをツリーオブジェクトの直下に作成できます。また、組織、部門、国、および地域オブジェクトの下にも作成できます。
ドメインオブジェクトは、DNSドメインのコンポーネントを表します。ドメインオブジェクトを使用すると、ドメインネームシステムによって示されるサービスリソースレコードの場所(DNS SRV)に基づいて、ツリー内のサービスを検索できます。
ドメインオブジェクトを使用すると、ツリーは次のように表されます。
DS=Novell.DC=Provo.DC=USA
この例では、すべてのサブコンテナがドメインになっています。次のように、異なるツリーが混在する場合にもドメインオブジェクトを使用できます。
DC=Novell.O=Provo.C=USA
または
OU=Novell.DC=Provo.C=USA
通常、先頭のドメインはTree全体を表し、サブドメインはそのTreeの下位の部分を表します。たとえばmachine1.novell.comをツリーで表すと、DC=machine1.DC=novell.DC=comとなります。ドメインは、eDirectoryツリーの設定で使用される一般的な方法です。コンテナおよびサブコンテナがすべてDCオブジェクトである場合は、オブジェクトを検索するときに、C、O、またはOUを意識する必要はありません。
ドメイン名の長さは64文字以下にする必要があります。
サーバにeDirectoryをインストールすると、そのサーバのオブジェクトがツリー内に自動作成されます。このオブジェクトクラスは、eDirectoryが動作しているいずれかのサーバを表します。
サーバオブジェクトは、eDirectoryを実行しているサーバまたはバインダリベースのサーバを表します。
サーバオブジェクトはレプリケーション処理のリファレンスポイントの役目を果たします。バインダリベースのサーバを表すサーバオブジェクトでは、iManagerでそのサーバのボリュームを管理できます。
サーバオブジェクトの主なプロパティとして、ネットワークアドレスプロパティがあります。ネットワークアドレスプロパティには、そのサーバのプロトコルとアドレス番号が表示されます。これはパケットレベルでのトラブルシューティングに役立ちます。
すべてのプロパティの一覧を表示するには、iManagerでサーバオブジェクトを選択します。プロパティの各ページの説明を表示するには、[ヘルプ]をクリックします。
サーバ上に物理ボリュームを作成すると、ツリー内にボリュームオブジェクトが自動作成されます。デフォルトでは、サーバ名にアンダースコアと物理ボリューム名を追加したものが、ボリュームオブジェクトの名前になります(たとえばYOSERVER_SYS)。
Linuxファイルシステムのパーティションは、ボリュームオブジェクトを使用して管理することはできません。ボリュームオブジェクトはOES Linuxでのみサポートされます。
ボリュームオブジェクトは、サーバ上の物理ボリューム(書き込み可能ディスクやCDなどのストレージメディア)を表します。eDirectory内のボリュームオブジェクトには、そのボリューム内のファイルやディレクトリに関する情報は含まれませんが、iManagerを使用すれば、それらの情報にアクセスできます。ファイルおよびディレクトリに関する情報は、ファイルシステム自体に保存されます。
iManagerで[ボリューム]アイコンをクリックすると、そのボリュームにあるファイルやディレクトリを管理できます。ボリュームの空きディスク容量、ディレクトリエントリ領域、および圧縮の統計に関する情報がiManagerによって提供されます。
必須の名前プロパティおよびホストサーバプロパティに加えて、ボリュームオブジェクトには他にも重要なプロパティがあります。
名前
ツリー内のボリュームオブジェクトの名前です。デフォルトでは、この名前は物理ボリュームの名前に基づいて付けられますが、変更も可能です。
Host Server
ボリュームが存在するサーバの名前です。
バージョン
これは、ボリュームをホストしているサーバのeDirectoryのバージョンです。
ユーザオブジェクトは、ログインで必要とされます。ツリーに最初のサーバがインストールされると、Adminというユーザオブジェクトが作成されます。初回ログイン時には、Adminとしてログインします。
ユーザオブジェクトの作成またはインポートには、次の機能を使用できます。
iManager
iManagerの詳細については、『NetIQ iManager 2.7 Administration Guide (NetIQ iManager 2.7管理ガイド)』を参照してください。
データベースファイルからのバッチ処理
バッチファイルの使用の詳細については、eDirectoryツリーの設計を参照してください。
ユーザオブジェクトはネットワークを使用するユーザを表します。
ネットワークを使用するユーザ全員に対して、ユーザオブジェクトを作成します。ユーザオブジェクトは個別に管理することもできますが、次のようにすると時間の節約になります。
テンプレートオブジェクトを使用して、通常のユーザオブジェクトのデフォルトのプロパティを設定する。新しく作成するユーザに対して、自動的にテンプレートが適用されます(既存のユーザには適用されません)。
ユーザのセットを一括管理するためのグループオブジェクトを作成する。
コンテナオブジェクトをトラスティとして使用して、権利を割り当てる。これにより、権利の割り当てをコンテナ内のユーザオブジェクトすべてに適用できます。
複数のユーザオブジェクトは、<Shift>または<Ctrl>を押してクリックすると選択できます。これにより、選択したすべてのユーザオブジェクトのプロパティ値を一度に変更できます。
ユーザオブジェクトには80を超えるプロパティがあります。すべてのプロパティの一覧を表示するには、iManagerでユーザオブジェクトを選択します。プロパティの各ページの説明を表示するには、[ヘルプ]をクリックします。
ログイン名プロパティと姓プロパティは必須です。これら必須のプロパティおよび、他の有用なプロパティを次に示します。
[Account Expiration Date]では、ユーザアカウントの有効期限を設定できます。有効期限を過ぎた後は、アカウントはロックされ、ユーザはログインできなくなります。
[アカウント使用不可]には、アカウントがロックされ、ユーザがログインできない状態であることを示すシステム生成の値があります。ロックは、アカウントの有効期限が切れた場合や、ユーザが不正なパスワードを連続して何度も入力した場合などに発生します。
[定期的なパスワード強制変更]によって、一定期間ごとにパスワードの変更をユーザに要求し、セキュリティの強化を図ることができます。
[グループメンバーシップ]は、ユーザがメンバーとして含まれているすべてのグループオブジェクトを示します。
[最終ログイン時刻]はシステムが生成するプロパティで、ユーザが最後にログインした日時を示します。
[姓]は必須ですが、eDirectoryが直接使用することはありません。eDirectoryネームベースを利用するアプリケーションが、名、役職、位置、Fax番号など、他の識別プロパティとともに、このプロパティを使用する場合があります。
[同時接続数の制限]では、ユーザがネットワークで開くことができるセッションの最大数を設定できます。
[ログイン名]はiManagerで[ユーザ]アイコンによって表示される名前です。また、ログイン時にユーザが入力する名前でもあります。
eDirectoryでは、各コンテナ内で固有のログイン名を使用する必要がありますが、ネットワーク内の別のコンテナ間では同じログイン名を使用できます。ただし、社内全体で固有のログイン名を使用した方が、管理を単純化できます。
一般に、ログイン名には姓と名の組み合わせが使用されます。たとえば、Steve Jonesの場合は、STEVEJやSJONESのようになります。
[ログインスクリプト]では、個々のユーザオブジェクトの特定のログインコマンドを作成できます。ユーザのログイン時には、最初にコンテナログインスクリプトが実行されます。次に、ユーザオブジェクトがプロファイルオブジェクトのメンバーシップリストに登録されている場合は、プロファイルログインスクリプトが実行されます。最後に、ユーザのログインスクリプトが実行されます(スクリプトが存在する場合)。
管理に要する時間を節約するため、ログインコマンドのほとんどの部分はコンテナのログインスクリプトに保管するようにします。ユーザログインスクリプトを編集すると、共通の必要条件に対する例外に対処できます。
[ログイン時間制限]では、ユーザがログインできる時刻と曜日を設定できます。
[ネットワークアドレス]には、ユーザのログイン元であるIPX™アドレスやIPアドレスをすべて示すシステム生成の値が格納されます。これらの値は、パケットレベルでのネットワークの問題のトラブルシューティングに役立ちます。
[パスワード要求]では、パスワードの入力をユーザに要求するかどうかを指定できます。他の関連プロパティでは、パスワード長などの一般的なパスワード制限を設定できます。
[Rights to Files and Directories]は、ユーザに割り当てられた、ファイルシステムに対するすべての権利を示します。iManagerを使用して、ファイルおよびディレクトリに対するユーザの有効な権利(他のオブジェクトから継承されたものを含む)を確認することもできます。
グループオブジェクトを作成すると、ユーザオブジェクトをセットで管理できます。
グループオブジェクトは、ユーザオブジェクトのセットを表します。
コンテナオブジェクトではコンテナ内のすべてのユーザオブジェクトを管理でき、グループオブジェクトでは1つまたは複数のコンテナ内のサブセットを管理できます。
グループオブジェクトは、次の2つの主な目的に対して使用されます。
多数のユーザオブジェクトに、一度に権利を与える。
IF MEMBER OF構文を使用して、ログインスクリプトコマンドを指定する。
スタティックグループでは、メンバーオブジェクトを明示的に指定します。各メンバーは、グループに明示的に割り当てられます。
これらのグループでは固定したメンバーのリストが示され、また、グループのメンバーリストと、オブジェクト上で属性を持つメンバーとの間の参照整合性を提供します。グループメンバーシップは、メンバーの属性によって明示的に管理されます。
ダイナミックグループでは、LDAP URLを使用して規則のセットを定義します。この規則に従って、eDirectoryのユーザオブジェクトに一致したときに、グループのメンバーが定義されます。ダイナミックグループのメンバーは、URLに指定された検索フィルタによって定義される共通の属性を共有します。LDAP URLの形式に関する詳細は、RFC 2255を参照してください。
ダイナミックグループを使用すると、グループのメンバーシップを評価する際に使用される条件を指定できます。グループの実際のメンバーは、eDirectoryによって動的に評価されます。つまり、論理的にグループ化することでグループのメンバーを定義するため、eDirectoryはグループのメンバーを自動的に追加または削除できます。この拡張性の高いソリューションによって、管理コストを低減でき、LDAPの通常のグループに高い柔軟性を補うことができます。
eDirectoryでは、任意の属性に基づいてユーザを自動的にグループ化したり、一致する識別名(DN)を含む特定のグループに対してACLを適用したりする場合に、ダイナミックグループを作成できます。たとえば、部署=マーケティングという属性を持つすべてのDNを自動的に含むグループを作成できます。部署=マーケティングという検索フィルタを適用すると、部署=マーケティングの属性を持つすべてのDNを含むグループが検索結果として返されます。その後、このフィルタに基づく検索結果からダイナミックグループを定義できます。部署=マーケティングという条件に一致するユーザがディレクトリに追加されると、このグループにも自動的に追加されます。部署が他の値に変更されたユーザ(またはディレクトリから削除されたユーザ)は、グループから自動的に削除されます。
eDirectoryでダイナミックグループを作成するには、objectclass=dynamicGroupというタイプのオブジェクトを作成します。スタティックグループオブジェクトをダイナミックグループに変換するには、補助クラスdynamicGroupAuxをグループオブジェクトに関連付けます。ダイナミックグループは、グループに関連付けられたmemberQueryURL属性を持ちます。
dgIdentity属性は、ダイナミックグループオブジェクト上で、グループのダイナミックメンバーを拡張するために使用される証明書と権利を持つエントリの識別名に設定することができます。
グループは、memberQueryURLを使用して管理されます。基本的なmemberQueryURLには、ベースDN、スコープ、フィルタ、およびオプション拡張があります。ベースDNは検索ベースを指定します。スコープはベース内の検索レベルを指定します。フィルタは、指定したスコープ内で選択されたエントリに基づく検索フィルタです。
メモ:memberQueryURLによって作成されたリストに例外を設定するため、ダイナミックグループでもユーザを明示的に含めたり、除外したりできます。
ダイナミックグループは、NetIQ iManagerを使用して作成および管理できます。[役割およびタスク]ページの[グループ]役割をクリックすることで、グループ管理タスクにアクセスできます。
また、LDAPコマンドを使用してもグループを管理できます。ダイナミックグループに関連付けられた最も有用なプロパティは、dgIdentityおよびmemberQueryURLです。
グループオブジェクトの最も有用なプロパティは、メンバープロパティとファイル/ディレクトリへの権利プロパティです。すべてのプロパティの一覧を表示するには、iManagerでグループオブジェクトを選択します。プロパティの各ページの説明を表示するには、[ヘルプ]をクリックします。
dgAllowDuplicates
ダイナミックグループメンバーの印刷で重複が許されるかどうかを指定します。デフォルトでは、[TRUE]が選択されています。
dgIdentity
このプロパティはDNを保持します。ダイナミックグループは、このDNの識別子を検索時の認証用に使用します。識別子は、ダイナミックグループと同じパーティション上に存在する必要があります。dgldentityによって指定されたオブジェクトは、memberQueryURL属性で指定された検索を実行するのに必要な権利を持っている必要があります。
たとえば、memberQueryURLが次のような値であるとします。
l"dap:///o=nov??sub?(title=*)
この場合、dgldentityは、コンテナo=nov以下の属性タイトルに対する読み込み/比較権利を持っている必要があります。
dgTimeout
このプロパティは、サーバがタイムアウトになるまでにかかるメンバーの属性の読み込みまたは比較の最大所要時間を指定します。サーバがこのdgTimeout値を超えると、-6016エラーが表示されます。
memberQueryURL
このプロパティは、グループメンバーの属性と照合する規則のセットを定義します。
memberQueryURLは、そのスキーマ定義に従って複数の値を持つ属性です。memberQueryURLは複数の値を持ちますが、eDirectory 8.6.1では、memberQueryURLの最初の値のみが使用されていました。
次に例を示します。
管理者によって作成されたダイナミックグループに、次のような2つのmemberQueryURL値があるとします。
l"dap:///o=nov??sub?cn=*
l"dap:///o=org??sub?cn=*
eDirectory 8.6.xサーバは、グループのメンバーの計算に「ldap:///o=nov??sub?cn=*」を使用します。複数のクエリが許可されますが、読み込まれるのは最初のクエリだけです。
この制約事項はeDirectory 8.7以降で解消されました。eDirectoryサーバは、すべてのmemberQueryURL値に基づいてメンバーを計算するようになったため、そのメンバーセットは個々のmemberQueryURL値を使って計算されたメンバーの和集合になります。
上の例では、結果としてダイナミックグループのメンバーは、o=orgおよびo=novの場合にcn値を持つすべてのエントリとなります。
member
このプロパティは、グループ内のすべてのオブジェクトを示します。グループオブジェクトに割り当てられた権利は、そのグループのすべてのメンバーに適用されます。ダイナミックグループのmemberプロパティに値を追加すると、ダイナミックグループにスタティックメンバーが追加されます。この方法は、個別にメンバーを追加する場合に使用できます。
excludedMember
このプロパティは、ダイナミックグループのメンバーシップリストから特に除外されたDNを格納します。これは、ダイナミックグループの除外リストを作成するのに使用できます。
excludedMemberによって、DNをダイナミックグループのダイナミックメンバーから除外されるようにします。
こうすると、memberQueryURLによって指定されたメンバーの基準で選択された場合にのみ、DNはダイナミックグループのダイナミックメンバーになり、excludedMemberとしてリストされたり、uniqueMemberやmemberに明示的に追加されたりすることはありません。
staticMember
このプロパティは、ダイナミックグループのスタティックメンバーを読み込むだけではなく、DNがダイナミックグループのスタティックメンバーかどうかも判断します。また、DNが唯一のスタティックメンバーであるダイナミックグループを探し、ダイナミックメンバーを持っているが、スタティックメンバーを持たないグループを探すこともできます。
このプロパティを既存のダイナミックグループに追加するには、dgstatic.schを使用してスキーマを拡張します。
ダイナミックグループがローカルで作成されるか、同期の一部として取得されると、ダイナミックグループオブジェクトが作成されますが、ダイナミックグループの機能は、それらのオブジェクトに格納されるいくつかの内部値を必要とします。
古いサーバでもダイナミックグループを格納できますが、値を生成することはできません。ダイナミックグループはeDirectory 8.6.1で導入されたためです。
eDirectory 8.6.2では、eDirectory 8.6.1データベースに適合させるために、8.6.1以前のデータベースのダイナミックグループオブジェクトが自動で更新されました。
memberQueryURL属性は、ダイナミックグループのメンバーを計算するためにeDirectoryサーバが使用する検索フィルタを格納できます。
eDirectory 8.6.1では、フィルタで使用される属性の構文は、次の基本的な文字列型にのみ制限されていました。
SYN_CE_STRING
SYN_CI_STRING
SYN_PR_STRING
SYN_NU_STRING
SYN_CLASS_NAME
SYN_TEL_NUMBER
SYN_INTEGER
SYN_COUNTER
SYN_TIME
SYN_INTERVAL
SYN_BOOLEAN
SYN_DIST_NAME
SYN_PO_ADDRESS
SYN_CI_LIST
SYN_FAX_NUMBER
SYN_EMAIL_ADDRESS
eDirectory 8.7.3以降では、次の属性構文がmemberQueryURLの値として追加でサポートされています。
SYN_PATH
SYN_TIMESTAMP
SYN_TYPED_NAME
eDirectory 8.6.1およびeDirectory 8.7.xの両方では、SYN_OCTET_STRINGやSYN_NET_ADDRESSのようなバイナリ構文は、memberQueryURL検索フィルタでサポートされません。
詳細については、「How to Manage and Use Dynamic Groups in NetIQ eDirectory (NetIQ eDirectoryでダイナミックグループを管理および使用する方法)
」を参照してください。
ネストされたグループにより、グループをグループ化することができ、より構造化された形態のグループ化が可能になります。groupMember属性はネストされたグループを指定し、そのメンバーは、それを含有するネストされたグループオブジェクトのネストされたメンバーになります。グループオブジェクトはgroupMember属性で静的に指定されます。他のグループを含んでいるグループを「含有するグループ」といい、このグループに含まれているグループを「含有されるグループ」といいます。eDirectoryは、スタティック(静的)グループとダイナミック(動的)グループの両方のネストをサポートしています。最大で200レベルまでのネストが可能です。
重要:ネストは、ローカルサーバ内のみでサポートされます。含有されるグループがローカルサーバ上に見つからない場合、そのメンバーは、含有するグループのネストされたメンバーとしてリストされません。
図 1-4 ネストされたグループ
iManagerまたはLDAPのツールを使用して、ネストされたグループを作成できます。
LDAPツールを使用して、ネストされたグループを作成することができます。新しい補助クラスnestedGroupAuxを構造化クラスGroupと一緒に用いると、nestedGroupAuxはネストされたグループを表します。この補助クラスを既存のスタティックグループオブジェクトに追加すると、それがネストされたグループに変換されます。
含有されるグループと含有するグループの両方が、ネストされたグループオブジェクトでなければなりません。含有されるグループがネストされたグループである場合にのみ、それにgroupMembership属性(groupMembership属性はスタティックグループには含まれません)を設定して、含有するグループを指定することができます。含有されるグループのタイプが含有するグループと同じでない場合は、含有されるグループのスタティックメンバーのみが、ネストされたメンバーとしてリストされます。
LDIFファイルおよびLDAPツールを使用して、そのようなグループを管理できます。ネストされたグループに関連する最も役立つプロパティは、groupMemberおよびnestedConfigです。
iManagerプラグインを使用して、ネストされたグループを作成したり、スタティックグループをネストされたグループに変更して別のグループにそれを関連付けたりすることができます。
管理者の資格情報を使ってiManagerにログインし、左側のパネルから[グループ]>[グループの作成]を選択して、スタティックグループを作成します。たとえば、SG1とします。
左側のパネルから[ディレクトリ管理]>[オブジェクトの変更]を選択し、ブラウズしてSG1.novellオブジェクトを選択します。
[その他]タブをクリックし、[値がない属性]リストから[オブジェクトクラス]を選択します。
値nestedGroupAuxを[オブジェクトクラス]に追加して、[OK]および[適用]をクリックします。
左側のパネルから[グループ]>[グループの作成]を選択し、[ネストされたグループ]チェックボックスを選択したうえで、作成するネストされたグループの名前としてNG1を指定し、[OK]をクリックします。
左側のパネルから[グループ]>[グループの変更]を選択し、[ネストされたグループ]チェックボックスを選択したうえで、変更するネストされたグループの名前としてNG1を指定し、[OK]をクリックします。
ネストされたグループを変更するために、[グループ]>[グループの変更]を選択し、NG1.novellをブラウズして選択します。
スタティックグループをNG1に関連付けるために、[ネスト]タブ>[グループメンバー]タブを選択し、SG1スタティックグループをブラウズして選択します。
[適用]をクリックして[OK]をクリックすると、スタティックグループSG1がネストされたグループNG1に変換されます。
ネストされたグループに変換されたスタティックグループが、スタティックグループのメンバーになります。
SG1のメンバーシップの詳細を確認するには、左側のパネルから[グループ]>[グループの変更]を選択して、SG1.novellを選択します。[ネスト]>[グループメンバーシップ]タブを選択して、スタティックグループのメンバーシップ情報がNG1.novellであることを確認します。
groupMember
デフォルトで、ネストされたグループのメンバーには、すべてのネストされたメンバーが含まれます。したがって、member属性のリスト表示では常にすべてのネストされたメンバーが返され、member属性のアサーションではすべてのネストされたグループオブジェクトが返されます。設定を1 (ネストなし)にした場合は、直下のメンバーだけが対象となります。
グループメンバーシップ
groupMembershipは、このオブジェクト(通常はユーザオブジェクト)が属するグループを指定します。この属性はnestedGroupAuxクラスに関連付けられ、このグループがグループメンバーとなっているネストされたグループのDNを保持します。グループオブジェクトに関連付けられている場合、この属性は、そのグループがメンバー(正確にはgroupMember)になっているネストされたグループを示します。memberおよびgroupMemberと似た点として、groupMembershipのリストには、ネスト関係を通してそのグループがgroupMembershipを持っているすべてのネストされたグループが含まれます。さらに、groupMembership属性には、nestedConfigも適用されます。グループメンバーオブジェクト以外に対しては、個々のグループのnestedConfigが使用されます。
nestedConfig
nestedConfigは、ネストされたグループオブジェクトの環境設定を設定します。現在サポートされている設定値は、0 (ローカルサーバのネスト)および1 (ネストなし)です。デフォルトでは、常にローカルサーバをネストします。member、groupMember、groupMembershipなどの直接の値だけをその属性でリストするには、設定値を1にすることができます。
excludedMember
nestedGroupAuxクラスにはexcludedMemberが含まれていますが、この属性は現在使用されていません。ネストされたグループとダイナミックグループのクラスが両方とも同じグループに含まれている場合、excludedMemberはそのグループレベルのダイナミックメンバーにのみ適用されます。
groupMember属性を使用して、あるグループを別のグループのメンバーにすることができます。含有されるグループと含有するグループのどちらのグループオブジェクトにも、ネストされたグループ補助クラスが関連付けられている必要があります。
dn: cn=finance,o=nov
objectclass: group
objectclass: nestedGroupAux
groupMember: cn=accounts,o=nov
member: cn=jim,o=nov
dn: cn=accounts,o=nov
objectclass: group
objectclass: nestedGroupAux
member: cn=allen,o=nov
member: cn=ESui,o=nov
member: cn=YLi,o=nov
含有されるグループと含有するグループの両方がサーバ上にローカルに存在する場合は、ネストされたグループのmember属性を読み込むと、含有されるグループのメンバーも返されます。
dn: cn=finance,o=nov member: cn=jim,o=nov member: cn=allen,o=nov member: cn=ESui,o=nov member: cn=YLi,o=nov
groupMember属性に関してもこれが当てはまります。
groupMembershipは、member属性の相互性属性です。つまり、ユーザオブジェクトcn=allen,o=novは、cn=accounts,o=novというグループDNが設定されたgroupMembership属性を持つ必要があります。cn=accounts,o=novグループのgroupMembershipには、cn=finance,o=novが設定されている必要があります。cn=allen,o=novユーザオブジェクトのgroupMembership属性を読み込むと、両方のグループが返されます。
dn: cn=allen,o=nov groupMembership: cn=accounts,o=nov groupMembership: cn=finance,o=nov
ネストされたグループにACLを割り当てることができます。その場合、ネストされたグループのメンバーであるすべてのオブジェクトが権利を獲得します。[割り当てられた権利]フィールドでは、割り当てられている権利に加えて、ネストされたACLのビット(0x80000000)をさらに設定する必要があります。
dn: cn=finance,o=nov groupMember: cn=accounts,o=nov
dn: cn=accounts,o=nov member: cn=allen,o=nov
dn: ou=MyCo,o=nov objectclass: Organizational Unit ACL: 2147483650#entry#cn=finance,o=nov#[All Attributes Rights]
権利の値「– 2147483650 (0x80000002)」には、ネストされたACL (0x80000000)と読み取り権限ビット(0x00000002)が設定されています。したがって、ユーザオブジェクトcn=allen,o=novには、ネストされたグループcn=finance,o=novを介して、MyCoオブジェクトのすべての属性に対する読み取り権限が付与されます。
アプリケーションでは、member、groupMember、およびgroupMembership属性に対するフィルタアサーションを使用できます。上記の例では、member=cn=allen,o=novのアサーションによって以下が返されます。
dn: cn=accounts,o=nov dn: cn=finance,o=nov
groupMembership=cn=finance,o=novのアサーションによって次のオブジェクトが返されます。
dn: cn=allen,o=nov dn: cn=jim,o=nov dn: cn=ESui,o=nov dn: cn=YLi,o=nov dn: cn=accounts,o=nov
メモ:上記の例ではいずれも、ネストのレベルに制限はありません。上記のいずれの属性を読み込むときにも、ネストされたグループでループ検出が実行されます。
ネストされた関係の範囲がローカルサーバを超えることはありません。関係するオブジェクト、ユーザ、グループはサーバ上にローカルに存在する必要があります。
メンバーシップリストでは、重複排除は行われません。
古いeDirectoryサーバ(バージョン8.8 SP1またはそれ以前)では、ネストされたACLもネストセマンティックもサポートされません。
ツリー内の別のオブジェクトをポイントする別名オブジェクトを作成できます。別名オブジェクトによって、ユーザは自分の属するコンテナの外部にあるオブジェクトに、ローカル名を付けることができます。
コンテナの名前を変更するときには、必要に応じて、元のコンテナの位置に新しい名前をポイントする別名を作成できます。これにより、コンテナ内のオブジェクトを参照するログインスクリプトコマンドやワークステーションは、コンテナ名が更新されていなくても対象のオブジェクトにアクセスできます。
別名オブジェクトは、コンテナやユーザなど、ツリー内の別のオブジェクトを表します。別名オブジェクト自体にはトラスティ権はありません。別名オブジェクトに与えられたトラスティ権は、その別名オブジェクトが示している実際のオブジェクトに適用されます。ただし、別名をトラスティ割り当ての対象とすることもできます。
別名オブジェクトを作成すると、名前の解決が容易になります。オブジェクトの命名規則では、現在のコンテキストのオブジェクトに対する命名が最も簡単なため、現在のコンテキストに、現在のコンテキストの外部のリソースをポイントする別名オブジェクトを作成します。
たとえば、図 1-5に示すように、ユーザがSouthコンテナにログインし、現在のコンテキストを確立する場合に、NorthコンテナのColorQというプリントキューオブジェクトにアクセスする必要があるとします。
図 1-5 コンテナの例
に示されるように、Southコンテナに別名オブジェクトを作成できます。図 1-6
図 1-6 eDirectoryコンテナの別名オブジェクト
別名オブジェクトによって、元のColorQオブジェクトがポイントされるため、SouthコンテナではColorQをローカルオブジェクトとして印刷設定できます。
別名オブジェクトには別名元オブジェクトプロパティがあり、このプロパティによって、別名オブジェクトと元のオブジェクトとが関連付けられます。
ディレクトリマップオブジェクトは、サーバのファイルシステム内のパスへのポインタです。これにより、ディレクトリをより簡単に参照できます。
ネットワークにボリュームがない場合は、ディレクトリマップオブジェクトを作成することはできません。
ディレクトリマップオブジェクトは、ボリューム上のディレクトリを表しますそれに対し、別名オブジェクトはオブジェクトを表します。
ディレクトリマップオブジェクトは、ログインスクリプトでのドライブマッピングを単純化するために作成します。ディレクトリマップオブジェクトを使用すると、複雑なファイルシステムパスを簡単な名前にすることができます。
また、ファイルの場所を変更した場合でも、新しい場所を参照するように、ログインスクリプトやバッチファイルを変更する必要がありません。ディレクトリマップオブジェクトを編集するだけです。たとえば、図 1-7に示すように、Southコンテナのログインスクリプトを編集するとします。
図 1-7 eDirectoryコンテナの例
ドライブをボリュームsys:上のSharedディレクトリにマッピングするコマンドは、次のようになります。
MAP N:=sys.North.:Shared
共有ディレクトリマップオブジェクトを作成した場合、マップコマンドは、次のようにさらに簡単になります。
MAP N:=Shared
ディレクトリマップオブジェクトには、次のようなプロパティがあります。
名前
ディレクトリ内のオブジェクト(たとえば、Shared)を指定します。名前プロパティはMAPコマンドで使用されます。
ボリューム
Sys.North.YourCoのような、ディレクトリマップオブジェクトが参照するボリュームオブジェクトの名前が格納されます。
パス
ボリュームのルートからのパスでディレクトリを指定します(例: public\winnt\nls\english)。
プロファイルオブジェクトは、ログインスクリプトの管理に役立ちます。
プロファイルオブジェクトは、コンテナログインスクリプトの後、およびユーザログインスクリプトの前に実行されるログインスクリプトを表します。
特定のユーザのみを対象にログインスクリプトコマンドを実行したい場合は、プロファイルオブジェクトを作成します。対象のユーザには、同一コンテナ内のユーザだけでなく、異なるコンテナ内のユーザも指定できます。プロファイルオブジェクトを作成した後は、プロファイルのログインスクリプトプロパティにコマンドを指定します。続いて、該当のユーザオブジェクトをプロファイルオブジェクトのトラスティに指定し、それらのユーザオブジェクトのプロファイルメンバーシッププロパティにそのプロファイルオブジェクトを追加します。
プロファイルオブジェクトには、次の2つの重要なプロパティがあります。
ログインスクリプト
そのプロファイルのユーザに対して実行するコマンドを格納します。
ファイル/ディレクトリへの権利
ログインスクリプトにINCLUDEステートメントを使用した場合は、プロファイルオブジェクトに、ファイル/ディレクトリへの権利プロパティに指定されているファイルに対する権利を与える必要があります。