第15章 ユーザーおよびグループスキーマ

ユーザーエントリーは作成時に自動的に特定の LDAP オブジェクトクラスが割り当てられ、これにより特定の属性が利用可能になります。LDAP 属性は、情報がディレクトリー内に保存される方法です (これについての詳細は、『Directory Server Deployment Guide』 および 『Directory Server Schema Reference』 で説明されています。)

表15.1 デフォルトの Identity Management ユーザーオブジェクトクラス

オブジェクトクラス詳細
ipaobject
ipasshuser
IdM オブジェクトクラス
person
organizationalperson
inetorgperson
inetuser
posixAccount
人物のオブジェクトクラス
krbprincipalaux
krbticketpolicyaux
Kerberos のオブジェクトクラス
mepOriginEntryManaged エントリー (テンプレート) のオブジェクトクラス
ユーザーエントリーには多くの利用可能な属性があります。手動で設定されるものや、特定の値が設定されてない場合はデフォルト値を元に設定されるものもあります。その属性に UI やコマンドライン引数がない場合でも、表15.1「デフォルトの Identity Management ユーザーオブジェクトクラス」 内のオブジェクトクラスで使用できる属性を追加するオプションもあります。また、デフォルトの属性で生成もしくは使用される値は、「デフォルトのユーザーおよびグループ属性の指定」 にあるように設定可能です。

表15.2 デフォルトの Identity Management ユーザー属性

UI フィールドコマンドラインオプション必須、オプション、またはデフォルト[a]
User loginusername必須
First name--first必須
Last name--last必須
Full name--cnオプション
Display name--displaynameオプション
Initials--initialsデフォルト
Home directory--homedirデフォルト
GECOS field--gecosデフォルト
Shell--shellデフォルト
Kerberos principal--principalデフォルト
Email address--emailオプション
Password--password [b]オプション
User ID number--uidデフォルト
Group ID number--gidnumberデフォルト
Street address--streetオプション
City--cityオプション
State/Province--stateオプション
Zip code--postalcodeオプション
Telephone number--phoneオプション
Mobile telephone number--mobileオプション
Pager number--pagerオプション
Fax number--faxオプション
Organizational unit--orgunitオプション
Job title--titleオプション
Manager--managerオプション
Car license--carlicenseオプション
--noprivateオプション
SSH Keys--sshpubkeyオプション
Additional attributes--addattrオプション
Department Number--departmentnumberオプション
Employee Number--employeenumberオプション
Employee Type--employeetypeオプション
Preferred Language--preferredlanguageオプション
[a] 必須の属性は、すべてのエントリーで設定する必要があります。オプションの属性は設定が可能で、デフォルトの属性は特定の値を提供しない場合は事前設定の値で自動的に追加されます。
[b] スクリプトは、引数の値を受け付けずに、新たなパスワードを要求します。

15.1. デフォルトのユーザーおよびグループスキーマの変更

ユーザーおよびグループエントリーに使用されているオブジェクトクラスおよび属性は、変更することができます (15章ユーザーおよびグループスキーマ)。
IdM 設定は、オブジェクトクラスが変更されると以下の確認を行います。
  • すべてのオブジェクトクラスとそれらの指定された属性を LDAP サーバーが認識していること。
  • エントリーに設定されたデフォルトの属性はすべて、設定済みのオブジェクトクラスにサポートされていること。
ただし、IdM スキーマの検証には限界があります。最も重要なのは、IdM サーバーは定義済みユーザーもしくはグループオブジェクトクラスに IdM エントリーで必要なオブジェクトクラスすべてが含まれているかどうかを確認しないという点です。たとえば、IdM エントリーはすべて、ipaobject オブジェクトクラスが必要です。しかし、ユーザーもしくはグループスキーマが変更されると、このオブジェクトクラスが含まれているかどうかをサーバーは検証しません。このオブジェクトクラスが誤って削除されると、それ以降のエントリー追加操作は失敗することになります。
また、すべてのオブジェクトクラス変更は、漸増的ではなくアトミックです。変更があると毎回、デフォルトのオブジェクトクラス一覧全体を定義する必要があります。たとえば、企業が従業員の誕生日や就業開始日などの情報を保存するためのカスタムのオブジェクトクラスを作成したとします。管理者は単にカスタムのオブジェクトクラスをリストに追加するということはできません。新規オブジェクトクラスに加えて現行のデフォルトのオブジェクトクラス一覧全体を設定する必要があります。設定を更新する際は常に、既存のデフォルトのオブジェクトクラスを含める必要があります。これを含めないと現行設定が上書きされ、パフォーマンスに関する重大な問題が発生することになります。