JP4197315B2 - コラボレーションサーバ、コラボレーションシステム、そのセッション管理方法及びプログラム - Google Patents
コラボレーションサーバ、コラボレーションシステム、そのセッション管理方法及びプログラム Download PDFInfo
- Publication number
- JP4197315B2 JP4197315B2 JP2004500193A JP2004500193A JP4197315B2 JP 4197315 B2 JP4197315 B2 JP 4197315B2 JP 2004500193 A JP2004500193 A JP 2004500193A JP 2004500193 A JP2004500193 A JP 2004500193A JP 4197315 B2 JP4197315 B2 JP 4197315B2
- Authority
- JP
- Japan
- Prior art keywords
- session
- resource
- terminal
- owner
- request
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000007726 management method Methods 0.000 title claims description 27
- 230000004044 response Effects 0.000 claims description 55
- 230000006870 function Effects 0.000 claims description 8
- 238000000034 method Methods 0.000 claims description 6
- 239000003795 chemical substances by application Substances 0.000 description 60
- 230000005540 biological transmission Effects 0.000 description 19
- 238000010586 diagram Methods 0.000 description 10
- 238000013475 authorization Methods 0.000 description 9
- 230000007704 transition Effects 0.000 description 7
- 230000001360 synchronised effect Effects 0.000 description 5
- 241000699670 Mus sp. Species 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 235000014510 cooky Nutrition 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2147—Locking files
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Information Transfer Between Computers (AREA)
- Storage Device Security (AREA)
Description
技術分野
本発明は、複数台のコンピュータにて、ネットワークを介して共通のリソースに対する共同作業を行うコラボレーションシステムに関する。
【0002】
背景技術
今日、コンピュータネットワークの普及に伴い、複数のコンピュータ間でデータやリソースへのアクセスが容易になっている。そこで、ファイルやデータベース、ネットワークに対するユーザの不正なアクセスを防ぐため、ユーザに与えるアクセス権限(検索のみ、更新可能など)を規定するアクセス管理が一般的に行われている。
【0003】
また、ネットワークを介して接続されている複数のコンピュータの間で入出力やデータ処理を同期させることができる。すなわち、当該複数のコンピュータの表示装置に共通の画像を表示させたり、いずれかのコンピュータへの入力を他の各コンピュータに反映させたりする。この技術を用いて、当該コンピュータを利用する複数のユーザが、各々のコンピュータの表示装置に共通の作業画面を表示させて共同作業を行うシステム(以下、コラボレーションシステムと称す)が普及している。
【0004】
このようなコラボレーションシステムでは、共通のリソースに対して複数のユーザが同時にアクセスする。したがって、かかるコラボレーションシステムでアクセス管理を行う場合、共同作業を行う全てのユーザが作業対象であるリソースへのアクセス権限を有していることが必要となる。
【0005】
上述したように、コラボレーションシステムにおいてアクセス管理を行う場合、システムの安全を考慮すれば、共同作業を行う全てのユーザに対して作業対象であるリソースへのアクセス権限を有していることが要求される。
しかし、共同作業を行うユーザのうちの一部のみがアクセス権限を有するリソースに対して共同作業を行いたい場合がある。例えば、CRM(Customer Relationship Management)におけるサービスの一環として、お客様とエージェントとが共通のウェブページを参照しながら、お客様からの相談や質問に応対する場合がある。この場合、お客様のみがアクセス権限を有するウェブページであっても、かかる応対の作業時には当該エージェントも当該ウェブページを閲覧できるようにすることが望ましい。
【0006】
このような場合に当該リソースに対してアクセス権限を有しないユーザに対しても一時的にアクセス権限を認めることができれば、柔軟で利用価値の高いコラボレーションシステムを実現することができる。
そこで、本発明は、コラボレーションシステムにおいて、作業を行うユーザのうちの特定のユーザのみがアクセス権限を有するリソースに対して、一定条件下で他のユーザのアクセスを認めるアクセス管理を実現することを目的とする。
【0007】
発明の開示
上記の目的を達成するため、本発明は、ネットワークを介してデータを交換することにより行われる複数の端末による共同作業を支援する、次のように構成されたコラボレーションサーバとして実現される。すなわち、このコラボレーションサーバは、端末からの要求に応じてリソースを取得し、要求元の端末に返送するリソース取得手段と、この端末による共同作業のセッションを管理するセッション管理手段とを備え、リソース取得手段は、所定のセッションにおいて、セッションオーナーがアクセス権限を持つリソースに対してセッションオーナー以外のユーザの端末から取得リクエストを受け取った場合に、セッションオーナーのアクセス権限に基づいてリソースを取得することを特徴とする。
これにより、セッションオーナーの持つアクセス権限を、このセッションの限りにおいて、他のユーザも共用できることとなる。
【0008】
ここで、さらに詳細には、このリソース取得手段は、セッションオーナーの端末によるアクセス要求から取得されたアクセス権限を示す情報を、セッションオーナー以外のユーザの端末からの取得リクエストに付加することにより、所望のリソースを取得する。
また、リソース取得手段は、このリソースに対してセッションオーナー以外のユーザの端末から取得リクエストを受け取った場合であって、セッションオーナーの端末によるアクセス要求から取得されたアクセス権限を示す情報を保存していない場合や保存できない場合に、セッションオーナーの端末にこのリソースへのアクセス要求を行わせることによって、このリソースを取得する。
【0009】
また、本発明の他のコラボレーションサーバは、端末からの要求に応じてリソースを取得し、要求元の端末に返送するリソース取得手段と、端末による共同作業のセッションを管理するセッション管理手段とを備え、リソース取得手段は、所定のセッションにおいて、アクセス制御されているリソースに対してアクセス権限のないアクセス要求があった場合に、このリソースへのアクセス権限のある他のアクセス要求から取得されたアクセス権限を示す情報に基づいてリソースを取得することを特徴とする。
【0010】
本発明のさらに他のコラボレーションサーバは、端末からの要求に応じてリソースを取得し、要求元の端末に返送する送受信制御部と、端末による共同作業のセッションを管理するセッション管理部とを備え、送受信制御部は、所定の端末から受信した所定のリソースへの取得リクエストにアクセス権限を示す認証情報が付加されている場合に、この認証情報を所定の記憶装置に保存する。そして、所定の端末から受信したリソースの他の取得リクエストに認証情報が付加されていない場合に、保存されている認証情報を他の取得リクエストに付加してリソースのサーバに送信することを特徴とする。
【0011】
より詳細には、この送受信制御部は、個々のセッションにおけるセッションオーナーの端末から受信した取得リクエストから認証情報を取得し保存する。すなわち、各セッションでは、セッションオーナーのアクセス権限により、他のユーザにおけるリソースへのアクセスが可能となる。
また、送受信制御部は、認証情報が保存されていない状態でセッションオーナー以外のユーザの端末から取得リクエストを受け取った場合に、この取得リクエストに対するレスポンスから認証情報の入力要求を除去して、この取得リクエストの送信元に返送する。このため、レスポンスを取得した端末では認証情報を入力することができないが、通常のコラボレーションにおける動作として、セッションオーナーがかかるリソースの取得要求を送信し、このリソースを取得する。そしてこれ以後は、セッションオーナー以外のユーザも、このリソースを取得することが可能となるため、結果としてセッションオーナーのアクセス権限に基づいてリソースの取得ができることとなる。
【0012】
さらに本発明は、上述したコラボレーションサーバを備えて構成されるコラボレーションシステムとしても実現される。すなわち、このコラボレーションシステムは、ネットワークを介してデータを交換し共同作業を行う複数の端末と、この端末からの要求に応じてリソースを取得し各端末に渡すコラボレーションサーバとを備え、このコラボレーションサーバは、所定のセッションにおいて、アクセス制御されているリソースに対してアクセス権限を持たない端末からアクセス要求があった場合に、他の端末が持つこのリソースへのアクセス権限を用いてこのリソースを取得することを特徴とする。
ここで、このコラボレーションサーバは、さらに詳細には、アクセス制御されているリソースに対してアクセス権限を持たない端末からアクセス要求があった場合に、このリソースへのアクセス権限を持つ他の端末にこのリソースへのアクセス要求を行わせることにより、このリソースを取得する。
【0013】
さらに上記の目的を達成する他の本発明は、ネットワークを介してデータを交換することにより行われる複数の端末による共同作業を支援する、次のようなコラボレーションサーバのセッション管理方法として実現される。このセッション管理方法は、所定の端末から受信した所定のリソースへの取得リクエストにアクセス権限を示す認証情報が付加されていない場合に、予め保存されている認証情報をこの取得リクエストに付加するステップと、受信した取得リクエストまたは認証情報が付加された取得リクエストを目的のリソースのサーバへ送信し、レスポンスを取得するステップと、取得したレスポンスを取得リクエストの送信元である端末に返送するステップとを含むことを特徴とする。
【0014】
ここで、より好ましくは、このセッション管理方法は、共同作業のセッションにおけるセッションオーナーの端末から受信した取得リクエストから認証情報を取得し、所定の記憶装置に保存するステップをさらに含む。
また、レスポンスの内容が、リソースがアクセス制限されていることを示す情報(すなわちステータスコード401)である場合に、このレスポンスの返送に先立って、このレスポンス中からアクセス権限を示す情報の入力要求(すなわちWWW-Authenticateヘッダ)を除去するステップをさらに含む。
【0015】
さらにまた、本発明は、上述したコラボレーションサーバとしてコンピュータを機能させ、またはコンピュータを制御して上記のセッション方法における各ステップに相当する処理を実行させるプログラムとして実現することができる。このプログラムは、磁気ディスクや光ディスク、半導体メモリ、その他の記録装置に格納して配布したり、ネットワークを介して配信したりすることにより提供することができる。
【0016】
発明を実施するための最良の形態
以下、添付図面に示す実施の形態に基づいて、この発明を詳細に説明する。
図1は、本実施の形態によるコラボレーションシステムを適用するネットワークシステムの構成例を説明する図である。
図1に示すように、このネットワークシステムは、複数のユーザが共同作業を行うための端末100と、端末100によるウェブベースでの共同作業をサポートするコラボレーションサーバ200と、共同作業の対象であるリソースとしてウェブコンテンツを提供するウェブサーバ300とを備える。コラボレーションサーバ200、端末100及びウェブサーバ300は、それぞれワークステーションやパーソナルコンピュータなどのネットワーク機能を備えたコンピュータ装置にて実現され、ネットワーク400を介してデータ交換を行うことができる。ネットワーク400は、インターネットや、その他のウェブベースのWAN(Wide Area Network)、LAN(Local Area Network)等のネットワークであり、伝送路は有線であると無線であるとを問わない。
【0017】
図2は、図1に示したネットワークシステムを用いて構築される本実施の形態によるコラボレーションシステムの全体構成を示す図である。以下、本実施の形態では、CRMにおいて、お客様(カスタマー)とエージェントとが共通のウェブページを参照しながら行う作業に用いるコラボレーションシステムとして説明する。
図2を参照すると、本実施の形態のコラボレーションシステムにおいて、端末100は、コラボレーションサーバ200の管理下で共同作業を行う(以下、この共同作業をセッションと呼ぶ)。また、セッションにおいては、コラボレーションサーバ200を介してウェブサーバ300にアクセスし、作業対象であるウェブページ(コンテンツ)を取得する。
なお、図2には、カスタマーとエージェントとに対応して2つの端末100が図示されているが、実際には3つ以上の端末が接続されていても良い。また、以下の説明において、カスタマーが使用する端末100とエージェントが使用する端末100とを区別する必要がある場合には、カスタマー端末100a、エージェント端末100bというように添え字を付して記載するが、これらを区別する必要がない場合は、単に端末100と記載する。これは、各端末100の構成要素(後述するブラウザ、クライアントプログラム)に関しても同様とする。
【0018】
コンピュータ装置にて実現される端末100は、特に図示しないが、ハードウェア構成として、プログラム制御によりデータ処理を行うCPU(Central Processing Unit)と、CPUを制御するプログラム及び種々のデータを格納するメインメモリや磁気ディスク装置などの記憶装置と、出力手段であるLCD(液晶ディスプレイ)やCRTディスプレイなどの表示装置と、キーボードやマウスなどの入力装置と、ネットワーク400を介して他の端末100やコラボレーションサーバ200、ウェブサーバ300と接続するためのネットワークインターフェイスとを備える。
【0019】
さらに、図2に示すように、端末100は、ウェブベースでのコラボレーションのセッションを実現する機能として、作業実行部110とコラボレーション制御部120とを備える。
この作業実行部110は、プログラム制御されたCPUにて実現される仮想的なソフトウェアブロックであり、ネットワーク400上のウェブサーバ300にアクセスして所望のウェブページを取得し、表示装置に表示したり、入力装置による操作(入力フォームへの入力やスクロール、表示ページの遷移、アノテーションによる書き込みなど)を表示装置に表示されたウェブページに反映させたりする。作業実行部110を実現するソフトウェアとしては、例えば米国マイクロソフト社のInternet Explorerや、米国ネットスケープ・コミュニケーションズ社のNetscape Navigatorなどのブラウザを用いることができる。
【0020】
また、コラボレーション制御部120は、プログラム制御されたCPUにて実現される仮想的なソフトウェアブロックであり、作業実行部110にて行われたウェブページに対する操作を、セッション中の端末100の間で同期させる。このコラボレーション制御部120は、既存のコラボレーションシステムにおけるクライアントプログラムを用いて実現することができる。クライアントプログラムは、ユーザが予め端末100のコンピュータ装置にインストールしても良いし、Javaのアプレットのような形式で提供し、コラボレーションによるセッションを開始する際にコラボレーションサーバ200からダウンロードして実行するようにしても良い。
【0021】
コラボレーションサーバ200は、特に図示しないが、ハードウェア構成として、プログラム制御によりデータ処理を行うCPU(Central Processing Unit)と、CPUを制御するプログラム及びウェブページを含む種々のデータを格納するメインメモリや磁気ディスク装置などの記憶装置と、ネットワーク400を介して端末100と接続するためのネットワークインターフェイスとを備える。
さらに、図2に示すように、コラボレーションサーバ200は、端末100によるコラボレーションのセッションを管理するセッション管理部210と、セッションにおける端末100によるウェブページの取得を仲介するリソース取得手段としてのHTTP送受信制御部220とを備える。
【0022】
このセッション管理部210は、プログラム制御されたCPUにて実現される仮想的なソフトウェアブロックであり、端末100にて行われるコラボレーションのセッションを管理する。具体的にはユーザごとにキャッシュテーブル211を作成し、UAIテーブル212にて管理する。そして、複数のユーザがセッションを結ぶと、同じキャッシュテーブル211を使うように、UAIテーブル212におけるキャッシュテーブル211へのポインタを書き換える。このキャッシュテーブル211及びUAIテーブル212は、記憶装置に格納され、ユーザの操作に応じて、所定の情報が登録される。キャッシュテーブル211及びUAIテーブル212の詳細については後述する。
【0023】
HTTP送受信制御部220は、プログラム制御されたCPUにて実現される仮想的なソフトウェアブロックであり、コラボレーションサーバ200を実現するコンピュータ装置のネットワークインターフェイスを制御して、端末100からのリクエストに応じて所定のウェブサーバ300からウェブページを取得し、要求元の端末100に返す。また、キャッシュテーブル211に登録されているウェブページのリクエストを受け付けた場合は、キャッシュされている当該ウェブページを要求元の端末100に返す。
【0024】
図3は、セッション管理部210によるセッションの管理に利用されるキャッシュテーブル211及びUAIテーブル212の構成を示す図である。
キャッシュテーブル211は、ユーザごとに作成され、当該ユーザの操作に基づいて取得されキャッシュされたウェブページと、そのURL(Uniform Resource Locators)とを対応付けて登録する。所定のセッションにおいて、コラボレーションサーバ200が所定の端末100からキャッシュテーブル211に登録されているURLへのリクエストを受信した場合、キャッシュテーブル211に基づいて、キャッシュされているウェブページが当該端末100へ返送される。
また、キャッシュテーブル211は、セッションオーナー(セッションを開始させたユーザ)のウェブページへのアクセス権限を示す認証情報を登録する。詳しくは後述するが、このキャッシュテーブル211に登録された認証情報を用いることにより、当該セッションに参加している全てのユーザが当該セッションのみにおいて、セッションオーナーのアクセス権限に基づいてウェブページへのアクセスを行うことができる。
【0025】
UAIテーブル212は、セッションに参加するユーザを特定するID情報と当該ユーザが参加しているセッションのキャッシュテーブル211へのポインタとを登録している。本実施の形態では、ユーザのID情報としてIBMCF_UAIというcookie(以下、UAIと略記する)を用いるものとする。所定のセッションに参加するユーザに関しては、参加するセッションのセッションオーナーの持つ(対応付けられている)キャッシュテーブル211へのポインタが登録される。これにより、1つのセッションにおいては1つのキャッシュテーブル211が各参加者によって共有されることとなる。
なお、所定のセッションに参加しているユーザが当該セッションからはずれる場合は、UAIテーブル212における当該ユーザのエントリから当該セッションで用いられているキャッシュテーブル211へのポインタが消去される。そして、必要な場合には、当該ユーザをセッションオーナーとして新たなキャッシュテーブル211が作成され、UAIテーブル212のエントリに当該新たなキャッシュテーブル211へのポインタが登録される。
【0026】
ここで、通常のコラボレーションにおけるセッションの開始、作業の実行、セッションの終了の各動作例を説明する。なお、ユーザはカスタマーとエージェントの2人とし、カスタマーからのリクエストによりセッションが開始されるものとする。また、エージェントは複数存在し、そのうちの1人のエージェントがカスタマーとのセッションに参加するものとする。
初期状態として、各エージェントのエージェント端末100bはコラボレーションサーバ200にログインしているものとする。
【0027】
まず、カスタマーがカスタマー端末100aにてコラボレーションサーバ200にログインする。このとき、コラボレーションサーバ200のセッション管理部210により、当該ユーザ(カスタマー)を特定するUAIが設定され、カスタマーに対して設定されたUAIの情報(ここでは[0001]とする)が、UAIテーブル212に登録され、キャッシュテーブル211が作成される。また、必要な場合には、コラボレーションサーバ200からカスタマー端末100aへ、クライアントプログラムが転送される。
なお、エージェント及びエージェント端末100bに対しては、以上の動作が既に済んでいる。
【0028】
次に、カスタマー端末100aからコラボレーションサーバ200へ、コラボレーションのセッションの開始リクエストが送られたものとする。すると、コラボレーションサーバ200のセッション管理部210により、当該セッションに対して作業の相手となるエージェントが割り振られ、セッションが開始される。ここで、相手となるエージェントは、カスタマーの指定に基づいて割り振られるようにしても良いし、セッションの開始リクエストがあった時点でセッション可能な(例えば他のセッションに参加していない)エージェントの中から適当に選択して割り振られるようにしても良い。
また、カスタマーに対して割り振られたエージェントに関して、UAIテーブル212の当該エージェントのエントリ(UAI:[0002]とする)におけるキャッシュテーブルポインタは、当該カスタマーのキャッシュテーブル211をポイントするように書き換えられる。この際、自分の元のキャッシュテーブル211は削除される。これにより、このセッションにおいて当該エージェントとカスタマーとが1つのキャッシュテーブル211を共有する。
【0029】
セッションにおいて、カスタマー端末100aの作業実行部110aからコラボレーションサーバ200へ、所定のURLを指定したウェブページの取得リクエストが送信されたものとする。すると、コラボレーションサーバ200のHTTP送受信制御部220が当該URLに対応するウェブサーバ300にアクセスし、この取得リクエストにて要求されるウェブページが取得される。取得されたウェブページは、コラボレーションサーバ200の記憶装置にキャッシュされ、キャッシュテーブル211に登録される。そして、このキャッシュされたウェブページがカスタマー端末100aへ返送される。
【0030】
カスタマー端末100aにて要求したウェブページが取得されると(すなわち作業実行部110aにて表示装置に当該ウェブページが表示されると)、コラボレーション制御部120aにより、エージェント端末100bへURL遷移の通知がなされる。この通知は、コラボレーションサーバ200を介して行っても良いし、カスタマー端末100aからエージェント端末100bへ直接行っても良い。
この通知を受信したエージェント端末100bでは、コラボレーション制御部120bが作業実行部110bに、当該通知に基づいて遷移先のURLのウェブページを取得させる。
【0031】
エージェント端末100bの作業実行部110bからコラボレーションサーバ200へ、当該URLを指定したウェブページの取得リクエストが送信されると、当該URLのウェブページがキャッシュされているので、HTTP送受信制御部220により、キャッシュされている当該ウェブページがエージェント端末100bへ返送される。
ここで、ウェブサーバ300からウェブページを毎回取得するのではなく、キャッシュされているウェブページをカスタマー端末100a及びエージェント端末100bに配信するのは、例えば、取得リクエストを受け付けるたび、あるいは取得要求の送信者ごとにダイナミックにウェブページの内容やレイアウトを変更して送信するウェブサイトの場合、カスタマー端末100aとエージェント端末100bとが別々にウェブページを取得すると、その内容やレイアウトが異なってしまい、コラボレーションによる作業を行えなくなってしまうためである。すなわち、キャッシュされたウェブページをカスタマー端末100a及びエージェント端末100bの双方に渡すことにより、同一の内容及びレイアウトのウェブページで作業を行えることを保証している。
【0032】
以上の動作は、セッション中に作業が行われている所定のウェブページから他のウェブページ(URL)へ遷移した場合も同様である。また、エージェント側からURLを遷移した場合も同様であり、エージェント端末100bが取得したウェブページのURLがカスタマー端末100aに通知され、共にキャッシュされたウェブページを取得する。
このセッションからエージェントが抜ける場合は、新規にキャッシュテーブル211を作成し、UAIテーブル212の当該エージェントのエントリ(図3の[0002])において、キャッシュテーブルポインタが新規に作成されたキャッシュテーブル211(図3のキャッシュテーブル#2)を指すように書き換える。また、セッションオーナーであるカスタマーが抜ける場合は、新規にキャッシュテーブル211を作成し、上記と同様にUAIテーブル212の当該エージェントのエントリにおいて、キャッシュテーブルポインタが各々のキャッシュテーブル211を指すように書き換える。つまり既存のキャッシュテーブル211はカスタマーが引き継ぎ、そこに保管されている認証情報が他人に用いられることはない。
【0033】
ここで、上述したカスタマーとエージェントとによるセッションにおいて、カスタマーのみがアクセス権限を有するウェブページ(コンテンツ)のURLへ遷移しようとした場合について考える。
この場合、カスタマーが先にURLの遷移を行ったのであれば、カスタマー自身は当該ウェブページへのアクセス権限を有しているので、問題なくウェブページを取得できる。また、エージェントはコラボレーションサーバ200にキャッシュされた当該ウェブページを取得することができるので、このウェブページに関してセッションを行うことが可能である。
【0034】
しかしながら、エージェントが先にURLの遷移を行った場合、エージェントは当該ウェブページへのアクセス権限を有していないので、コラボレーションサーバ200がウェブサーバ300からウェブページを取得することができない。このため、このウェブページに関してセッションを行うことができないこととなる。
本実施の形態によるコラボレーションシステムは、このような場合に、コラボレーションサーバ200がカスタマー端末100aから取得したカスタマーの認証情報を用いて、当該ウェブページを取得する。以下、具体的に説明する。
【0035】
図4、5は、本実施の形態におけるコラボレーションサーバ200の動作を説明するフローチャートである。
図4、5に示すように、コラボレーションサーバ200のHTTP送受信制御部220は、所定の端末100からウェブページの取得リクエスト(HTTPリクエスト)を受信すると(ステップ401)、まず当該取得リクエストがセッションオーナーから発行されたリクエストか否かを調べる(ステップ402)。そして、セッションオーナーからのリクエストである場合は次に、当該取得リクエストに認証情報(Authorization header)が付されているかどうかを調べる(ステップ403)。
【0036】
セッションオーナーからの取得リクエストに認証情報が付されている場合、HTTP送受信制御部220は、その認証情報を記憶装置に保管し(ステップ404)、UAIテーブル212及びキャッシュテーブル211を参照して、当該取得リクエストにて指定されたURLが登録されているかどうかを調べる(ステップ405)。また、取得リクエストがセッションオーナーから発行されたものでない場合、及びセッションオーナーからの取得リクエストに認証情報が付されていない場合も、キャッシュテーブル211に、当該取得リクエストにて指定されたURLが登録されているかどうかを調べる(ステップ402、403、405)。そして、キャッシュテーブル211に該当URLが登録されている場合、次に、HTTP送受信制御部220は、当該URLに対応付けられてキャッシュされているHTTPレスポンスの内容がステータスコード401かどうか、すなわちアクセス権限がないことを示す内容かどうかを調べる(ステップ406)。
【0037】
キャッシュされているHTTPレスポンスがステータスコード401でない場合、キャッシュの内容は取得リクエストにて要求されているウェブページである。したがって、HTTP送受信制御部220は、次に、当該取得リクエストがセッションオーナーから発行されたリクエストか否かを調べ、セッションオーナーからのリクエストであれば、当該ウェブページ(HTTPレスポンス)を端末100へ返す(ステップ407、410)。
取得リクエストがセッションオーナーから発行されたものでない場合、HTTP送受信制御部220は、次に、キャッシュされているHTTPレスポンスにWWW-Authenticateヘッダがあるかどうかを調べる(ステップ407、408)。ここでは、ステップ406で当該HTTPレスポンスがステータスコード401でないことから当然に、WWW-Authenticateヘッダは存在しない。そこで、HTTP送受信制御部220は、当該ウェブページ(HTTPレスポンス)を端末100へ返す(ステップ410)。
【0038】
ステップ405で、取得リクエストにて指定されたURLがキャッシュテーブル211に登録されていない場合、及びステップ406で、キャッシュされているHTTPレスポンスがステータスコード401であった場合は、取得リクエストにて要求されているウェブページがキャッシュされていないので、当該ウェブページをウェブサーバ300から取得する処理(図5)に移行する。
HTTP送受信制御部220は、まずセッションオーナーの認証情報が記憶装置に保管されているかどうかを調べ、保管されている場合には、当該認証情報を端末100からの取得リクエストに付加する(ステップ501、502)。そして、当該取得リクエストにて指定されたURLに対応するウェブサーバ300に当該取得リクエストを送り(ステップ503)、当該ウェブサーバ300からHTTPレスポンスを受信してキャッシュする(ステップ504、505)。このとき取得するHTTPレスポンスは、取得リクエストにて要求されるウェブページである場合と、取得リクエストが当該ウェブページへのアクセス権限に基づかないことを意味するステータスコード401である場合とがある。後者の場合、HTTPレスポンスには当該ウェブページへのアクセス権限を示す認証情報の入力を要求するWWW-Authenticateヘッダが存在する。
【0039】
この後、HTTP送受信制御部220は、当該取得リクエストがセッションオーナーから発行されたリクエストか否かを調べ、セッションオーナーからのリクエストであれば、ステップ505でキャッシュされたHTTPレスポンスを端末100へ返す(図4、ステップ407、410)。
取得リクエストがセッションオーナーから発行されたものでない場合、HTTP送受信制御部220は、次に、キャッシュされているHTTPレスポンスにWWW-Authenticateヘッダがあるかどうかを調べる(ステップ407、408)。そして、WWW-Authenticateヘッダがない場合は、当該HTTPレスポンスが当該取得リクエストにて要求されたウェブページであるので、当該ウェブページ(HTTPレスポンス)を端末100へ返す(ステップ410)。
一方、WWW-Authenticateヘッダがある場合は、当該HTTPレスポンスはステータスコード401である。これに対し、セッションオーナーでないユーザは当該ウェブページへのアクセス権限を持たず、認証情報を返すこともできないので、認証情報の入力を要求するWWW-Authenticateヘッダを削除し(ステップ409)、HTTPレスポンスを端末100へ返す(ステップ410)。
【0040】
以下、上記のように動作するコラボレーションサーバ200の管理下で、上述したカスタマー(UAI:[0001])とエージェント(UAI:[0002])とによるコラボレーションのセッションにおいて、カスタマーのみがアクセス権限を有するウェブページに対する作業を行う場合の動作について詳細に説明する。
<動作例1>
まず、カスタマーが先にアクセス制御されたウェブページにアクセスする場合の動作について説明する。なお、ここでは、アクセス制御されたウェブページとして、/protected/foo.htmlと/protected/bar.htmlとにアクセスするが、これらのページには同一の認証情報(ユーザID及びパスワード)でアクセスできるものとする。
【0041】
カスタマー端末100aの作業実行部110aからコラボレーションサーバ200へ、/protected/foo.htmlの取得リクエスト(GET /protected/foo.html)が送信されたものとする。この取得リクエストには認証情報であるAuthorization headerが付加されていない(アクセス権限のないアクセス要求)。この時点では、該当するウェブページはキャッシュされていないので、当該取得リクエストはコラボレーションサーバ200からウェブサーバ300へ送られる(図4、5、ステップ401〜405、501、503参照)。そして、取得リクエストに認証情報がないため、ウェブサーバ300からコラボレーションサーバ200へ、ステータスコード401のHTTPレスポンスが返される(ステップ504参照)。このHTTPレスポンスには、認証情報の入力を要求するWWW-Authenticateヘッダが付加されている。
このHTTPレスポンスは、コラボレーションサーバ200の記憶装置にキャッシュされ、カスタマー端末100aに送られる(ステップ505、407、410参照)。
【0042】
上記のHTTPレスポンスを受信したカスタマー端末100aの表示装置には、WWW-Authenticateヘッダに基づいてユーザID及びパスワードの入力を要求する入力フィールドが表示される。図6は、カスタマー端末100aにおける表示画面の例を示す図である。図6において、作業実行部110aにて表示されたブラウザウィンドウ601に、入力フィールド602が表示されている。
カスタマーがユーザID及びパスワードを入力し、確定すると(OKボタンを押すと)、このユーザID及びパスワードを含む認証情報(Authorization header)の付加された/protected/foo.htmlの取得リクエストがコラボレーションサーバ200へ送られる(アクセス権限のあるアクセス要求)。
【0043】
コラボレーションサーバ200では、受信した取得リクエストに付加されている認証情報が抽出して記憶装置に保存される(ステップ401〜404参照)。そして、この取得リクエストに対して再度キャッシュの検索が行われるが、この時点では、先に受信したステータスコード401のHTTPレスポンスがキャッシュされているため、当該取得リクエストはコラボレーションサーバ200からウェブサーバ300へ送られる(ステップ405、406、501、503参照)。今回は、取得リクエストに認証情報があるため、ウェブサーバ300からコラボレーションサーバ200へ、所望のウェブページが返される(ステップ504参照)。
ここで取得されたウェブページは、コラボレーションサーバ200の記憶装置にキャッシュされ、カスタマー端末100aに送られる(ステップ505、407、410参照)。
なお、認証情報のユーザID及びパスワードの一方または双方が間違っている場合は、再びステータスコード401のHTTPレスポンスが返されるので、ユーザID及びパスワードの入力から各動作をやり直す。
【0044】
カスタマー端末100aが/protected/foo.htmlのウェブページを取得すると、通常のコラボレーションのセッションにおける動作として、カスタマー端末100aのコラボレーション制御部120aからエージェント端末100bへセッション対象であるURLが遷移したことが通知される。そして、エージェント端末100bの作業実行部110bからコラボレーションサーバ200へ、/protected/foo.htmlの取得リクエスト(GET /protected/foo.html)が送信される。この取得リクエストには認証情報であるAuthorization headerが付加されていないが、コラボレーションサーバ200には、先にカスタマー端末100aの取得リクエストに応じて取得されたウェブページがキャッシュされているため、これがエージェント端末100bに返送されることとなる(ステップ401〜403、405、406、407、408、410)。
以上のようにして、カスタマー端末100a及びエージェント端末100bがコラボレーションサーバ200にキャッシュされている同一のウェブページを取得したので、このウェブページに対するセッションが可能となる。
【0045】
また、エージェント端末100bの作業実行部110bからコラボレーションサーバ200へ、/protected/bar.htmlの取得リクエスト(GET /protected/bar.html)が送信されたものとする。/protected/bar.htmlは、/protected/foo.htmlと同一の認証情報でアクセスできるウェブページである。この時点では、該当するウェブページはキャッシュされていないので、ウェブサーバ300から取得されることとなる。
エージェント端末100bから送られた取得リクエストには、protected/bar.htmlにアクセスするための認証情報であるAuthorization headerは付加されていないが、コラボレーションサーバ200には、先にカスタマー端末100aの取得リクエストから抽出したAuthorization headerが保存されている(図3参照)ので、これが取得リクエストに付加されて、コラボレーションサーバ200からウェブサーバ300へ送られる(ステップ401〜403、405、501〜503参照)。
この場合、取得リクエストに認証情報があるため、ウェブサーバ300からコラボレーションサーバ200へ、所望のウェブページが返される(ステップ504参照)。そして、当該ウェブページは、コラボレーションサーバ200の記憶装置にキャッシュされ、エージェント端末100bに送られる(ステップ505、407、408、410参照)。
【0046】
エージェント端末100bが/protected/bar.htmlのウェブページを取得すると、通常のコラボレーションのセッションにおける動作として、エージェント端末100bのコラボレーション制御部120bからカスタマー端末100aへセッション対象であるURLが遷移したことが通知される。そして、上述したエージェント端末100bが/protected/foo.htmlのウェブページを取得する動作と同様の動作にて、/protected/bar.htmlのウェブページがカスタマー端末100aにも取得される。
以上のようにして、カスタマー端末100a及びエージェント端末100bがコラボレーションサーバ200にキャッシュされている同一のウェブページを取得したので、このウェブページに対するセッションが可能となる。
【0047】
<動作例2>
次に、エージェントが先にアクセス制御されたウェブページにアクセスする場合の動作について説明する。
エージェント端末100bの作業実行部110bからコラボレーションサーバ200へ、/protected/foo.htmlの取得リクエスト(GET /protected/foo.html)が送信されたものとする。この取得リクエストには認証情報であるAuthorization headerが付加されていない。この時点では、該当するウェブページはキャッシュされていないので、当該取得リクエストはコラボレーションサーバ200からウェブサーバ300へ送られる(ステップ401〜405、501、503参照)。そして、取得リクエストに認証情報がないため、ウェブサーバ300からコラボレーションサーバ200へ、ステータスコード401のHTTPレスポンスが返される(ステップ504参照)。このHTTPレスポンスには、認証情報の入力を要求するWWW-Authenticateヘッダが付加されている。
【0048】
このHTTPレスポンスは、コラボレーションサーバ200の記憶装置にキャッシュされ、エージェント端末100bに送られる。ただし、エージェント端末100bはセッションオーナーではなく、認証情報を入力することができないため、WWW-Authenticateヘッダは削除される(ステップ505、407〜410参照)。
上記のHTTPレスポンスを受信したエージェント端末100bの表示装置には、アクセス権限が無いことを通知する画面が表示される。図7は、エージェント端末100bにおける表示画面の例を示す図である。図7において、作業実行部110bにて表示されたブラウザウィンドウ701には、入力フィールドが表示されておらず、アクセス制限されていることを示すメッセージのみが表示されている。
【0049】
エージェント端末100bがステータスコード401のHTTPレスポンスを受信すると、通常のコラボレーションのセッションにおける動作として、エージェント端末100bのコラボレーション制御部120bからカスタマー端末100aへセッション対象であるURLが遷移したことが通知される。そして、カスタマー端末100aの作業実行部110aからコラボレーションサーバ200へ、/protected/foo.htmlの取得リクエスト(GET /protected/foo.html)が送信される。この取得リクエストには認証情報であるAuthorization headerが付加されていない(ステップ401〜404参照)。
【0050】
コラボレーションサーバ200では、この取得リクエストに対して再度キャッシュの検索が行われるが、この時点では、先に受信したステータスコード401のHTTPレスポンスがキャッシュされているため、当該取得リクエストはコラボレーションサーバ200からウェブサーバ300へ送られる(ステップ405、406、501、503参照)。そして、取得リクエストに認証情報がないため、ウェブサーバ300からコラボレーションサーバ200へ、ステータスコード401のHTTPレスポンスが返される(ステップ504参照)。このHTTPレスポンスには、認証情報の入力を要求するWWW-Authenticateヘッダが付加されている。
このHTTPレスポンスは、コラボレーションサーバ200の記憶装置にキャッシュされ、カスタマー端末100aに送られる(ステップ505、407、410参照)。これにより、カスタマー端末100aの表示装置には、図6に示した、ユーザID及びパスワードの入力を要求する画面が表示される。そして、このHTTPレスポンスに応じて、カスタマー端末100aからコラボレーションサーバ200へ、カスタマーのユーザID及びパスワードを含む認証情報(Authorization header)の付加された/protected/foo.htmlの取得リクエストが送られる。
【0051】
コラボレーションサーバ200では、受信した取得リクエストに付加されている認証情報が抽出して記憶装置に保存される(ステップ401〜404参照)。そして、この取得リクエストに対して再度キャッシュの検索が行われるが、この時点では、先に受信したステータスコード401のHTTPレスポンスがキャッシュされているため、当該取得リクエストはコラボレーションサーバ200からウェブサーバ300へ送られる(ステップ405、406、501、503参照)。今回は、取得リクエストに認証情報があるため、ウェブサーバ300からコラボレーションサーバ200へ、所望のウェブページが返される(ステップ504参照)。
ここで取得されたウェブページは、コラボレーションサーバ200の記憶装置にキャッシュされ、カスタマー端末100aに送られる(ステップ505、407、410参照)。
なお、認証情報のユーザID及びパスワードの一方または双方が間違っている場合は、再びステータスコード401のHTTPレスポンスが返されるので、ユーザID及びパスワードの入力から各動作をやり直す。
【0052】
このとき、エージェント端末100bには既に/protected/foo.htmlというURLのHTTPレスポンスが受信されており、各端末100のコラボレーション制御部120はURLの同期が取れたと認識するが、実際には、エージェント端末100bが受信したHTTPレスポンスはステータスコード401であり、目的のウェブページではない。したがって、このままではセッションを行うことができない。そこで、エージェント端末100bから改めて当該ウェブページの取得リクエストを送信し、コラボレーションサーバ200にキャッシュされているウェブページを取得して、同期を取ることが必要である。
また、以上のプロセスで、コラボレーションサーバ200にはカスタマーの認証情報が保存されたので、これ以降、当該認証情報にてアクセス可能なウェブページに対しては、エージェント端末100bが先に取得リクエストを送信しても取得することが可能である。
なお、コラボレーションサーバ200において一度認証情報を保存した後は、カスタマー端末100aから再度/protected/foo.htmlにアクセスしたり、/protected/bar.htmlにアクセスしたりする場合にも、保存されている認証情報を用いることができるので、カスタマーがユーザID及びパスワードを改めて入力する必要はない。
【0053】
以上のように、本実施の形態によれば、セッションオーナーのみがアクセス権限を有するリソースに対して、当該セッションオーナーがアクセスした際の認証情報をコラボレーションサーバ200に保存しておくことにより、当該セッション中においては、当該セッションオーナーの認証情報すなわちアクセス権限を用いて、当該セッションに参加している他のユーザからのアクセスが可能となる(動作例1における/protected/bar.htmlの場合)。
また、そのようなアクセス制御されたリソースに対し、セッションオーナーがアクセスするより先に他のユーザがアクセスしようとした場合でも、コラボレーションにおけるURLの同期を取るために、セッションオーナーが直ちにアクセスすることとなるので、再度アクセス要求を行うことで、当該リソースを取得することができる(動作例2)。これはすなわち、セッションオーナーに当該リソースにアクセスさせることにより、当該セッションオーナーのアクセス権限を利用することを意味する。
【0054】
なお、上記の動作例において、/protected/foo.htmlと/protected/bar.htmlとを同一の認証情報でアクセス可能として説明した。これに対し、セッションにおいて、複数のアクセス制御されたディレクトリに存在するウェブページ/protected1/foo.htmlと/protected2/bar.htmlとにアクセスしようとする場合、アクセス制御は一般にディレクトリ単位でなされるため、これらにアクセスするために異なるユーザIDまたはパスワードを要することが考えられる。この場合、各ウェブページに対して、セッションオーナーによるアクセスを待ってリソースを取得することとなる。そして、どの認証情報がどのディレクトリに対するものかを管理するために、コラボレーションサーバ200において認証情報と当該認証情報でアクセス可能となるディレクトリとを対応付けたテーブル等を用意し管理することが必要となる。
【0055】
上述したように動作例2において、セッションオーナーがリソースを取得した時点で、セッションオーナーの端末100と他のユーザの端末100とでは、URLの同期は取られているものの表示画面の内容が異なっている(セッションオーナーの端末100には目的のウェブページが表示され、他のユーザの端末100にはステータスコード401に基づくメッセージ画面(図7参照)が表示される)。通常のコラボレーションにて提供される、URLの同期を取る動作では、既にURLが共通であるために他のユーザの端末100に対して自動的に目的のウェブページを再度取得させることができないため、上述した本実施の形態では、他のユーザの端末100(エージェント端末100b)から改めて当該ウェブページに対する取得リクエストが送信された場合に、ウェブページの同期が取られることとした。
しかしながら、処理が複雑になるが、コラボレーション制御部120の機能等を拡張し、各端末100で表示されている画面のレイアウト等を比較し、一致していない場合にセッションオーナー以外の端末100に対して再度ウェブページの取得リクエストを送信させるように制御すれば、自動的に画面の同期を取ることも可能である。
【0056】
なお、上記の説明では、コラボレーションのセッションを行うユーザ(セッションオーナー)がアクセス権限を有するものとして説明したが、セッションの参加者は、UAIテーブル212により、ユーザが使用する端末100で特定されるので、各セッションにおいてはアクセス権限の所在が端末100(セッションオーナーの端末)にあると認定することもできる。すなわちこの場合、コラボレーションサーバ200は、所定のリソースに対してアクセス権限を持たない端末100からアクセス要求があった場合に、他の端末100が持つアクセス権限を用いてリソースを取得し、各端末100に返送することとなる。
【0057】
以上説明したように、本発明によれば、コラボレーションシステムにおいて、作業を行うユーザのうちの特定のユーザのみがアクセス権限を有するリソースに対して、一定条件下で他のユーザのアクセスを認めるアクセス管理を実現することができる。
【図面の簡単な説明】
【図1】 本実施の形態によるコラボレーションシステムを適用するネットワークシステムの構成例を説明する図である。
【図2】 図1に示したネットワークシステムを用いて構築される本実施の形態によるコラボレーションシステムの全体構成を示す図である。
【図3】 本実施の形態におけるセッション管理部によるセッションの管理に利用されるキャッシュテーブル及びUAIテーブルの構成を示す図である。
【図4】 本実施の形態におけるコラボレーションサーバの動作を説明するフローチャートであり、取得リクエストの受け付け時及びHTTPレスポンスの返送時の動作を示すフローチャートである。
【図5】 本実施の形態におけるコラボレーションサーバの動作を説明するフローチャートであり、ウェブサーバにアクセスする際の動作を説明するフローチャートである。
【図6】 ステータスコード401を受信した際のカスタマー端末における表示画面の例を示す図である。
【図7】 ステータスコード401を受信した際のエージェント端末における表示画面の例を示す図である。
Claims (12)
- ネットワークを介してデータを交換することにより行われる複数の端末による共同作業を支援するコラボレーションサーバにおいて、
前記端末からの要求に応じてリソースを取得し、要求元の端末に返送するリソース取得手段と、
前記端末による共同作業のセッションを管理するセッション管理手段とを備え、
前記リソース取得手段は、所定の前記セッションにおいて、当該セッションを開始させたユーザであるセッションオーナーがアクセス権限を持つリソースに対して、当該セッションに参加する当該セッションオーナー以外のユーザの端末から取得リクエストを受け取った場合に、当該セッションオーナーのアクセス権限に基づいて当該リソースを取得することを特徴とするコラボレーションサーバ。 - 前記リソース取得手段は、前記セッションオーナーの端末からの前記リソースに対するアクセス要求から取得された前記アクセス権限を示す情報を、前記セッションオーナー以外のユーザの端末からの取得リクエストに付加することにより、当該リソースを取得することを特徴とする請求項1に記載のコラボレーションサーバ。
- 前記リソース取得手段は、前記リソースに対して前記セッションオーナー以外のユーザの端末から取得リクエストを受け取った場合に、当該セッションオーナーの端末に当該リソースへのアクセス要求を行わせ、当該リソースを取得することを特徴とする請求項2に記載のコラボレーションサーバ。
- ネットワークを介してデータを交換することにより行われる複数の端末による共同作業を支援するコラボレーションサーバにおけるセッション管理方法であって、
前記端末からの要求に応じてリソースを取得し、要求元の端末に返送するステップと、
前記端末による共同作業のセッションを管理するステップと、
所定の前記セッションにおいて、当該セッションを開始させたユーザであるセッションオーナーがアクセス権限を持つリソースに対して、当該セッションに参加する当該セッションオーナー以外のユーザの端末から取得リクエストを受け取った場合に、当該セッションオーナーのアクセス権限に基づいて当該リソースを取得するステップと
を有することを特徴とする前記方法。 - 前記リソースを取得するステップは、前記セッションオーナーの端末からの前記リソースに対するアクセス要求から取得された前記アクセス権限を示す情報を、前記セッションオーナー以外のユーザの端末からの取得リクエストに付加することにより、当該リソースを取得することを特徴とする請求項4に記載の方法。
- 前記リソースを取得するステップは、前記リソースに対して前記セッションオーナー以外のユーザの端末から取得リクエストを受け取った場合に、当該セッションオーナーの端末に当該リソースへのアクセス要求を行わせ、当該リソースを取得することを特徴とする請求項5に記載の方法。
- ネットワークを介してデータを交換することにより行われる複数の端末による共同作業を支援するようにコンピュータを動作させるためのプログラムであって、前記プログラムはコンピュータを
前記端末からの要求に応じてリソースを取得し、要求元の端末に返送するリソース取得手段と、
前記端末による共同作業のセッションを管理するセッション管理手段として機能させるものであり、さらに
前記リソース取得手段は、所定の前記セッションにおいて、当該セッションを開始させたユーザであるセッションオーナーがアクセス権限を持つリソースに対して、当該セッションに参加する当該セッションオーナー以外のユーザの端末から取得リクエストを受け取った場合に、当該セッションオーナーのアクセス権限に基づいて当該リソースを取得するようにコンピュータを機能させることを特徴とするプログラム。 - 前記リソース取得手段は、前記セッションオーナーの端末からの前記リソースに対するアクセス要求から取得された前記アクセス権限を示す情報を、前記セッションオーナー以外のユーザの端末からの取得リクエストに付加することにより、当該リソースを取得するようにコンピュータを機能させることを特徴とする請求項7に記載のプログラム。
- 前記リソース取得手段は、前記リソースに対して前記セッションオーナー以外のユーザの端末から取得リクエストを受け取った場合に、当該セッションオーナーの端末に当該リソースへのアクセス要求を行わせ、当該リソースを取得するようにコンピュータを機能させることを特徴とする請求項8に記載のプログラム。
- ネットワークを介してデータを交換し共同作業を行う複数の端末と、
前記複数の端末に接続され、前記共同作業を支援するコラボレーションサーバと、
を有するコラボレーションシステムにおいて、前記コラボレーションサーバは、
前記端末からの要求に応じてリソースを取得し、要求元の端末に返送するリソース取得手段と、
前記端末による共同作業のセッションを管理するセッション管理手段とを備え、
前記リソース取得手段は、所定の前記セッションにおいて、当該セッションを開始させたユーザであるセッションオーナーがアクセス権限を持つリソースに対して、当該セッションに参加する当該セッションオーナー以外のユーザの端末から取得リクエストを受け取った場合に、当該セッションオーナーのアクセス権限に基づいて当該リソースを取得することを特徴とするコラボレーションシステム。 - 前記リソース取得手段は、前記セッションオーナーの端末からの前記リソースに対するアクセス要求から取得された前記アクセス権限を示す情報を、前記セッションオーナー以外のユーザの端末からの取得リクエストに付加することにより、当該リソースを取得することを特徴とする請求項10に記載のコラボレーションシステム。
- 前記リソース取得手段は、前記リソースに対して前記セッションオーナー以外のユーザの端末から取得リクエストを受け取った場合に、当該セッションオーナーの端末に当該リソースへのアクセス要求を行わせ、当該リソースを取得することを特徴とする請求項11に記載のコラボレーションシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002124887 | 2002-04-25 | ||
JP2002124887 | 2002-04-25 | ||
PCT/JP2003/000872 WO2003091889A1 (fr) | 2002-04-25 | 2003-01-29 | Serveur de collaboration, systeme de collaboration, son procede de gestion de session et programme |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2003091889A1 JPWO2003091889A1 (ja) | 2005-09-02 |
JP4197315B2 true JP4197315B2 (ja) | 2008-12-17 |
Family
ID=29267541
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004500193A Expired - Fee Related JP4197315B2 (ja) | 2002-04-25 | 2003-01-29 | コラボレーションサーバ、コラボレーションシステム、そのセッション管理方法及びプログラム |
Country Status (7)
Country | Link |
---|---|
US (1) | US20050198204A1 (ja) |
EP (1) | EP1505510A4 (ja) |
JP (1) | JP4197315B2 (ja) |
CN (1) | CN1647058A (ja) |
AU (1) | AU2003263594A1 (ja) |
TW (1) | TWI233732B (ja) |
WO (1) | WO2003091889A1 (ja) |
Families Citing this family (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4250577B2 (ja) * | 2004-08-31 | 2009-04-08 | キヤノン株式会社 | 情報処理装置、情報処理方法、ならびにプログラム |
US9112709B1 (en) * | 2005-02-28 | 2015-08-18 | At&T Intellectual Property Ii, L.P. | Ad hoc social work space |
US7617530B2 (en) * | 2005-04-22 | 2009-11-10 | Microsoft Corporation | Rights elevator |
US8875028B2 (en) * | 2006-09-15 | 2014-10-28 | Accenture Global Services Limited | User collaboration system |
US8645468B2 (en) * | 2006-11-08 | 2014-02-04 | International Business Machines Corporation | Collaborative arbitration of polling results in a collaborative computing environment |
US8595202B2 (en) * | 2007-10-03 | 2013-11-26 | Siemens Aktiengesellschaft | Method and system for intra-document object locking in collaborative authoring |
US20090164521A1 (en) * | 2007-12-20 | 2009-06-25 | George Lo | Method and system for integrating multiple authoring applications in a collaborative environment |
US8862979B2 (en) * | 2008-01-15 | 2014-10-14 | Microsoft Corporation | Multi-client collaboration to access and update structured data elements |
JP5195564B2 (ja) * | 2009-03-23 | 2013-05-08 | コニカミノルタホールディングス株式会社 | 情報処理システム、情報処理方法および情報処理装置 |
GB2469501B (en) * | 2009-04-16 | 2012-01-04 | Appshare Ltd | Method and system for network-based collaboration |
JP5655854B2 (ja) * | 2010-03-19 | 2015-01-21 | 日本電気株式会社 | 情報処理装置、端末装置及び情報処理方法 |
US8850196B2 (en) * | 2010-03-29 | 2014-09-30 | Motorola Solutions, Inc. | Methods for authentication using near-field |
JP5408729B2 (ja) | 2010-03-30 | 2014-02-05 | カシオ計算機株式会社 | 制御システム、制御端末、及び制御方法 |
US8904356B2 (en) | 2010-10-20 | 2014-12-02 | International Business Machines Corporation | Collaborative software debugging in a distributed system with multi-member variable expansion |
US8972945B2 (en) * | 2010-10-21 | 2015-03-03 | International Business Machines Corporation | Collaborative software debugging in a distributed system with client-specific access control |
US9009673B2 (en) | 2010-10-21 | 2015-04-14 | International Business Machines Corporation | Collaborative software debugging in a distributed system with collaborative step over operation |
US8671393B2 (en) | 2010-10-21 | 2014-03-11 | International Business Machines Corporation | Collaborative software debugging in a distributed system with client-specific dynamic breakpoints |
US9411709B2 (en) | 2010-11-10 | 2016-08-09 | International Business Machines Corporation | Collaborative software debugging in a distributed system with client-specific event alerts |
US8850397B2 (en) | 2010-11-10 | 2014-09-30 | International Business Machines Corporation | Collaborative software debugging in a distributed system with client-specific display of local variables |
US8990775B2 (en) | 2010-11-10 | 2015-03-24 | International Business Machines Corporation | Collaborative software debugging in a distributed system with dynamically displayed chat sessions |
JP5623271B2 (ja) | 2010-12-27 | 2014-11-12 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | 情報処理装置、権限管理方法、プログラムおよび記録媒体 |
US8739127B2 (en) | 2011-04-20 | 2014-05-27 | International Business Machines Corporation | Collaborative software debugging in a distributed system with symbol locking |
US8656360B2 (en) | 2011-04-20 | 2014-02-18 | International Business Machines Corporation | Collaborative software debugging in a distributed system with execution resumption on consensus |
US8806438B2 (en) | 2011-04-20 | 2014-08-12 | International Business Machines Corporation | Collaborative software debugging in a distributed system with variable-specific messages |
US8756577B2 (en) | 2011-06-28 | 2014-06-17 | International Business Machines Corporation | Collaborative software debugging in a distributed system with private debug sessions |
US10789412B2 (en) * | 2012-02-20 | 2020-09-29 | Wix.Com Ltd. | System and method for extended dynamic layout |
US10185703B2 (en) * | 2012-02-20 | 2019-01-22 | Wix.Com Ltd. | Web site design system integrating dynamic layout and dynamic content |
WO2014033919A1 (ja) * | 2012-08-31 | 2014-03-06 | Necカシオモバイルコミュニケーションズ株式会社 | アクセス許可システム及びアクセス許可判定方法 |
US8955081B2 (en) | 2012-12-27 | 2015-02-10 | Motorola Solutions, Inc. | Method and apparatus for single sign-on collaboraton among mobile devices |
US20140189789A1 (en) * | 2012-12-27 | 2014-07-03 | Motorola Solutions, Inc. | Method and apparatus for ensuring collaboration between a narrowband device and a broadband device |
US9332431B2 (en) | 2012-12-27 | 2016-05-03 | Motorola Solutions, Inc. | Method of and system for authenticating and operating personal communication devices over public safety networks |
US8806205B2 (en) | 2012-12-27 | 2014-08-12 | Motorola Solutions, Inc. | Apparatus for and method of multi-factor authentication among collaborating communication devices |
US8782766B1 (en) | 2012-12-27 | 2014-07-15 | Motorola Solutions, Inc. | Method and apparatus for single sign-on collaboration among mobile devices |
US10511553B2 (en) * | 2013-12-30 | 2019-12-17 | International Business Machines Corporation | Pass through sharing of resources |
US11057395B2 (en) * | 2014-03-24 | 2021-07-06 | Micro Focus Llc | Monitoring for authentication information |
JP6570303B2 (ja) * | 2015-04-30 | 2019-09-04 | キヤノン株式会社 | 処理装置、処理方法、及びプログラム |
US10291667B2 (en) * | 2016-02-01 | 2019-05-14 | Level 3 Communications, Llc | Bulk job provisioning system |
TWI647648B (zh) | 2016-12-30 | 2019-01-11 | 國家中山科學研究院 | Product development management system |
CN110199281B (zh) | 2017-01-20 | 2023-10-13 | 谷歌有限责任公司 | 多用户登录会话 |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08202659A (ja) * | 1995-01-30 | 1996-08-09 | Toshiba Corp | 共有情報処理システム |
JPH09198350A (ja) * | 1996-01-18 | 1997-07-31 | Canon Inc | 環境設定方法及びそのシステム |
US6006018A (en) * | 1995-10-03 | 1999-12-21 | International Business Machines Corporation | Distributed file system translator with extended attribute support |
JP3497342B2 (ja) * | 1997-02-27 | 2004-02-16 | 株式会社日立製作所 | クライアント・サーバシステム、サーバ、クライアント処理方法及びサーバ処理方法 |
US6052785A (en) * | 1997-11-21 | 2000-04-18 | International Business Machines Corporation | Multiple remote data access security mechanism for multitiered internet computer networks |
US6067623A (en) * | 1997-11-21 | 2000-05-23 | International Business Machines Corp. | System and method for secure web server gateway access using credential transform |
US6338064B1 (en) * | 1998-05-14 | 2002-01-08 | International Business Machines Corporation | Method for enabling a web server running a “closed” native operating system to impersonate a user of a web client to obtain a protected file |
US6138120A (en) * | 1998-06-19 | 2000-10-24 | Oracle Corporation | System for sharing server sessions across multiple clients |
US6606663B1 (en) * | 1998-09-29 | 2003-08-12 | Openwave Systems Inc. | Method and apparatus for caching credentials in proxy servers for wireless user agents |
US6385642B1 (en) * | 1998-11-03 | 2002-05-07 | Youdecide.Com, Inc. | Internet web server cache storage and session management system |
EP1018689A3 (en) * | 1999-01-08 | 2001-01-24 | Lucent Technologies Inc. | Methods and apparatus for enabling shared web-based interaction in stateful servers |
JP3454500B2 (ja) * | 1999-06-16 | 2003-10-06 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 情報処理方法、コラボレーション・サーバ、コラボレーション・システム、情報処理プログラムを格納する記憶媒体 |
US6675216B1 (en) * | 1999-07-06 | 2004-01-06 | Cisco Technolgy, Inc. | Copy server for collaboration and electronic commerce |
US6748420B1 (en) * | 1999-11-23 | 2004-06-08 | Cisco Technology, Inc. | Methods and apparatus for providing shared access to an application |
AU2001228235A1 (en) * | 2000-01-27 | 2001-08-07 | Hummingbird Ltd. | A method and system for implementing an enterprise information portal |
AU2001247984A1 (en) * | 2000-02-16 | 2001-08-27 | Bea Systems Inc. | Workflow integration system for enterprise wide electronic collaboration |
JP2002032340A (ja) * | 2000-07-14 | 2002-01-31 | Nec Corp | Webサイトに対するシングルサインオンシステム及び方法並びに記録媒体 |
US7299403B1 (en) * | 2000-10-11 | 2007-11-20 | Cisco Technology, Inc. | Methods and apparatus for obtaining a state of a browser |
GB0025455D0 (en) * | 2000-10-17 | 2000-11-29 | Hewlett Packard Co | Establishing network communication between parties in telephone contact |
US7904504B2 (en) * | 2001-10-31 | 2011-03-08 | Hewlett-Packard Development Company, L.P. | Policy enforcement and access control for distributed networked services |
US20030182551A1 (en) * | 2002-03-25 | 2003-09-25 | Frantz Christopher J. | Method for a single sign-on |
US7237030B2 (en) * | 2002-12-03 | 2007-06-26 | Sun Microsystems, Inc. | System and method for preserving post data on a server system |
-
2003
- 2003-01-29 CN CNA038090880A patent/CN1647058A/zh active Pending
- 2003-01-29 AU AU2003263594A patent/AU2003263594A1/en not_active Abandoned
- 2003-01-29 EP EP03747198A patent/EP1505510A4/en not_active Withdrawn
- 2003-01-29 WO PCT/JP2003/000872 patent/WO2003091889A1/ja active Application Filing
- 2003-01-29 JP JP2004500193A patent/JP4197315B2/ja not_active Expired - Fee Related
- 2003-01-29 US US10/512,447 patent/US20050198204A1/en not_active Abandoned
- 2003-04-02 TW TW092107499A patent/TWI233732B/zh not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
US20050198204A1 (en) | 2005-09-08 |
TW200306094A (en) | 2003-11-01 |
TWI233732B (en) | 2005-06-01 |
WO2003091889A1 (fr) | 2003-11-06 |
EP1505510A4 (en) | 2008-09-10 |
JPWO2003091889A1 (ja) | 2005-09-02 |
CN1647058A (zh) | 2005-07-27 |
EP1505510A1 (en) | 2005-02-09 |
AU2003263594A1 (en) | 2003-11-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4197315B2 (ja) | コラボレーションサーバ、コラボレーションシステム、そのセッション管理方法及びプログラム | |
JP3569122B2 (ja) | セッション管理システム、サービス提供サーバ、セッション管理サーバ、セッション管理方法及び記録媒体 | |
JP4186987B2 (ja) | データベースアクセス制御方法、データベースアクセス制御装置、データベースアクセス制御のためのプログラム、および該プログラムを記録した記録媒体 | |
US7373662B2 (en) | Secure resource access | |
JP4729651B2 (ja) | 認証装置,認証方法およびその方法を実装した認証プログラム | |
JP2004078503A (ja) | ネットワークシステム、ネットワークサーバ、情報処理装置、プログラム、及びデータ生成方法 | |
EP0989501A2 (en) | Method and apparatus for collaboration support | |
JP2004062402A (ja) | タイムアウト管理システム、タイムアウト管理サーバ、およびタイムアウト管理プログラム | |
JP2010273045A (ja) | サーバ装置 | |
US7752438B2 (en) | Secure resource access | |
JPH08314863A (ja) | コンピュータネットワークにおけるセキュリティ方式 | |
JP4872268B2 (ja) | コンテンツ配信方法および携帯端末 | |
JP2008226015A (ja) | セッション権限管理方法 | |
JP3378529B2 (ja) | サーバシステムおよびそのアクセス制御方法 | |
JPH11272613A (ja) | 利用者認証方法及びこの方法を実現するプログラムを格納した記録媒体並びに上記方法を用いる利用者認証システム | |
JP2008077614A (ja) | セッション管理プログラム及びセッション管理方法 | |
JP3437044B2 (ja) | Www環境下で作動するクライアントサーバーシステムにおけるユーザー認証方法 | |
JP2004078352A (ja) | Webページ表示画面共有システム用代理Webサーバ、Webページ表示画面共有システムおよびWebページ表示画面共有システム用代理Webサーバプログラム | |
JP2000322383A (ja) | ネットワーク情報アクセス装置及び同装置のための情報記憶装置 | |
JP2005346571A (ja) | 認証システム及び認証方法 | |
JP2003058423A (ja) | アクセス制御方法、アクセス制御システムおよびアクセス制御プログラム | |
JP2005293161A (ja) | 認証システム、認証方法及びコンピュータプログラム | |
JP2020067861A (ja) | 情報処理装置およびプログラム | |
JP2005293088A (ja) | 認証システム及び認証方法 | |
JP2003058266A (ja) | ライセンス管理方法とライセンス管理プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20041109 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080507 |
|
RD13 | Notification of appointment of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7433 Effective date: 20080526 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20080527 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080807 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20080909 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20080910 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080925 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111010 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |