| Interstage Application Server ディレクトリサービス運用ガイド | 
			目次
			索引
			![]()  
		 | 
	
| 第5章 リポジトリの作成 | > 5.6 データの作成 | > 5.6.2 データベースから抽出したCSVファイルを使う | 
 ユーザ情報エントリを追加する場合の記述例を示します。
 例中に記載のオブジェクトクラス、属性については、それぞれ、“オブジェクトクラス一覧”、“属性一覧”を参照してください。
CSVファイルのデータとユーザエントリの属性を以下のように関連付けて、ユーザ情報エントリをリポジトリに追加する場合の例で説明します。
| 
 項目の  | 
 項目名  | 
 属性名  | 
| 
 1  | 
 一般名  | 
 cn  | 
| 
 2  | 
 姓  | 
 sn  | 
| 
 3  | 
 名  | 
 givenName  | 
| 
 4  | 
 ユーザID  | 
 uid  | 
| 
 5  | 
 パスワード  | 
 userPassword  | 
| 
 6  | 
 従業員番号  | 
 employeeNumber  | 
| 
 7  | 
 電子メールアドレス  | 
 | 
0番目の項目に“ADD”を指定し、次桁から追加するエントリ情報を記述します。
ユーザ情報エントリ追加のCSVファイル
| 
 ADD,User001,Fujitsu,user001,100001,u5zMEqXX,10001,user001@interstage.fujitsu.com  | 
注)1エントリ1行で記述します。
 CSVファイルの各項目の順序に合わせて、Attributeタグを記述します。
 追加するすべてのエントリが同じ属性型と属性値をもつ場合、Fixedタグを記述すると、CSVファイルに記述する量を減らすことができます。
ユーザ情報エントリ追加のルールファイル
<?xml version="1.0" encoding="EUC-JP" ?>
<!-- 修正禁止* -->
<!DOCTYPE Csv2Directory [
<!ELEMENT Rule (name, baseDn, midDn?, Rdn+, DnChange?, objectClass+, attributeSeparator?, unique*, CSV, fixed?)>
<!ELEMENT CSV (ldapop?, Attribute)>
<!ELEMENT ldapop (op?, ldapadd?, ldapdelete?, ldapmodify?)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT baseDn (#PCDATA)>
<!ELEMENT Rdn (#PCDATA)>
<!ELEMENT objectClass (#PCDATA)>
<!ELEMENT attributeSeparator (#PCDATA)>
<!ELEMENT op (#PCDATA)>
<!ELEMENT ldapadd (#PCDATA)>
<!ELEMENT ldapdelete (#PCDATA)>
<!ELEMENT ldapmodify (#PCDATA)>
]>
<!-- 修正禁止* -->
<Csv2Directory>
    <Rule>
        <name>rule</name>
<!-- baseDn を定義します(必須) -->
        <baseDn>ou=User,ou=interstage,o=fujitsu,dc=com</baseDn>
<!-- RDN を定義します(必須:複数可能:重複不可) -->
<!-- 番号か属性名のどちらか一方で、一意になるものをいれてください -->
        <Rdn>cn</Rdn>
<!-- DN の変更を移動とみなすか(任意) -->
<!-- みなす場合 1 を指定してください -->
        <DnChange>1</DnChange>
        <objectClass>top</objectClass>
        <objectClass>person</objectClass>
        <objectClass>inetOrgPerson</objectClass>
<!-- 属性値が複数のCSV項目から作成する場合の区切りの文字(任意) -->
<!-- 指定しない場合は空白1文字です。 -->
<!-- 空白文字は指定できません。-->
        <attributeSeparator>-</attributeSeparator>
<!-- baseDnの下で、重複を許可しない属性を指定してください -->
<!-- 番号か属性名のどちらか一方で、一意になるものをいれてください -->
<!-- (任意:複数可能:重複不可)-->
        <unique>uid</unique>
        <CSV>
<!-- リポジトリへの操作(追加、削除、変更)とCSVの位置(任意) -->
<!-- 0番目の位置に、操作方法を指定する場合 -->
            <ldapop>
                <op>0</op>
                <ldapadd>ADD</ldapadd>
                <ldapdelete>DEL</ldapdelete>
                <ldapmodify>MOD</ldapmodify>
            </ldapop>
<!-- CSVの各項目とエントリの属性の対応づけ(任意) -->
            <Attribute>
                <cn>1</cn>
                <sn>2</sn>
                <givenName>3</givenName>
                <uid>4</uid>
                <userPassword>5</userPassword>
                <employeeNumber>6</employeeNumber>
                <mail>7</mail>
            </Attribute>
        </CSV>
<!-- 固定値で設定するものを定義します(任意) -->
        <fixed>
            <postalCode>105-7123</postalCode>
            <postalAddress>1-5-2 Higashi-Shimbashi Minato-ku</postalAddress>
            <st>Tokyo</st>
            <o>fujitsu</o>
        </fixed>
    </Rule>
</Csv2Directory> | 
| 
 irepmodifyent -h hostname -p 389 -D "cn=manager,ou=interstage,o=fujitsu,dc=com" -r rule.xml -i add.csv(注)  | 
注)改行を入れないで1行で入力します。
 ユーザ情報エントリを削除する場合の記述例を示します。
 例中に記載のオブジェクトクラス、属性については、それぞれ、“オブジェクトクラス一覧”、“属性一覧”を参照してください。
 CSVファイルのデータとユーザエントリの属性との関連付けは、“ユーザ情報エントリの追加”で示したものと同じである、として説明します。
 次の2つのユーザ情報エントリを削除する場合の、CSVファイルとルールファイルの記述例を示します。
| 
 dn: cn=User001,ou=User,ou=interstage,o=fujitsu,dc=com  | 
0番目の項目に“DEL”を指定し、次桁から削除するエントリ情報を記述します。
ユーザ情報エントリ削除のCSVファイル
| 
 DEL,User001,Fujitsu,user001,100001,u5zMEqXX,10001,user001@interstage.fujitsu.com  | 
注)1エントリ1行で記述します。
 CSVファイルの各項目の順序に合わせて、Attributeタグを記述します。“ユーザ情報エントリの追加”で使用したルールファイルを使用してください。
| 
 irepmodifyent -h hostname -p 389 -D "cn=manager,ou=interstage,o=fujitsu,dc=com" -r rule.xml -i del.csv(注)  | 
注)改行を入れないで1行で入力します。
 ユーザ情報エントリを更新する場合の記述例を示します。
 例中に記載のオブジェクトクラス、属性については、それぞれ、“オブジェクトクラス一覧”、“属性一覧”を参照してください。

 更新の対象となるユーザ情報エントリが存在しない場合は、対象のエントリを追加します。
“ユーザ情報エントリの追加”で追加した次のエントリに、電話番号を追加する場合を例にとって、CSVファイルとルールファイルの記述方法を説明します。
| 
 dn: cn=User001,ou=User,ou=interstage,o=fujitsu,dc=com  | 
CSVファイルのデータとユーザエントリの属性との関連付けは、“ユーザ情報エントリの追加”で示したものに、さらに、8番目に電話番号のデータを記述します。
| 
 項目の  | 
 項目名  | 
 属性名  | 
| 
 8  | 
 電話番号  | 
 telephonenumber  | 
0番目の項目に“MOD”を指定し、次桁から属性値を追加するエントリ情報を記述します。8番目の項目に電話番号(telephonenumber)を記述します。
電話番号追加のCSVファイル
| 
 MOD,User001,Fujitsu,user001,100001,u5zMEqXX,10001,user001@interstage.fujitsu.com,5555-0123(注)  | 
注)1エントリ1行で記述します。
 CSVファイルの各項目の順序に合わせて、Attributeタグを記述します。“ユーザ情報エントリの追加”で使用したルールファイルを使用してください。
 Attributeタグに、telephonenumberの記述を追加します。
電話番号追加のルールファイル(Attributeタグ内のみを示します。)
| 
 <Attribute>  | 
“属性値の追加”で追加した電話番号を削除する場合のCSVファイルとルールファイルの記述例を示します。
0番目の項目に“MOD”を指定し、次桁から属性値を削除するエントリ情報を記述します。8番目の項目に電話番号(telephonenumber)が記述されていた場合、その値を削除します。7番目の項目の後のカンマを削除しないように注意してください。
電話番号削除のCSVファイル
| 
 MOD,User001,Fujitsu,user001,100001,u5zMEqXX,10001,user001@interstage.fujitsu.com,(注)  | 
注)1エントリ1行で記述します。
CSVファイルの各項目の順序に合わせて、Attributeタグを記述します。上記の電話番号削除例のCSVファイルの場合は、前述の“属性値の追加”で使用した例のルールファイルと同じものを使用します。
次のユーザ情報エントリから、電話番号5555-0123を削除する場合のCSVファイルとルールファイルの記述例を示します。
| 
 dn: cn=User001,ou=User,ou=interstage,o=fujitsu,dc=com  | 
0番目の項目に“MOD”を指定し、次桁から属性値を削除するエントリ情報を記述します。8番目の項目、および9番目の項目に電話番号(telephonenumber)が記述されており、削除する電話番号が8番目の項目にある場合、その値を削除します。8番目の項目の前後のカンマを削除しないように注意してください。
電話番号を1つ削除する場合のCSVファイル
| 
 MOD,User001,Fujitsu,user001,100001,u5zMEqXX,10001,user001@interstage.fujitsu.com,,5555-6789(注)  | 
注)1エントリ1行で記述します。
CSVファイルの各項目の順序に合わせて、Attributeタグを記述します。
電話番号を1つ削除する場合のルールファイル(Attributeタグ内のみを示します。)
| 
 <Attribute>  | 
次のユーザ情報エントリの、電話番号5555-6789を5555-9001に置き換える場合のCSVファイルとルールファイルの記述例を示します。
| 
 dn: cn=User001,ou=User,ou=interstage,o=fujitsu,dc=com  | 
0番目の項目に“MOD”を指定し、次桁から属性値を置き換えるエントリ情報を記述します。8番目の項目に電話番号(telephonenumber)が記述されていた場合、その値を新しい値で置き換えます。
電話番号置換えのCSVファイル
| 
 MOD,User001,Fujitsu,user001,100001,u5zMEqXX,10001,user001@interstage.fujitsu.com,5555-9001(注)  | 
注)1エントリ1行で記述します。
CSVファイルの各項目の順序に合わせて、Attributeタグを記述します。上記の電話番号置換え例のCSVファイルの場合は、前述の“属性値の追加”で使用した例のルールファイルと同じものを使用します。
| 
 irepmodifyent -h hostname -p 389 -D "cn=manager,ou=interstage,o=fujitsu,dc=com" -r rule.xml -i mod.csv(注)  | 
注)改行を入れないで1行で記述します。
			目次
			索引
			![]()  
		 |