前へ     目次     索引     DocHome     次へ     
iPlanet Calendar Server 管理者ガイド



第 2 章   Calendar Server のユーザとカレンダーの管理


この章では、Calendar Server のコマンド行ユーティリティを使用して、ユーザとカレンダーのプロビジョンおよび管理を行う方法について説明します。カレンダーとしては、ユーザカレンダーとリソースカレンダーがあります。

この章は、次の節に分かれてます。

Calendar Server のユーザとカレンダーをプロビジョンおよび管理するには、次のコマンド行ユーティリティを使用します。

  • csuser ユーティリティは、LDAP ディレクトリサーバとカレンダーデータベースに格納されているカレンダーユーザ情報を管理します。

  • cscal ユーティリティは、カレンダーデータベース内のカレンダーとそのプロパティを管理します。

  • csresource ユーティリティは、LDAP サーバやカレンダーデータベースに格納されている会議室や備品といったリソースのカレンダーを管理します。

コマンド行ユーティリティを実行するには、Calendar Server が稼動しているシステムに対して管理権限を持つユーザとしてログインする必要があります。詳細については、第 7 章「Calendar Server コマンド行 ユーティリティ」を参照してください。



新しい Calendar Server ユーザのプロビジョニング



この節では、新しい Calendar Server ユーザのプロビジョニングに関する次の項目について説明します。


ディレクトリサーバ要件

Calendar Server は、カレンダーユーザがディレクトリサーバに格納されている必要があります。Calendar Server は、このディレクトリサーバを使用して、ユーザの認証およびユーザ設定の格納と検索を行います。

Calendar Server では、Netscape Directory Server などの LDAP ディレクトリで定義されているユーザをサポートします。ユーザが LDAP ディレクトリにすでに格納されている場合には、ディレクトリサーバを Netscape Directory Server 4.12 以降にアップグレードします。4.12 以上の Netscape Directory では、ユーザが Calendar Server にアクセスできるようにするためのスキーマ拡張がサポートされています。

Netscape Directory Server のインストール方法と構成方法については、以下を参照してください。

http://docs.iplanet.com/docs/manuals/directory.html

ユーザが Calendar Server データにアクセスできるようにディレクトリスキーマを手動で変更することもできます。詳細については、『iPlanet Calendar Server インストールガイド』を参照してください。


カレンダー識別子 (calid)

Calendar Server データベース内の各カレンダーは、一意のカレンダー識別子 (ID)、つまり calid によって識別されます。calid の形式は、次のとおりです。

userid[:calendar]

userid はユーザ ID、calendar はカレンダー名です。

カレンダー ID は、大文字と小文字が区別されます。たとえば、JSMITHjsmith は同じではありません。(これとは異なり、電子メールアドレスの場合は大文字と小文字が区別されません。たとえば、jsmith@sesta.comJSMITH@SESTA.COM は同じです。)

calid に空白文字を含めることはできませんが、次の文字を使用することはできます。

  • 英字 (a-z、A-Z) と数字 (0-9)

  • 特殊文字: ピリオド (.)、下線 (_)、ハイフンまたはダッシュ (-)、アットマーク(@)、アポストロフィ (ヤ)、パーセント記号 (%)、スラッシュ (/)、または感嘆符 (!)

カレンダー ID の例としては、jsmithjsmith:new-cal、および jsmith:private_calendar があります。

ユーザ ID は calid の一部であるため、ユーザ ID に空白文字を含めることはできません (j smith など)。空白文字を含んでいるユーザ ID を持つユーザが Calendar Server にログインすることは可能ですが、このユーザがイベントや仕事を作成しようとすると、Calendar Server が Bad Request エラーを返します。


カレンダー検索データベースプラグイン

複数のサーバにカレンダーデータベースが分散されている場合 (たとえば 図 1-5 を参照)、Calendar Server はカレンダー検索データベースプラグインを使用して、カレンダーの物理的な位置を決定します。データベースワイヤプロトコル (DWP) は、カレンダー検索サービスを呼んでカレンダー ID (calid) を完全修飾します。DWP は、返された URL から、アクセスプロトコルとともにカレンダーの位置を決定できます。

ics.conf ファイル内の caldb.cld.type パラメータは、使用するカレンダー検索データベースプラグインのタイプを指定します。

  • local (デフォルト) を指定すると、Calendar Server が動作しているローカルマシン上にすべてのカレンダーが格納され、プラグインは読み込まれません。

  • algorithmic を指定すると、指定のカレンダー ID が格納されているサーバを正規表現を使用して決定するプラグインが読み込まれます。正規表現は、次のパラメータによって指定します。

    caldb.cld.server.[hostname].regexpr = "expression"

    hostname はサーバの名前を指定し、expression はサーバ上のカレンダーを識別します。詳細については、「データベースワイヤプロトコル (DWP) の構成」を参照してください。

  • directory を指定すると、指定のカレンダー ID が格納されている物理マシンを LDAP ディレクトリスキーマエントリを使用して決定するプラグインが読み込まれます。


カレンダー操作に対してユーザが有効かどうかのチェック

特定のユーザがディレクトリサーバ上に存在し、Calendar Server データにアクセスできるかどうかを判断するには、csuser ユーティリティの check コマンドを使用します。

たとえば、JSmith がカレンダーを操作できるように設定されているかどうかをチェックするには、次のコマンドを入力します。

csuser check JSmith

ユーザが LDAP ディレクトリサーバに存在していないことを check コマンドが示した場合には、そのユーザのディレクトリサーバエントリを作成する必要があります。


新しいユーザのプロビジョニング

csuser ユーティリティは、LDAP ディレクトリサーバにエントリを作成し、ユーザがカレンダー操作を行えるようにします。ただし現在のリリースでは、ディレクトリサービスユーティリティまたはカスタマイズしたユーザプロビジョニングツールを使用して、ユーザの LDAP 属性をプロビジョンすることをお勧めします。

たとえば、Netscape Directory Server を使用している場合には、ldapsearch ユーティリティと ldapmodify ユーティリティを使用します。これらのユーティリティの詳細については、次のウェブサイトにある Netscape Directory Server のマニュアルを参照してください。

http://docs.iplanet.com/docs/manuals/

LDAP ディレクトリにユーザがすでに存在している場合は、このユーザのためのカレンダーを手動と自動のどちらででも作成できます。

  • 手動の場合 - cscal ユーティリティの create コマンドを使用して、ユーザのためのカレンダーを作成します。「新しいカレンダーの作成」を参照してください。

  • 自動の場合 - 新しいユーザが Calendar Server に初めてログインしたとき、Calendar Server はこのユーザのための新しいデフォルトカレンダーを自動的に作成します。Calendar Server は、新しいカレンダーのカレンダー ID (calid) として、ユーザのユーザ ID を使用します (その名前のカレンダーがすでに存在している場合を除く)。

    現在のリリースの Calendar Server では、新しいユーザが Calendar Server に最初ログインするとき常にデフォルトカレンダーが作成されます。この機能を無効にすることはできません。

    たとえば、JSmith が Calendar Server に初めてログインすると、JSmithcalid として持つデフォルトカレンダーを Calendar Server は自動的に作成します。

    また、この後 JSmith が作成するそれぞれのカレンダーの calid に、接頭辞 JSmith が付けられます。たとえば、JSmith が meetings というカレンダーを作成した場合、その calidJSmith:meetings となります。

カレンダー操作が有効になっていない (つまりデフォルトカレンダーを持っていない) ユーザに対して他のユーザがリクエストを送信すると、Calendar Server は Calendar not found エラーをリクエストの送信元ユーザに返します。


新しいカレンダーの作成

新しいカレンダーを作成するには、cscal ユーティリティの create コマンドを使用します。ユーザ (ユーザ ID) は、ディレクトリサーバにすでに存在している必要があります。

たとえば、JSmith というカレンダー ID (calid) のカレンダーを新たに作成する方法は、次のとおりです。

cscal -o JSmith -n JohnSmithCalendar create JSmith

ここで、

  • -o JSmith は、新しいカレンダーの 1 次所有者を指定します。

  • -n JohnSmithCalendar は、新しいカレンダーの表示 (可能) 名 を指定します。

  • デフォルトのアクセス制御設定値が、ics.conf ファイル内の calstore.calendar.default.acl によって定義されます。

JSmith によって所有され、 Hobbies という表示 (可能) 名を持ち、グループスケジューリングのためデフォルトのアクセス制御設定を使用するカレンダーを作成する方法は、次のとおりです。

cscal -n Hobbies -o JSmith create Personal

ここで、

  • -n Hobbies は、カレンダーの表示可能名を指定します。

  • -o JSmith は、1 次所有者のユーザ ID を指定します。

  • Personal は、カレンダー ID (calid) の第 2 部分として使用されます。たとえば、JSmith:Personal のようになります。

次の例では上記の例と似たような新しいカレンダーを作成し、このカレンダーを sports というカテゴリに関連付け、二重予約を有効にし、もう 1 人の所有者として RJones を指定します。

cscal -n Hobbies -o JSmith -g sports -k yes -y RJones create Personal

ここで、

  • -g sports は、カレンダーを sports というカテゴリと関連付けます。

  • -y RJones は、もう 1 人のカレンダー所有者を指定します。

  • -k yes は、二重予約を有効にします。

次の例では上記の例と似たような新しいカレンダーを作成し、グループスケジューリングのためアクセス制御を設定します。

cscal -n Hobbies -o JSmith -a "@@o^a^sfr^g" create Personal

-a "@@o^a^sfr^g" は、グループスケジューリングに必要な、このカレンダーのコンポーネントおよびプロパティに対する「スケジュール」、「空き時間の表示」、および「読み取り」アクセス権を、他の所有者に許可します。



Calendar Server ユーザの管理



ユーザのプロビジョンを行なったら、csuser ユーティリティを使用して次の管理作業を行います。


ユーザ情報の表示

すべてのカレンダーユーザをリストしたり、特定のユーザのカレンダー属性を表示したりするには、csuser ユーティリティの list コマンドを使用します。

たとえば、カレンダー操作が有効になっているユーザすべてを表示するには、次のコマンドを入力します。

csuser list

JSmith などの特定の 1 人のユーザのカレンダー属性をすべて表示するには、次のように入力します。

csuser -v list JSmith


ユーザの無効化と有効化

Calendar Server にユーザをログインさせないようにするには、csuser ユーティリティの disable コマンドを使用します。disable コマンドは、ユーザのカレンダーデータへのアクセスを禁止しますが、ディレクトリサーバや Calendar Server データベースからユーザ情報を削除することはありません。

たとえば、JSmith が Calendar Server にアクセスできないようにするには、次のコマンドを入力します。

csuser disable JSmith

このコマンドは、Calendar Server にログインしてカレンダーデータにアクセスすることを JSmith に対してできないようにしますが、カレンダーデータベースから JSmith のデータが削除されることはありません。ただし、JSmith が現在 Calendar Server にすでにログインしている場合、JSmith はログオフするまでカレンダーデータにアクセスできます。

ユーザが Calendar Server にアクセスできるようにし、また必要に応じてデフォルトカレンダーのような具体的な設定を割り当てるには、 csuser ユーティリティの enable コマンドを使用します。

たとえば、JSmith がアクセス (Calendar Server にログイン) できるようにし、JSmith にデフォルトカレンダーを割り当てるには、次のコマンドを使用します。

csuser jsmith enable JSmith


ユーザの削除

Calendar Server ユーザを削除するには、csuser ユーティリティの delete コマンドを使用します。



注意

csuser ユーティリティの delete コマンドは、ユーザの Calendar Server 情報のすべてを LDAP サーバから削除します。カレンダーデータベースのバックアップがある場合には、Calendar Server データベース情報を回復することができます。詳細については、第 6 章「Calendar Server  データの バックアップと復元」を参照してください。

ただし、LDAP サーバ情報を回復できるのは、そのバックアップを作成してある場合だけです。



たとえば、JSmith を Calendar Server から削除するには、次のコマンドを入力します。

csuser delete JSmith


ユーザの属性のリセット

特定のユーザのカレンダー LDAP 属性をすべてデフォルト設定値に戻すには、csuser ユーティリティの reset コマンドを使用します。

たとえば、JSmith のカレンダー属性をすべてデフォルト設定値にリセットするには、次のコマンドを入力します。

csuser reset JSmith



ユーザカレンダーの管理



ユーザカレンダーを作成したら、cscal ユーティリティを使用して次の管理作業を行います。


カレンダーの表示

すべてのカレンダー、特定のユーザが所有するカレンダーすべて、または特定のカレンダーのプロパティを表示するには、cscal ユーティリティの list コマンドを使用します。

たとえば、カレンダーデータベース内のカレンダーすべてをリストするには、次のコマンドを入力します。

cscal list

JSmith が所有するカレンダーすべてをリストするには、次のコマンドを入力します。

cscal -o JSmith list

JSmith:meetings というカレンダー ID を持つカレンダーのプロパティすべてをリストするには、次のコマンドを入力します。

cscal -v list JSmith:meetings


カレンダーの削除

エンドユーザは Calendar Express を使用してカレンダーの購読解除を行えますが、Calendar Server データベースからエンドユーザがカレンダーを削除することはできません。カレンダーの削除は、システムに対して管理権限を持つ管理者が行う必要があります。

Calendar Server から 1 個または複数のカレンダーを削除するには、cscal ユーティリティの delete コマンドを使用します。このユーティリティはカレンダーを削除しますが、ディレクトリサーバからユーザを削除することはありません。



注意

delete コマンドは、カレンダーデータベースのカレンダー情報をすべて削除するため、元に戻すことはできません。いったん削除したカレンダーを回復できるのは、カレンダーのバックアップを作成している場合だけです。詳細については、第 6 章「Calendar Server  データの バックアップと復元」を参照してください。



cscal ユーティリティを使用すれば、1 個または複数のカレンダーを削除できます。

たとえば、JSmith meetings というカレンダー ID を持つカレンダーを削除する方法は、次のとおりです。

cscal delete JSmith:meetings

1 次所有者が JSmith であるカレンダーすべてを削除するには、次のコマンドを入力します。

cscal -o JSmith delete


カレンダーの無効化と有効化

ユーザがカレンダーにアクセスできないようにするには、cscal ユーティリティの disable コマンドを使用します。disable コマンドは、ユーザのカレンダーへのアクセスを禁止しますが、カレンダーデータベースから情報を削除することはありません。

たとえば、ユーザが JSmith:meetings にアクセスできないようにするには、次のコマンドを入力します。

cscal disable JSmith:meetings

カレンダーを有効化してユーザがカレンダーにアクセスできるようにするには、cscal ユーティリティの enable コマンドを使用します。たとえば、デフォルト構成の設定値を使用して JSmith:meetings カレンダーを有効にするには、次のコマンドを入力します。

cscal enable JSmith:meetings

カレンダー JSmith:meetings を有効にするが二重予約は許可しないようにするには、次のコマンドを入力します。

cscal -k no enable JSmith:meetings


カレンダープロパティの変更

カレンダーのプロパティを変更するには、cscal ユーティリティの modify コマンドを使用します。

たとえば AllAdmins のグループスケジュール設定アクセス制御設定値を変更し、もう 1 人の所有者としてRJones を指定するには、次のコマンドを入力します。

cscal -a "@@o^c^wd^g" -y RJones AllAdmins

ここで、

  • -a "@@o^c^wd^g" は、AllAdmins のコンポーネント (イベントと仕事) への「書き込み」権と「削除」権を所有者に許可します。

  • -y RJones は、このユーザ ID をもう 1 人の所有者として指定します。


カレンダーからのプロパティの削除

カレンダーからプロパティ値を削除するには、cscal ユーティリティの modify コマンドを使用し、2 つの二重引用符 ("") を値として持つオプションを指定します。

たとえば、JSmith:meetings から記述を削除するには、次のコマンドを入力します。

cscal -d "" modify JSmith:meetings

JSmith:meetings からすべてのカテゴリを削除するには、次のコマンドを入力します。

cscal -g "" modify JSmith:meetings

JSmith:meetings から「他の所有者」を削除するには、次のコマンドを入力します。

cscal -y "" modify JSmith:meetings


「紛失した」カレンダーの回復

ユーザのデフォルトカレンダーが Calendar Express の「表示」タブや「カレンダー」タブに表示されていないがデータベースには存在している場合、次の属性でユーザの LDAP エントリを更新することによって、カレンダーを回復できます。

  • icsCalendar:default_calid

  • icsSubscribed:default_calid

default_calid は、ユーザのデフォルトカレンダー ID (calid) です。



リソースカレンダーの作成と管理



リソースカレンダーは、会議室またはノート型コンピュータや OHP (オーバーヘッドプロジェクタ) といった機器などのリソースに関連付けられています。

リソースカレンダーの作成と管理には、csresource ユーティリティを使用します。csresource を実行するには、Calendar Server が稼動しているシステムに対して管理権限があるユーザとしてログインする必要があります。

以降では、リソースカレンダーの作成と管理に関する次の項目について説明します。


リソースカレンダー構成パラメータの設定

表 2-1 は、ics.conf ファイルに定義されているリソースカレンダー構成パラメータを示しています。

表 2-1    ics.conf に定義されるリソースカレンダー構成パラメータ 

パラメータ

説明

resource.default.acl  

このパラメータは、リソースカレンダーの作成時に使用されるデフォルトアクセス制御の権限を決定する。デフォルトの権限は、次のアクセス制御リスト (ACL) によって指定する。

"@@o^a^r^g;@@o^c^wdeic^g;@^a^rsf^g"

この ACL は、コンポーネントとプロパティの両方を含むカレンダーへの「読み取り」、「スケジュール」、および「空き時間/予定あり」アクセスを、すべてのカレンダーユーザに許可する。

リソースに対する権限を変更するには、csresource ユーティリティの create コマンドでカレンダーを作成するときに、-a オプションを使用する。  

resource.allow.doublebook  

このパラメータは、リソースカレンダーで二重予約が許可されるかどうかを決定する。二重予約によって、リソースカレンダーの同一時間に 2 個以上のイベントをスケジュールできる。

デフォルトは、二重予約を許可しない "no"

リソースカレンダーに対する二重予約を許可するには、csresource ユーティリティ の create コマンドでカレンダーを作成するときに、-k オプションを使用する。  

新規のリソースカレンダーには、 表 2-1 に示されているデフォルト値が適用されますが、ics.conf ファイルを編集すればこれらのデフォルト値を変更できます。詳細については、「ics.conf 構成ファイルの編集」 を参照してください。


リソースカレンダーの作成

Calendar Server はリソースカレンダーを自動的に作成しないので、サイトで必要なリソースカレンダーは、csresource ユーティリティの create コマンドを使用して手動で作成する必要があります。このコマンドは、新しいカレンダーのためのエントリを LDAP ディレクトリサーバとカレンダーデータベースに作成します。カレンダーを作成する際に、次の点を考慮します。

  • デフォルトの場合、Calendar Server はリソースカレンダーにおける二重予約を許可しません (resource.allow.doublebook パラメータ)。このデフォルト値により、部屋や備品といったリソースのスケジューリングにおける衝突が予防されます。リソースカレンダーにおける二重予約を許可したい場合には、カレンダー作成時に csresource -k オプションを メyesモ に設定します。

  • 特定のリソースのスケジューリングを誰が行えるかを制御するには、リソースカレンダーへの書き込みアクセス権を持つユーザを限定するとよいでしょう。たとえば、会議室や備品のスケジューリングを特定のユーザのみに許可したいという状況が考えられます。

たとえば、カレンダー ID が aud100、表示可能名が Auditorium (LDAP cn 属性) であり、かつ表 2-1 に示されているデフォルト設定値を持つリソースカレンダーを作成するには、次のコマンドを入力します。

csresource -c aud100 create Auditorium

次のコマンドの動作は上記の例と基本的に同じですが、-k オプションでカレンダーに対する二重予約を許可し、-o でカレンダーの所有者として bkamdar を指定し、-y オプションで jsmith をもう 1 人の所有者として指定します。

csresource -c aud100 -k yes -o bkamdar -y jsmith create Auditorium

リソースカレンダーの所有者を指定しなかった場合、ics.conf ファイル内の service.admin.calmaster.userid パラメータから値が取り出されます。


リソースカレンダーと属性の表示

リソースカレンダーを表示するには、csresource ユーティリティの list コマンドを使用します。

たとえば、Calendar Server リソースカレンダーすべてとその LDAP 属性のリストを一覧表示するには、次のコマンドを入力します。

csresource list

Auditorium というリソースカレンダーの LDAP 属性すべてのリストを表示するには、次のコマンドを入力します。

csresource -v list Auditorium


リソースカレンダーの変更

リソースカレンダーを変更するには、cscal ユーティリティの modify コマンドを使用します (csresource には modify コマンドがありません)。

たとえば、Auditorium というリソースカレンダーの所有者として tchang を設定し、もう 1 人の所有者 mwong を追加するには、次のコマンドを入力します。

cscal -o tchang -y mwong modify aud100

この例の場合、cscal ユーティリティが必要とするのは、カレンダー名 (Auditorium) ではなく calid (aud100) です。


リソースカレンダーの無効化と有効化

ユーザがイベントのスケジュール設定を行えないようにするため、リソースカレンダーを無効化する必要性が生じることがあるかもしれません。たとえば改装中なので会議室を利用できなかったり、 OHP が修理に出されていたりすることが考えられます。

リソースカレンダーの無効化や有効化を行うには、csresource ユーティリティのenable コマンドや disable コマンドを使用します。

たとえば、Auditorium というリソースカレンダーを無効化するには、次のコマンドを入力します。

csresource disable Auditorium

リソースカレンダーを有効化するには、次のコマンドを入力します。

csresource enable Auditorium


リソースカレンダーの削除

リソースカレンダーを削除するには、csresource ユーティリティの delete コマンドを使用します。

たとえば、Auditorium というリソースカレンダーを削除するには、次のコマンドを入力します。

csresource delete Auditorium

Calendar Server は、次のメッセージを表示します。

このリソースを削除しますか (y/n)?

カレンダーを削除するには y、処理を取消すには n を入力します。

y を入力すると、Calendar Server はカレンダーを削除し、削除されたことを示すメッセージを表示します。


リソースカレンダーへのリンク

電子メールメッセージやウェブページの中で、 URL を使用してリソースカレンダーにリンクすることができます。URL を使用すれば、Calendar Server にログインしなくてもリソースカレンダーを匿名で表示することができます (カレンダーに対する「読み込み」アクセス権がある場合)。

たとえば次のリンクは、overhead_projector10 というカレンダー ID (calid) を持つ OHP のリソースカレンダーを指定します。

http://calendar.sesta.com:8080/?calid=overhead_projector10


前へ     目次     索引     DocHome     次へ     
Copyright © 2002 Sun Microsystems, Inc. All rights reserved.

最終更新日: 2002 年 1 月 22 日