Sun ONE Calendar Server 6.0 管理者ガイド |
第 4 章
Calendar Server のアクセス制御の管理SunTM ONE Calendar Server は、アクセス制御リストを使用して、カレンダー、カレンダープロパティ、イベントや仕事 (タスク) などのカレンダーコンポーネントへのアクセスを制御します。
この章で説明する内容は次のとおりです。
セキュリティ保護された Calendar Server へのログインユーザーが Calendar Express 経由で Calendar Server にログインするときに、デフォルトでは認証プロセスはユーザー名とパスワードを含むログイン情報を暗号化しません。サイトでのセキュリティ保護されたログインを希望する場合は、SSL (Secure Sockets Layer) プロトコルを使用してログインデータを暗号化するように Calendar Server を設定します。詳細は、第 9 章「Calendar Server での SSL の使用」を参照してください。
ユーザー別のアクセス制御カレンダー、カレンダープロパティ、カレンダーコンポーネントへのアクセスの可否を決定する上で、Calendar Server は次のユーザーを区別します。
icsuser や calmaster などの管理者、または root などのスーパーユーザーは、アクセス制御の対象とはならず、カレンダーまたはカレンダーコンポーネントに対してどのような処理も実行できます。詳細については、「Calendar Server 管理者」を参照してください。
ics.conf ファイルの service.http.allowanonymouslogin が yes (デフォルト) に設定されている場合、特別なカレンダー ID (calid) である anonymous は任意のパスワードを使用して Calendar Server にアクセスできます。anonymous ユーザーは特定のドメインに関連付けられていません。calstore.anonymous.calid パラメータを編集することで、anonymous ユーザーの calid を変更できます。
カレンダーのアクセス権が全員に読み取りアクセスを許可している場合にも、カレンダーを匿名で表示できます。たとえば、次のリンクを使用することで、ユーザーは tchang:meetings という calid のカレンダーを匿名表示できます (カレンダーのアクセス権が全員に読み取りアクセスを許可している場合)。
http://calendar.sesta.com:8080/?calid=tchang:meetings
anonymous ユーザーは、カレンダー上で公開されているイベントと仕事を表示、印刷、検索することはできますが、その他の処理は行えません。
リソースカレンダーの匿名表示については、「カレンダーへのリンク設定」を参照してください。
アクセス制御リスト (ACL)Calendar Server は、カレンダー、カレンダープロパティ、イベントや仕事 (タスク) などのカレンダーコンポーネントへのアクセスを制御するために、ACL (アクセス制御リスト) を使用します。ACL は、1 つまたは複数の ACE (アクセス制御エントリ) から構成されます。ACE は同じカレンダーまたはコンポーネントに集合的に適用される文字列で、ACL 内の各 ACE はセミコロンで区切られます。
例 :
ACE には次の要素が含まれ、各要素はキャレット (^) で区切られます。
たとえば、jsmith^c^wd^g という ACE は次のように機能します。
Who
Who 要素は、個人、ユーザー、ドメイン、特定のユーザータイプなど、ACE の適用対象を指定する ACE の主要値です。
Who 要素は UPN (Universal Principal Name) と呼ばれます。ユーザーの UPN はユーザーのログイン名とユーザーのドメインを組み合わせたものです。たとえばドメイン sesta.com に属するユーザー bill の UPN は、bill@sesta.com です。
表 4-1 は、Calendar Server の ACE で使用される Who 要素の形式を示しています。
What
What 要素は、カレンダー、カレンダーコンポーネント (イベントまたは仕事)、カレンダープロパティなど、アクセスの対象となるターゲットを指定します。
表 4-2 は、Calendar Server の ACE で使用される What 要素のターゲット値を示しています。
表 4-2 ACE (アクセス制御エントリ) 文字列の What 要素の値
値
説明
c
イベントや仕事などのカレンダーコンポーネントを指定する
p
名前、説明、所有者などのカレンダープロパティを指定する
a
コンポーネントとプロパティの両方を含むカレンダー全体 (すべて) を指定する
How
How 要素は、読み取り、書き込み、削除など、許可されるアクセス権の種類を指定します。
表 4-3 は、Calendar Server ACE で使用されるアクセス制御権を表わす How 要素の種類を示しています。
Grant
Grant 要素は、d (削除) や r (読み取り) など、指定したアクセス権の許可または拒否を指定します。
表 4-4 は、Calendar Server の ACE で使用される Grant 要素の属性値を示しています。
ACE の例
次に、ACE の使用例を示します。
ACL への ACE の配置
ACL を読み取るときに、Calendar Server はターゲットに対するアクセスの許可または拒否を指示する、最初に見つかった ACE を使用します。このため、ACL の順序は重要で、より一般的な制御の前に、より具体的な制御が配置されるように ACE 文字列の順序を決定する必要があります。
たとえば、カレンダー jsmith:sports の ACL 内の最初の ACE がすべてのユーザーに読み取りアクセス権を付与すると仮定します。次に、Calendar Server はこのカレンダーに対する bjones によるアクセスを拒否する第 2 の ACE を見つけます。この場合、Calendar Server はこのカレンダーに対する読み取りアクセス権を bjones に付与し、最初の ACE と矛盾する第 2 の ACE は無視されます。このため、bjones のような特定のユーザーのアクセス権を有効にするには、カレンダーのすべてのユーザーに適用される ACE のように一般的なエントリの前に、bjones 用の ACE を配置する必要があります。
アクセス制御の設定パラメータ表 4-5 は、Calendar Server がアクセス制御に使用する、ics.conf ファイル内の設定パラメータを示しています。詳細については、第 12 章「Calendar Server の設定パラメータ」を参照してください。
公開、非公開のイベントと仕事、およびフィルタ新しいイベントまたは仕事を作成するときに、ユーザーはイベントまたは仕事に公開、非公開、または時刻と日付のみの公開 (極秘) を指定できます。
Calendar Server フィルタが非公開の、および時刻と日付のみが公開される (極秘の) イベントと仕事を認識できるかどうかは、calstore.filterprivateevents によって決定されます。このパラメータはデフォルトで yes に設定されます。calstore.filterprivateevents を no に設定すると、Calendar Server は非公開の、および時刻と日付のみが公開されるイベントと仕事を、公開されているものと同様に扱います。
プロキシ管理者のログイン管理者が Calendar Server にプロキシログインするには、次の手順を実行します。
- ics.conf ファイルで次のパラメータを設定します。
service.http.allowadminproxy = "yes"
- 新しい値を適用するために Calendar Server を再起動します。
- 次の WCAP コマンドを使用して、管理者プロキシログインが正しく機能することを確認します。
http://server[:port]/login.wcap?user=admin-user
&password=admin-password&proxyauth=calendar-userここで、
- server は Calendar Server が稼動しているサーバーの名前
- port は Calendar Server のポート番号。デフォルトのポートは 80
- admin-user は Calendar Server 管理者。たとえば、calmaster など
- admin-password は admin-user のパスワード
- calendar-user は Calendar Server ユーザーの calid
コマンドの実行が成功すると、Calendar Server は calendar-user のカレンダーを表示します。問題が発生した場合は、「Unauthorized」という表示が出力されます。次のような原因が考えられます。
- admin-user が Calendar Server の管理者権限を持っていない
- admin-password が正しくない
- calendar-user が有効な Calendar Server ユーザーではない
アクセス制御のためのコマンド行ユーティリティ表 4-6 は、アクセス制御用の ACL を設定または変更するための Calendar Server コマンド行ユーティリティを示しています。