Sun Directory Services 3.1 ユーザーズガイド

NIS パラメータ

NIS_MAPS 定義には、Deja で表示するすべての NIS マップのリストが含まれます。一連の定義で、各マップのパラメータを指定します。マップ定義は、手作業または dejasync コマンド行ユーティリティを使用して作成できます。dejasync を使用して NIS マップを Deja に追加するには」を参照してください。また、付録 B 「dejasync コマンドリファレンス」 または dejasync(1M) のマニュアルページも参照してください。dejasync は、Deja.properties ファイルの NIS_MAPS 定義で指定されたマップごとに、nis.mapping(4) ファイルから NIS_FILTERNIS_DOMAINNIS_ROOTNIS_NAMINGATTR、および NIS_OCLASS トークンを取得して、それらを Deja.properties ファイルのマップ定義にコピーします。Deja.properties ファイルにトークンがすでにある場合は、dejasync によってそのトークンが更新されます。


NIS_MAPS

Deja で使用できるマップのリストを定義します。各マップ名の後ろにセミコロンを指定し、さらに NIS の「検索 (Search)」、「作成 (Create)」、または「変更 (Modify)」パネルの「マップ名 (Map Name)」オプションボタンに表示するラベルを指定します。nis.mapping ファイルにまだない新しいマップを作成できます。次に構文を示します。


NIS_MAPS= map.name;map_label, map.name;map_label, ...

NIS_FILTER.map.name

NIS の「検索 (Search)」パネルで使用するフィルタを指定します。dejasync ユーティリティを使用した場合、この定義は自動生成されます。


NIS_DOMAIN.map.name

NIS の「検索 (Search)」、「作成 (Create)」、または「変更 (Modify)」パネルに表示するラベルを指定します。NIS マップが適用されるドメインを表します。dejasync ユーティリティを使用した場合、この定義は自動生成されます。


NIS_NAMINGATTR.map.name

NIS の「作成 (Create)」パネルで使用できる名前付き属性を指定します。コンマで区切ったリストです。dejasync ユーティリティを使用した場合、この定義は自動生成されます。


NIS_ROOT.map.name

NIS 検索で使用するルートエントリの識別名を指定します。これは、NIS の「作成 (Create)」パネルに表示されるデフォルトの親エントリでもあります。dejasync ユーティリティを使用した場合、この定義は自動生成されます。


NIS_OCLASS.map.name

NIS の「作成 (Create)」パネルのエントリ定義に追加するデフォルトのオブジェクトクラスを指定します。コンマで区切ったリストです。dejasync ユーティリティを使用した場合、この定義は自動生成されます。


NIS_LIST.map.name

NIS 検索結果リストの属性名と見出しラベルを指定します。次に構文を示します。


NIS_LIST.map.name= attribute;header_label, attribute;header_label, ...

NIS_ADD.map.name

NIS の「作成 (Create)」パネルの属性のラベルと構文を指定します。次に構文を示します。


NIS_ADD.map.name= attribute;label;syntax, attribute;label;syntax, ...

syntax は 4 種類の基本入力 (intstringcryptipaddr) のいずれか 1 つです。構文を指定しないと、デフォルト値である string が使用されます。構文を指定すると、ユーザーの入力を制限する場合に有効です。

  • crypt はテキストフィールドであり、入力された個々の文字が * に置き換えられます。

  • string は、あらゆる文字を使用できるテキストフィールドです。

  • int は、整数だけを使用できるテキストフィールドです。

  • ipaddr は、4 つの int フィールドからなり、形式は int.int.int.int です。


NIS_LIST.default

マップ用の NIS_LIST が定義されていない場合、NIS 検索結果リストに表示する属性名を指定します。

dejasync を使用して NIS マップを Deja に追加するには

dejasync については、付録 B 「dejasync コマンドリファレンス」 または dejasync(1M) のマニュアルページを参照してください。dejasync を使用して、nis.mapping ファイルから Deja に NIS マップを追加するには、次の手順に従います。

  1. root としてログインするか、ディレクトリサーバーでスーパーユーザーになります。

  2. NIS_MAPS 定義に、マップ名と NIS の「マップ (Maps)」オプションボタンで使用するラベルを追加します。

    マップは、nis.mapping ファイルで定義しておく必要があります。たとえば、Ethers というラベルを使用する ethers.byname マップを Deja に追加する場合、NIS_MAPS 定義は次のようになります。


    NIS_MAPS= ethers.byname;Ethers,
    passwd.byname;NIS_MAP_USERS_CHOICE,
    mail.aliases;NIS_MAP_ALIASES_CHOICE,
    hosts.byname;NIS_MAP_HOSTS_CHOICE,
    group.byname;NIS_MAP_GROUPS_CHOICE
  3. 次のように入力して、dejasync を実行します。


    prompt# /opt/SUNWconn/ldap/sbin/dejasync -d Deja_properties_directory -n NIS_mapping_file
    

    Deja_properties_directory には、Deja.properties ファイルが保存されているディレクトリを指定します。デフォルトは /opt/SUNWconn/ldap/html です。

    NIS_mapping_file には、NIS マップファイルのファイル名を指定します。デフォルトでは /etc/opt/SUNWconn/ldap/current/mapping/nis.mapping です。

    dejasync ユーティリティは、NIS_MAPS のマップ宣言を読み取り、nis.mapping ファイルから定義を読み取り、対応するマップ定義を更新するか、Deja.properties ファイルに追加します。

    次の例では、マップ定義が Deja.properties ファイルの末尾に追加されます。


    NIS_OCLASS.ethers.byname= ieee802Device
    NIS_FILTER.ethers.byname=
    (&(objectClass=ieee802Device)(cn=$NIS_KEY))
    NIS_NAMINGATTR.ethers.byname=cn
    NIS_ROOT.ethers.byname=dc=xyz,dc=com
    NIS_DOMAIN.ethers.byname=xyz.com
  4. (省略可能) 新しいマップ用の NIS_LIST および NIS_ADD 定義を追加します。

    Deja をいったん終了してから再起動して、新しいマップを使用します。

    次の例では、NIS_LIST および NIS_ADD に定義が追加されます。


    NIS_LIST.ethers.byname=cn;Host Name, macAddress;Ethernet Address,
    description;Comments
    NIS_ADD.ethers.byname=cn;Host Name, macAddress;Ethernet Address,
    description;Comments


    例 A-6 デフォルトの NIS マップ定義

    #
    # list of supported maps
    #
    NIS_MAPS=passwd.byname;NIS_MAP_USERS_CHOICE,
    mail.aliases;NIS_MAP_ALIASES_CHOICE, hosts.byname;NIS_MAP_HOSTS_CHOICE,
    group.byname;NIS_MAP_GROUPS_CHOICE
    #
    # passwd map
    #
    NIS_FILTER.passwd.byname= (&(objectclass=posixAccount)(uid=$NIS_KEY))
    NIS_DOMAIN.passwd.byname= xyz_users.com
    NIS_NAMINGATTR.passwd.byname=cn
    NIS_ROOT.passwd.byname=   dc=xyz_users,dc=com
    NIS_OCLASS.passwd.byname= posixaccount,person
    NIS_LIST.passwd.byname=cn;NIS_USER_CN_ATTR_LABEL, uid;NIS_UID_ATTR_LABEL,
    uidNumber;NIS_UIDNUMBER_ATTR_LABEL, gidNumber;NIS_GIDNUMBER_ATTR_LABEL,
    homeDirectory;NIS_HOMEDIRECTORY_ATTR_LABEL
    NIS_ADD.passwd.byname=cn;NIS_USER_CN_ATTR_LABEL, sn;NIS_SN_ATTR_LABEL,
    uid;NIS_UID_ATTR_LABEL, uidNumber;NIS_UIDNUMBER_ATTR_LABEL;int,
    gidNumber;NIS_GIDNUMBER_ATTR_LABEL;int,
    homeDirectory;NIS_HOMEDIRECTORY_ATTR_LABEL,
    userPassword;NIS_USERPASSWORD_ATTR_LABEL;crypt,
    loginShell;NIS_LOGINSHELL_ATTR_LABEL, description;NIS_DESCRIPTION_ATTR_LABEL
    #
    # alias map
    #
    NIS_FILTER.mail.aliases= (&(objectclass=nisMailAlias)(cn=$NIS_KEY))
    NIS_DOMAIN.mail.aliases= xyz_aliases.com
    NIS_NAMINGATTR.mail.aliases=cn
    NIS_ROOT.mail.aliases=   dc=xyz_aliases,dc=com
    NIS_OCLASS.mail.aliases= nismailalias
    NIS_LIST.mail.aliases=   cn;NIS_ALIAS_CN_ATTR_LABEL,
    rfc822mailMember;NIS_RFC822MAILMEMBER_ATTR_LABEL
    NIS_ADD.mail.aliases=    cn;NIS_ALIAS_CN_ATTR_LABEL,
    rfc822mailMember;NIS_RFC822MAILMEMBER_ATTR_LABEL
    #
    # host map
    #
    NIS_FILTER.hosts.byname= (&(objectclass=ipHost)(cn=$NIS_KEY))
    NIS_DOMAIN.hosts.byname= xyz_hosts.com
    NIS_NAMINGATTR.hosts.byname=cn
    NIS_ROOT.hosts.byname=   dc=xyz_hosts,dc=com
    NIS_OCLASS.hosts.byname= ipHost
    NIS_LIST.hosts.byname=   cn;NIS_HOST_CN_ATTR_LABEL,
    ipHostNumber;NIS_IPHOSTNUMBER_ATTR_LABEL, macaddress;NIS_MACADDRESS_ATTR_LABEL
    NIS_ADD.hosts.byname=    cn;NIS_HOST_CN_ATTR_LABEL,
    ipHostNumber;NIS_IPHOSTNUMBER_ATTR_LABEL;ipaddr,
    macaddress;NIS_MACADDRESS_ATTR_LABEL, l;NIS_L_ATTR_LABEL
    #
    # group map
    #
    NIS_FILTER.group.byname= (&(objectclass=posixGroup)(cn=$NIS_KEY))
    NIS_DOMAIN.group.byname= xyz_groups.com
    NIS_NAMINGATTR.group.byname=cn
    NIS_ROOT.group.byname=   dc=xyz_groups,dc=com
    NIS_OCLASS.group.byname= posixGroup
    NIS_LIST.group.byname=   cn;NIS_GROUP_CN_ATTR_LABEL,
    gidNumber;NIS_GIDNUMBER_ATTR_LABEL, memberUid;NIS_MEMBERUID_ATTR_LABEL
    NIS_ADD.group.byname=    cn;NIS_GROUP_CN_ATTR_LABEL,
    gidNumber;NIS_GIDNUMBER_ATTR_LABEL;int, memberUid;NIS_MEMBERUID_ATTR_LABEL
     
    NIS_LIST.default=        cn;NIS_CN_ATTR_LABEL