アプリケーションの設計
エージェントを作成できるユーザー
サーバーで実行されるエージェントを作成できるユーザーを管理するには、データベース ACL を使用します。
メモ Web ユーザーは、エージェントを作成できません。
サーバー上でエージェントを実行できるユーザーを制御するには、IBM(R) Lotus Domino(R) ディレクトリのサーバー文書とデータベース ACL を使用します。詳しくは『Lotus Domino Administrator 7 ヘルプ』の「サーバー上で実行されるエージェントを制御する」を参照してください。
個人エージェント
個人エージェントを実行できるユーザーを管理するには、Domino ディレクトリのサーバー文書を開いて、[セキュリティ] タブをクリックします。[可能なプログラムの制限] セクションで、次の操作を実行します。
共有エージェント
共有エージェントを実行できるユーザーを管理するには、データベース ACL を使用します。[読者] 以上のアクセス権を持つユーザーは、共有エージェントを実行することができます。
LotusScript と Java には、サーバーのシステムに完全にアクセスし、システムの時刻、ファイルの入出力、および OS のコマンドを操作するための機能があります。制約なしのアクセス権を持つユーザーまたはグループは、このような LotusScript や Java のコンポーネントが含まれるエージェントを実行することができます。制限付きアクセス権を持つユーザーまたはグループは、ほとんどの操作を実行できます。 唯一の制限コマンドは、サーバーのシステムへのアクセスが可能なコマンドです。
注意 Java および LotusScript の制約なしエージェントは、セキュリティを侵害する可能性があります。信頼の置けるユーザーの人数を制限して、そうしたユーザーに限り、制限なしの権利を持たせるようにします。
エージェントの実行場所
エージェントをサーバー上で実行できるようにするかどうかを管理するには、Domino ディレクトリのサーバー文書を使用します。[セキュリティ] タブをクリックします。[サーバーアクセス] セクションで、次の作業を行います。
メモ これらの制限は、他のサーバーまたはクライアントから実行しているエージェントに適用されます。[サーバーアクセス] セクションは、サーバー上ですでに実行が予定されているエージェントには影響しません。
エージェントが処理できる文書を制御するため、IBM(R) Lotus Domino(R) では、次の内容に従って、文書が保存されているデータベースのアクセス制御リストが確認されます。
Lotus Domino では、エージェントが実行中かどうかによって、異なった内容のセキュリティ制限が点検されます。
次の場合、エージェントはローカルで実行されます。
サーバー上で実行される場合
エージェントがサーバー上で実行されるのは、エージェントがサーバーに保存されたデータベースで実行され、次のいずれかのタイミングで起動された場合です。
フォアグラウンドまたはバックグラウンド
エージェントがフォアグラウンドで実行されるのは、ユーザーがアクションを Lotus Notes の [アクション] メニューから起動した場合、Designer の [エージェント] リストから選択した場合、または [アクション] ボタンをクリックした場合です。エージェントがフォアグラウンドで実行されると、セキュリティ制限は点検されません。
エージェントがバックグラウンドで実行されるのは、エージェントが予定されたものである場合、文書が変更されたときなどのイベントによって起動された場合、または agent.runonserver によって呼び出された場合です。エージェントがバックグラウンドで実行されると、Lotus Domino によりセキュリティ制限が点検されます。
Lotus Notes クライアントまたは Web
エージェントは有効なユーザーに基づいて Lotus Notes クライアントまたは Web で実行されます。有効なユーザーとは、そのユーザーの権限でエージェントが実行されるユーザーです。有効なユーザーはエージェントが実行される環境によって異なります。
Web ユーザーがエージェントを実行すると、エージェントは有効なユーザーの権限によって実行され、Lotus Domino により有効なユーザーのデータベースに対するアクセス権が点検されます。ただし、有効なユーザーの権限ではなく、呼び出し者のデータベースに対するアクセス権を点検するように、エージェントを設定できます。呼び出し者の権限を点検することにより、セキュリティをさらに強化できます。
Lotus Domino が呼び出し者のデータベースに対するアクセス権を確認するように指定するには、次の操作を行います。
1. エージェントリストでエージェント名をダブルクリックします。
2. [セキュリティ] タブをクリックします。
3. [Web ユーザーで実行] チェックボックスをオンにします。
[Web ユーザーで実行] チェックボックスをオンにすると、Web ユーザーがエージェントを実行しようとしたときに、Lotus Domino により名前とパスワードが要求されます。Lotus Domino では、ログイン情報を使用して、呼び出し者のデータベース ACL での権限が点検されます。
エージェントに呼び出されるエージェントのセキュリティ管理
エージェントが他のエージェントを呼び出すと、Lotus Domino によりエージェントごとのセキュリティ制限が点検されます。ただし、エージェントの署名者が同一人物でない場合は、次の状況に応じてセキュリティが点検されます。
呼び出されたすべてのエージェントに対して、最初のエージェントの署名者が持つ権限が照合されます。
呼び出されたエージェントごとに、エージェントの署名者が持つ権限が照合されます。