Solaris for ISPs では、Sun Directory Services で定義されている標準のスキーマ (基本スキーマ) が拡張されています。基本スキーマの詳細は、『Sun Directory Services 3.1 管理ガイド』の第 8 章「ディレクトリスキーマの構成」を参照してください。この章では、基本スキーマに追加されたオブジェクトクラスと属性について説明します。
現バージョンの Solaris for ISPs は最初のリリースであり、ここで使用されているスキーマはまだ確立されたものではありません。今後のバージョンで予告なく変更される可能性があります。
一般に、スキーマで定義されている既存のオブジェクトクラスや属性を変更するのはお勧めできませんが、変更や追加が必要な場合もあります。オブジェクトクラスや属性を変更したために Solaris for ISPs ソフトウェアがそのスキーマを使用できなくなり、ディレクトリを再インストールしなければならないことがあります。再インストールした場合、バックアップしなかったデータエントリは失われます。ディレクトリのバックアップについては、Sun Directory Services のマニュアルページの ldbmcat と ldif2ldbm を参照してください。
スキーマ拡張の詳細は、『Sun Directory Services 3.1 管理ガイド』の第 8 章「ディレクトリスキーマの構成」を参照してください。
ディレクトリの整合性を保つために、スキーマ構成ファイルを定期的にバックアップすることをお勧めします。また、必要に応じてスキーマを拡張するときも、事前にスキーマをバックアップしてください。
ディレクトリサービスに不可欠なファイルを次に示します。詳細は、『Sun Directory Services 3.1 管理ガイド』の第 4 章「ディレクトリサーバーの構成」を参照してください。
dsserv.conf には、主要な構成情報が入っています。
dsserv.oc.conf には、オブジェクトクラスの定義が入っています。
dsserv.at.conf には、属性の定義が入っています。
dsserv.acl.conf には、アクセス制御情報が入っています。
これらのファイルのコピーが、システム内の次の 3 箇所に格納されています。
/etc/opt/SUNWconn/ldap/current には、現在の構成ファイルが入っています。
/etc/opt/SUNWconn/ldap/default には、ソフトウェアのインストール時に書き込まれたデフォルト構成ファイルが入っています (ここに入っている構成ファイルは読み取り専用です)。
/etc/opt/SUNWconn/ldap/previous には、現在の構成ファイルの前バージョンが入っています。
スキーマを変更する前に、/etc/opt/SUNWconn/ldap/current と /etc/opt/SUNWconn/ldap/default に入っている構成ファイルをバックアップしてください。構成ファイルを変更するたびに、Sun Directory Services は ‾/current に格納されている変更前の構成ファイルを ‾/previous にコピーします。ただし、この操作は各編集セッションで一度だけ (dsservd を再起動する前に一度だけ) 行われます。スキーマに多くの変更を加える場合は、途中で手動バックアップを行なった方がよい場合があります。
スキーマのバックアップについては、『Sun Directory Services 3.1 管理ガイド』の第 4 章「ディレクトリサーバーの構成」を参照してください。
ディレクトリサービスの構成を以前の状態に戻すには、dsservd を停止し、復元したい構成ファイルを /etc/opt/SUNWconn/ldap/current にコピーしてから dsservd を再起動します。復元手順の詳細は、『Sun Directory Services 3.1 管理ガイド』の第 4 章「ディレクトリサーバーの構成」を参照してください。
Solaris for ISPs をインストールすると、デフォルトのスキーマ構成ファイルが /etc/opt/SUNWisp/SUNWconn/ldap/backup にバックアップされます。これらの構成ファイルは、インストール時に指定したルートドメインと管理者に関する情報でカスタマイズされています。スキーマを変更した結果、Solaris for ISPs が正しく機能しなくなった場合は、次の手順に従ってデフォルトスキーマを復元してください。
ディレクトリサービスが実行されているマシンにログインします。
スーパーユーザーのアクセス権を取得します。
次のコマンドを実行して、ディレクトリサービスサーバーを停止します。
# /etc/init.d/dsserv stop |
サーバーの停止と起動は管理コンソールからも実行できます。
次の各コマンドを実行して、バックアップされた構成ファイルが現在の構成ファイルになるようにコピーします。
# cp /etc/opt/SUNWisp/SUNWconn/ldap/backup/ispdsserv.conf ¥ /etc/opt/SUNWconn/ldap/current/dsserv.conf # cp /etc/opt/SUNWisp/SUNWconn/ldap/backup/ispdsserv.at.conf ¥ /etc/opt/SUNWconn/ldap/current/dsserv.at.conf # cp /etc/opt/SUNWisp/SUNWconn/ldap/backup/ispdsserv.oc.conf ¥ /etc/opt/SUNWconn/ldap/current/dsserv.oc.conf # cp /etc/opt/SUNWisp/SUNWconn/ldap/backup/ispdsserv.acl.conf ¥ /etc/opt/SUNWconn/ldap/current/dsserv.acl.conf # cp /etc/opt/SUNWisp/SUNWconn/ldap/backup/mapping/radius.mapping ¥ /etc/opt/SUNWconn/ldap/current/mapping/radius.mapping |
次のコマンドを実行して、ディレクトリサービスサーバーを起動します。
# /etc/init.d/dsserv start |
この節では、Solaris for ISPs をサポートするために基本スキーマに追加されたオブジェクトクラスについて説明します。必須属性としてリストされている属性値は、エントリを作成するときに必ず入力する必要があります。追加されたオブジェクトクラスをアルファベット順に示します。
目的: ISP サービスとネットワークの管理者を表すエントリを定義します。 ispAdministrator の相対識別名は、commonName 属性値で指定します。上位オブジェクトは ispSubscriber です。
表 6-1 ispAdministrator の属性属性名 | 必須属性か | スキーマ | 目的 |
---|---|---|---|
associatedDomain | いいえ | 基本 | この管理者が関連付けられているドメイン。Solaris for ISPs の将来的機能のために予約されている |
commonName | はい | 基本 | このエントリで記述する管理者の名前。Firstname Lastname (userid) の形式で指定する |
description | いいえ | 基本 | 管理者の説明を自由に記述する |
gidNumber | いいえ | 基本 | UNIX のグループ ID。仮想ホストによる FTP サービスまたは Web サービスの場合は、その仮想ドメインに指定されたグループ ID |
homeDirectory | いいえ | 基本 | このエントリで記述する管理者のホームディレクトリが存在するファイルシステムの位置 (Solaris for ISPs では未使用) |
ispAdministeredService | いいえ | 拡張 | この管理者が管理権限を持つサービスの識別名 |
ispContentDirectory | いいえ | 拡張 | この管理者に所属するコンテンツが格納されているディレクトリ。仮想ホストによる FTP サービスまたは Web サービスの場合は、ユーザーコンテンツのパス (ispRootDirectory からの相対パス) |
labeledURI | いいえ | 基本 | この管理者の Web ページに関連付けられた URL とラベル |
いいえ | 基本 | 管理者の公開電子メールアドレス | |
objectClass | はい | 基本 | このエントリ (ispAdministrator) のオブジェクトクラス |
ou | いいえ | 基本 | エントリが所属する組織ユニット。現バージョンの Solaris for ISPs では、Administrator ノードはルートドメインの下にある |
surname | はい | 基本 | 管理者の姓 |
userCertificate | いいえ | 基本 | 管理者の公開鍵を含む証明書 |
userid | はい | 基本 | 管理者のログイン名 |
userPassword | はい | 基本 | 管理者のパスワード |
uidNumber | いいえ | 基本 | UNIX のユーザー ID。仮想ホストによる FTP サービスまたは Web サービスの場合は、その仮想ドメインに指定されたユーザー ID |
目的: Sun Internet Administrator で管理する ISP サービスを表すエントリを定義します。このオブジェクトクラスは、Sun Internet Administrator 用に予約されています。ispManagedService の相対識別名は、host 属性値で指定します。
表 6-2 ispManagedService の属性属性名 | 必須属性か | スキーマ | 目的 |
---|---|---|---|
associatedName | いいえ | 基本 | このサービスに対するトップレベルのサービスエントリの識別名 |
commonName | いいえ | 基本 | ユーザーにとってわかりやすいサービス名。このサービス名が Sun Internet Administrator の GUI に表示される |
host | はい | 基本 | このサービスがインストールされているホスト名の完全指定 |
ispCategory | いいえ | 基本 | このサービスがサポートしているユーザーインタフェースの種類。詳細は、ispCategory 属性の項を参照 |
ispImageFile | いいえ | 拡張 | このサービスのアイコンを含む GIF イメージファイル名 |
ispServiceLocation | いいえ | 拡張 | このサービスの X ベースの管理アプリケーションへのパス |
ispParameterizedOperation | いいえ | 拡張 | パラメータを取るコマンド行ユーティリティに関する情報 |
ispServlets | いいえ | 拡張 | このサービスの管理ユーザーインタフェースで使用する Servlet の Java クラス名の完全指定 |
ispServletClasspath | いいえ | 拡張 | このサービスの管理ユーザーインタフェースが必要とするクラスの Java クラスパス |
ispSupportedOperation | いいえ | 拡張 | パラメータを取らないコマンド行ユーティリティに関する情報 |
ispVersion | いいえ | 拡張 | このエントリで記述するサービスのバージョン番号 (major.minor 形式) |
labeledURI | いいえ | 基本 | サービスのメイン GUI ページへのパス。3 階層サービスの場合は、ドキュメントルートへの相対パスを指定する。2 階層サービスの場合は、完全 URL を指定する |
objectClass | はい | 基本 | このエントリ (ispManagedService) のオブジェクトクラス |
目的: Solaris for ISPs のソフトウェアコンポーネントを表すエントリを定義します。ispService の相対識別名は、ispVersion 属性値で指定します。
表 6-3 ispService の属性属性名 | 必須属性か | スキーマ | 目的 |
---|---|---|---|
associatedDomain | いいえ | 基本 | このサービスを関連付けるドメイン |
commonName | はい | 基本 | サービス名 (Solaris for ISPs では未使用) |
description | いいえ | 基本 | サービスの説明を自由に記述する |
host | いいえ | 基本 | このサービスがインストールされているホスト名の完全指定 |
ispDirectoryRoot | いいえ | 拡張 | ドメインのコンテンツが仮想ホストで提供される場合の、ファイルシステム上のディレクトリ接頭辞。Sun Internet FTP Server と SWS が仮想ホスト構成で使用する |
ispPrivateData | いいえ | 拡張 | Sun Internet Administrator が使用する、ソフトウェアコンポーネントのパスワード情報。この属性は、ディレクトリルートと Sun Internet Administrator 以外からはアクセスできないように、ACL で保護されている |
ispServiceContext | いいえ | 拡張 | Sun Internet FTP Server と Sun Internet News Server が使用する CORBA 名前コンテキスト |
ispServiceLocation | いいえ | 拡張 | サービス管理サーバーに対する CORBA オブジェクトリファレンス。Sun Internet FTP Server と Sun Internet News Server が使用する |
ispSupplementaryInformation | いいえ | 拡張 | サービスに関する任意の情報。Solaris for ISPs のサービス固有情報として予約されている |
ispVersion | はい | 拡張 | このエントリで記述するサービスのバージョン番号 (major.minor 形式) |
labeledURI | いいえ | 基本 | 3 階層 GUI に対する Servlet のパス |
いいえ | 基本 | ユーザーの公開電子メールアドレス。Solaris for ISPs では未使用 | |
objectClass | はい | 基本 | このエントリ (ispService) のオブジェクトクラス |
userCertificate | いいえ | 基本 | ユーザーの公開鍵を含む証明書 |
userPassword | いいえ | 基本 | このエントリのパスワード。ディレクトリへのバインドで使用する |
目的: ISP の加入者 (顧客) を表すエントリを定義します。ispSubscriber の相対識別名は、commonName 属性値で指定します。上位オブジェクトは inetOrgPerson です。
Sun Directory Services に付属する RADIUS サーバーを使用する場合は、 ispSubscriber オブジェクトを remoteUser オブジェクトクラスにオーバーレイします。
表 6-4 ispSubscriber の属性属性名 | 必須属性か | スキーマ | 目的 |
---|---|---|---|
associatedDomain | いいえ | 基本 | この加入者を関連付けるドメイン |
commonName | はい | 基本 | このエントリで記述する加入者名を Firstname Lastname (ユーザー ID) の形式で指定する |
gidNumber | いいえ | 基本 | UNIX のグループ ID。仮想ホストによる FTP サービスまたは Web サービスの場合は、その仮想ドメインに指定された グループ ID |
homeDirectory | いいえ | 基本 | このエントリで記述する加入者のホームディレクトリが存在するファイルシステムの位置 (Solaris for ISPs では未使用) |
host | いいえ | 基本 | ホスト名の完全指定。Solaris for ISPs では未使用 |
ispAuthorizedServices | いいえ | 拡張 | この加入者が使用権を持つサービスの識別名 |
ispContentDirectory | いいえ | 拡張 | この加入者に所属するコンテンツが格納されているディレクトリ。仮想ホストによる FTP サービスと Web サービスの場合は、 ispRootDirectory からの相対パス |
labeledURI | いいえ | 基本 | この加入者の Web ページに関連付けられた URI とラベル |
いいえ | 基本 | 加入者の公開電子メールアドレス | |
objectClass | はい | 基本 | このエントリ (ispSubscriber) のオブジェクトクラス |
ou | いいえ | 基本 | この管理者が所属する組織ユニット。現バージョンの Solaris for ISPs では、People ノードはドメインエントリの下にある |
surname | はい | 基本 | 加入者の姓 |
uidNumber | いいえ | 基本 | UNIX のユーザー ID。仮想ホストによる FTP サービスと Web サービスの場合は、その仮想ドメインに指定されたユーザー ID |
userCertificate | いいえ | 基本 | 加入者の公開キーを含む証明書 |
userid | はい | 基本 | 加入者のログイン名 |
userPassword | はい | 基本 | 加入者のパスワード |
この項では、Solaris for ISPs の基本スキーマに追加されたオブジェクトクラスで使用する属性について説明します。その中には、基本スキーマに含まれる属性を使いやすくするものもあります。Solaris for ISPs のスキーマ拡張で追加された属性は名前が「isp」で始まります。
スキーマで定義されている属性は、次のいずれかの構文を持っています。
bin: バイナリ
ces: case-exact string
大文字小文字を区別する英数字文字列
cis: case-ignore string
大文字小文字を区別しない英数字文字列
dn: 識別名
protected: 暗号化されたデータ
crypt(1) を使用して暗号化されたデータ
int または long: 整数
tel: 電話番号
utctime: 世界標準時
以下に、Solaris for ISPs で拡張された属性をアルファベット順に説明します。
要約: cis、複数値、基本スキーマ
目的: このエントリで記述するオブジェクトを関連付けるドメインを指定します。OSI ツリーにドメインエントリを作成するときに、それに対応する DC ツリー内のエントリ名をドット区切り形式 (たとえば、eng.sun.com) で指定する必要があります。
要約: dn、基本スキーマ
目的: このエントリに関連付けるエントリの識別名を指定します。DC ツリーにドメインエントリを作成するときに、それに対応する OSI ツリー内のエントリ識別名を指定する必要があります。
代替名: cn
要約: cis、複数値、基本スキーマ
目的: このエントリで記述するオブジェクトの完全名を指定します。
加入者と管理者のエントリの場合は、Firstname Lastname (ユーザー ID) の形式で指定します。たとえば、jsmith というログイン名を使用する John Smith のエントリをディレクトリに作成するときは、commonName 属性値として John Smith (jsmith) を指定します。
ispManagedService オブジェクトクラスでこの属性を使用する場合は、Sun Internet Administrator の GUI に表示するわかりやすいサービス名を指定します。
要約: cis、複数値、基本スキーマ
目的: エントリオブジェクトの説明を自由に記述します。
要約: long、単一値、基本スキーマ
目的: UNIX のグループ ID を指定します。仮想ホストで FTP サービスを提供する加入者の場合は、その仮想ドメインに指定されたグループ ID でなければなりません。
要約: ces、単一値、基本スキーマ
目的: このエントリで記述するユーザーのホームディレクトリが存在するファイルシステムの位置を指定します。Solaris for ISPs ではこの属性を使用しませんが、顧客が必要とする一般情報の 1 つとして提供されています。
要約: cis、複数値、基本スキーマ
目的: このエントリで記述するオブジェクトに関連付けられるマシン名、またはオブジェクトによって管理されるマシン名を指定します。Solaris for ISPs のオブジェクトエントリで使用する場合は、完全指定のホスト名でなければなりません。
要約: dn、複数値、Solaris for ISPs のスキーマ拡張
目的: 管理対象とするサービスを、トップレベルのサービスエントリの識別名で指定します。サービスのトップレベルエントリは、ルートドメインエントリの下の ispService オブジェクトです。たとえば、sun.com がルートドメインエントリの場合は、ou=services、o=sun、c=us の下にあります。
要約: dn、複数値、Solaris for ISPs のスキーマ拡張
目的: ispSubscriber が使用権を持つサービスを識別名で指定します。
要約: cis、単一値、Solaris for ISPs のスキーマ拡張
目的: このエントリで記述するサービスがサポートする GUI のカテゴリを指定します。この属性で指定できる値を次に示します。
2tier。Web ベースのユーザーインタフェースです。Sun Internet Administrator がサポートする 2 階層アーキテクチャを使用します。
3tier。Web ベースのユーザーインタフェースです。Sun Internet Administrator がサポートする 3 階層アーキテクチャを使用します。
CLI。コマンド行ユーティリティのユーザーインタフェースです。
X。X ベースプログラムのユーザーインタフェースです。
要約: ces、単一値、Solaris for ISPs のスキーマ拡張
目的: ユーザーに所属するコンテンツが格納されているディレクトリを指定します (homeDirectory 属性とは異なるディレクトリを指定できます)。この属性は、ispAdministrator クラスと ispSubscriber クラスで使用します。仮想ホストによる FTP サービスを使用するユーザーの場合は、そのユーザーの FTP コンテンツのパス (ドメインの ispDirectoryRoot からの相対パス) を指定する必要があります。
要約: ces、単一値、Solaris for ISPs のスキーマ拡張
目的: ISP サービスのルートディレクトリを指定します。通常はドメインごとに指定します。
要約: cis、単一値、Solaris for ISPs のスキーマ拡張
目的: このエントリで記述するイメージを含むファイル名を指定します。 ispManagedService オブジェクトクラスではこの属性を使用して、GIF 形式のアイコンファイルを指定します。
要約: ces、単一値、Solaris for ISPs のスキーマ拡張
目的: Sun Internet Administrator が使用するソフトウェアコンポーネントのパスワード情報を指定します。この属性は、Sun Directory Services の root 管理者以外のユーザーがアクセスできないように、ACL で保護されています。
要約: ces、単一値、Solaris for ISPs のスキーマ拡張
目的: ISP サービスで使用するサービスコンテキストを指定します。Sun Internet FTP Server と Sun Internet News Server の場合は、CORBA 名前コンテキストになります。
要約: ces、単一値、Solaris for ISPs のスキーマ拡張
目的: このエントリで記述する ispService オブジェクトの場所を指定します。
Sun Internet FTP Server と Sun Internet News Server は、ispService オブジェクトのこの属性を使用して、CORBA オブジェクトリファレンスを管理サーバーに保存します。Sun Internet Administrator は ispManagedService オブジェクトのこの属性を使用して、X ベースのユーザーインタフェースアプリケーションへのパスを保存します。
要約: ces、複数値、Solaris for ISPs のスキーマ拡張
目的: ispManagedService の管理ユーザーインタフェースで使用する Servlet の Java クラス名を完全指定します。使用する Servlet ごとに、ispServlets 属性で次の値を指定します。
Servlet のパス (Sun Internet Administrator の 1 つである管理 Web サーバー のドキュメントルートからの相対パス)
Servlet の完全な Java クラス名
Servlet が必要とする引き数の名前と値のリスト
要約: ces、単一値、Solaris for ISPs のスキーマ拡張
目的: ispManagedService の管理ユーザーインタフェースで必要となるクラスの Java クラスパスを指定します。複数パスを持つ Java クラスパスの場合は、各パスをコロン (:) で区切って指定します。
要約: ces、複数値、Solaris for ISPs のスキーマ拡張
目的: パラメータを取るコマンド行ユーティリティに関する情報を指定します。 ispManagedService オブジェクトの場合は、次の 3 つのフィールドを空白で区切って指定します。
コマンド行ユーティリティへの完全パス
ユーティリティのヘルプファイルへの完全パス。ヘルプ情報を持たないユーティリティの場合は NONE
ユーティリティが必要とするパラメータを空白で区切って並べた文字列。パラメータをコマンド行から受け取る場合は、このフィールドに SOME という文字列を入れる
要約: cis、複数値、基本スキーマ
目的: このエントリで記述するオブジェクトに関する追加情報を指定します。基本スキーマを拡張したオブジェクトクラスで使用する場合は、この属性が Solaris for ISPs サービスに予約されています。
要約: ces、複数値、Solaris for ISPs のスキーマ拡張
目的: パラメータを取らないコマンド行ユーティリティに関する情報を指定します。 ispManagedService オブジェクトの場合は、次の 3 つのフィールドを空白で区切って指定します。
コマンド行ユーティリティへの完全パス
ユーティリティのヘルプファイルへの完全パス。ヘルプ情報を持たないユーティリティの場合は NONE
NONE という文字列
要約: ces、単一値、Solaris for ISPs のスキーマ拡張
目的: このエントリで記述する ispService オブジェクトのバージョンを指定します。Solaris for ISPs では、major.minor という形式のバージョン属性を使用します。
代替名: laleledURL
要約: ces、複数値、基本スキーマ
目的: このエントリで記述するオブジェクトに関連付けられた URI とラベルを指定します。
代替名: preferredRfc822Originator
要約: cis、複数値、基本スキーマ
目的: このエントリで記述するオブジェクトの公開電子メールアドレスを RFC822 形式で指定します。Sun Internet FTP Server は、この属性をエラー通知アドレスとして使用します。
要約: cis、複数値、基本スキーマ
目的: エントリの種類をオブジェクトクラスで指定します。
代替名: organizationUnitName
要約: cis、基本スキーマ
目的: このエントリで記述するオブジェクトが所属する組織ユニット名を指定します。
代替名: sn
要約: cis、基本スキーマ
目的: このエントリで記述するユーザーの姓を指定します。
要約: long、単数値、基本スキーマ
目的: UNIX のユーザー ID を指定します。仮想ホストによる FTP サービスを使用する加入者の場合は、仮想ドメインに指定されたユーザー ID を指定する必要があります。
要約: bin、基本スキーマ
目的: このエントリで記述するユーザーの公開鍵を含む証明書を指定します。
代替名: uid
要約: cis、複数値、基本スキーマ
目的: このエントリで記述するユーザーのログイン名を指定します。
要約: protected、複数値、基本スキーマ
目的: このエントリで記述するエンティティのパスワードを指定します。