ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
Oracle Solaris 11.1 でのネームサービスおよびディレクトリサービスの作業 Oracle Solaris 11.1 Information Library (日本語) |
4. Oracle Solaris Active Directory クライアントの設定 (タスク)
pam_unix_* モジュールによる LDAP アカウント管理
11. LDAP クライアントと Oracle Directory Server Enterprise Edition の設定 (タスク)
注 - スキーママッピングは、注意深くかつ一貫した方法で使用する必要があります。マッピングされた属性の構文が、マッピング先の属性との一貫性を保持していることを確認してください。つまり、単一値の属性が単一値の属性にマッピングされ、属性の構文が一致しており、マッピングされたオブジェクトクラスが適正な必須 (通常はマッピングされた) 属性を保持することを確認します。
先に説明したように、LDAP ネームサービスは、デフォルトでは DIT が特定の方法で構造化されていると想定します。必要に応じて、サービス検索記述子 (SSD) を使用して、DIT 内のデフォルト以外の場所で検索するよう LDAP ネームサービスに指示することができます。また、デフォルトのスキーマで指定された属性やオブジェクトクラスの代わりに、別の属性やオブジェクトクラスを指定して使用することもできます。デフォルトフィルタの一覧については、「LDAP ネームサービスで使用されるデフォルトフィルタ」を参照してください。
serviceSearchDescriptor 属性は、LDAP ネームサービスクライアントが特定のサービスに関する情報を検索する方法と場所を定義します。serviceSearchDescriptor には、サービス名のあとに、1 つ以上のセミコロンで区切られたベース - スコープ - フィルタのセットが含まれています。これらのベース - スコープ - フィルタのセットは特定のサービス専用の検索定義に使用され、指定された順番で検索されます。特定のサービスに対して複数のベース - スコープ - フィルタが指定されている場合、このサービスは、特定のエントリを検索する際、指定されたスコープおよびフィルタを保持する各ベースを検索します。
注 - SSD では、デフォルト位置は SSD に含められていない限り、サービス (データベース) の検索対象にはなりません。サービスに複数の SSD が指定されている場合、予期しない結果になることがあります。
次の例では、LDAP ネームサービスクライアントは、ou=west,dc=example,dc=com 内で passwd サービスに対する 1 レベルの検索を実行したあとに、ou=east,dc=example,dc=com 内で 1 レベルの検索を実行します。ユーザーの username の passwd データを検索するために、各 BaseDN に対してデフォルトの LDAP フィルタ (&(objectClass=posixAccount)(uid=username)) が使用されます。
serviceSearchDescriptor: passwd:ou=west,dc=example,dc=com;ou=east, dc=example,dc=com
次の例では、LDAP ネームサービスクライアントは、ou=west,dc=example,dc=com 内で passwd サービスに対するサブツリー検索を実行します。ユーザー username の passwd データを検索するために、LDAP フィルタ (&(fulltimeEmployee=TRUE)(uid=username)) を使用してサブツリー ou=west,dc=example,dc=com が検索されます。
serviceSearchDescriptor: passwd:ou=west,dc=example, dc=com?sub?fulltimeEmployee=TRUE
特定のサービスタイプに複数のコンテナを関連付けることも可能です。次の例では、サービス検索記述子が 3 つのコンテナでパスワードエントリを検索することを指定しています。
|
例の末尾の「,」は、SSD の相対ベースに defaultSearchBase が付加されることを意味します。
defaultSearchBase: dc=example,dc=com serviceSearchDescriptor: \ passwd:ou=myuser,;ou=newuser,;ou=extuser,dc=example,dc=com
LDAP ネームサービスでは、1 つ以上の属性名を、そのいずれかのサービスに再マッピングできます。(LDAP クライアントは、第 14 章LDAP ネームサービス (リファレンス)で説明されている既知の属性を使用します。)属性を対応づける場合、その属性が元の属性と同じ意味および構文を必ず保持するようにしてください。userPassword 属性のマッピングによって問題が発生する可能性があることに注意してください。
スキーママッピングを使用する理由として、次の 2 つが挙げられます。
既存のディレクトリサーバー内の属性を対応づけしたい
大文字小文字のみが異なるユーザー名を使用する場合、大文字小文字を無視する uid 属性を、大文字小文字を無視しない属性に対応づける必要があります
この属性の書式は、service:attribute-name=mapped-attribute-name です。
指定されたサービスに対して複数の属性を対応づける場合は、複数の attributeMap 属性を定義できます。
次の例では、uid および homeDirectory 属性を passwd サービスで利用する場合、常に employeeName および home 属性が使用されます。
attributeMap: passwd:uid=employeeName attributeMap: passwd:homeDirectory=home
passwd サービスの gecos 属性を複数の属性にマップできる特殊なケースが 1 つあります。次に例を示します。
attributeMap: gecos=cn sn title
これにより、gecos 値が cn、sn、および title 属性値のスペースで区切られたリストにマップされます。
LDAP ネームサービスでは、オブジェクトクラスを、そのいずれかのサービスに再マッピングできます。特定のサービス用に複数のオブジェクトクラスを対応づける場合、複数の objectclassMap 属性を定義できます。次の例では、posixAccount オブジェクトクラスを使用する場合、常に myUnixAccount オブジェクトクラスが使用されます。
objectclassMap: passwd:posixAccount=myUnixAccount