NIS_MAPS 定義には、Deja で表示するすべての NIS マップのリストが含まれます。一連の定義で、各マップのパラメータを指定します。マップ定義は、手作業または dejasync コマンド行ユーティリティを使用して作成できます。「dejasync を使用して NIS マップを Deja に追加するには」を参照してください。また、付録 B 「dejasync コマンドリファレンス」 または dejasync(1M) のマニュアルページも参照してください。dejasync は、Deja.properties ファイルの NIS_MAPS 定義で指定されたマップごとに、nis.mapping(4) ファイルから NIS_FILTER、NIS_DOMAIN、NIS_ROOT、NIS_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 種類の基本入力 (int、string、crypt、ipaddr) のいずれか 1 つです。構文を指定しないと、デフォルト値である string が使用されます。構文を指定すると、ユーザーの入力を制限する場合に有効です。
NIS_LIST.default
マップ用の NIS_LIST が定義されていない場合、NIS 検索結果リストに表示する属性名を指定します。
dejasync については、付録 B 「dejasync コマンドリファレンス」 または dejasync(1M) のマニュアルページを参照してください。dejasync を使用して、nis.mapping ファイルから Deja に NIS マップを追加するには、次の手順に従います。
root としてログインするか、ディレクトリサーバーでスーパーユーザーになります。
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 |
次のように入力して、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 |
(省略可能) 新しいマップ用の 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 |
# # 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 |