JP4197315B2 - コラボレーションサーバ、コラボレーションシステム、そのセッション管理方法及びプログラム - Google Patents

コラボレーションサーバ、コラボレーションシステム、そのセッション管理方法及びプログラム Download PDF

Info

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
Application number
JP2004500193A
Other languages
English (en)
Other versions
JPWO2003091889A1 (ja
Inventor
弘一 高橋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPWO2003091889A1 publication Critical patent/JPWO2003091889A1/ja
Application granted granted Critical
Publication of JP4197315B2 publication Critical patent/JP4197315B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing 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/2147Locking 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

【0001】
技術分野
本発明は、複数台のコンピュータにて、ネットワークを介して共通のリソースに対する共同作業を行うコラボレーションシステムに関する。
【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. 前記リソース取得手段は、前記セッションオーナーの端末からの前記リソースに対するアクセス要求から取得された前記アクセス権限を示す情報を、前記セッションオーナー以外のユーザの端末からの取得リクエストに付加することにより、当該リソースを取得することを特徴とする請求項1に記載のコラボレーションサーバ。
  3. 前記リソース取得手段は、前記リソースに対して前記セッションオーナー以外のユーザの端末から取得リクエストを受け取った場合に、当該セッションオーナーの端末に当該リソースへのアクセス要求を行わせ、当該リソースを取得することを特徴とする請求項に記載のコラボレーションサーバ。
  4. ネットワークを介してデータを交換することにより行われる複数の端末による共同作業を支援するコラボレーションサーバにおけるセッション管理方法であって、
    前記端末からの要求に応じてリソースを取得し、要求元の端末に返送するステップと、
    前記端末による共同作業のセッションを管理するステップと、
    所定の前記セッションにおいて、当該セッションを開始させたユーザであるセッションオーナーがアクセス権限を持つリソースに対して、当該セッションに参加する当該セッションオーナー以外のユーザの端末から取得リクエストを受け取った場合に、当該セッションオーナーのアクセス権限に基づいて当該リソースを取得するステップと
    を有することを特徴とする前記方法。
  5. 前記リソースを取得するステップは、前記セッションオーナーの端末からの前記リソースに対するアクセス要求から取得された前記アクセス権限を示す情報を、前記セッションオーナー以外のユーザの端末からの取得リクエストに付加することにより、当該リソースを取得することを特徴とする請求項に記載の方法。
  6. 前記リソースを取得するステップは、前記リソースに対して前記セッションオーナー以外のユーザの端末から取得リクエストを受け取った場合に、当該セッションオーナーの端末に当該リソースへのアクセス要求を行わせ、当該リソースを取得することを特徴とする請求項に記載の方法。
  7. ネットワークを介してデータを交換することにより行われる複数の端末による共同作業を支援するようにコンピュータを動作させるためのプログラムであって、前記プログラムはコンピュータを
    前記端末からの要求に応じてリソースを取得し、要求元の端末に返送するリソース取得手段と、
    前記端末による共同作業のセッションを管理するセッション管理手段として機能させるものであり、さらに
    前記リソース取得手段は、所定の前記セッションにおいて、当該セッションを開始させたユーザであるセッションオーナーがアクセス権限を持つリソースに対して、当該セッションに参加する当該セッションオーナー以外のユーザの端末から取得リクエストを受け取った場合に、当該セッションオーナーのアクセス権限に基づいて当該リソースを取得するようにコンピュータを機能させることを特徴とするプログラム。
  8. 前記リソース取得手段は、前記セッションオーナーの端末からの前記リソースに対するアクセス要求から取得された前記アクセス権限を示す情報を、前記セッションオーナー以外のユーザの端末からの取得リクエストに付加することにより、当該リソースを取得するようにコンピュータを機能させることを特徴とする請求項に記載のプログラム。
  9. 前記リソース取得手段は、前記リソースに対して前記セッションオーナー以外のユーザの端末から取得リクエストを受け取った場合に、当該セッションオーナーの端末に当該リソースへのアクセス要求を行わせ、当該リソースを取得するようにコンピュータを機能させることを特徴とする請求項に記載のプログラム。
  10. ネットワークを介してデータを交換し共同作業を行う複数の端末と、
    前記複数の端末に接続され、前記共同作業を支援するコラボレーションサーバと、
    を有するコラボレーションシステムにおいて、前記コラボレーションサーバは、
    前記端末からの要求に応じてリソースを取得し、要求元の端末に返送するリソース取得手段と、
    前記端末による共同作業のセッションを管理するセッション管理手段とを備え、
    前記リソース取得手段は、所定の前記セッションにおいて、当該セッションを開始させたユーザであるセッションオーナーがアクセス権限を持つリソースに対して、当該セッションに参加する当該セッションオーナー以外のユーザの端末から取得リクエストを受け取った場合に、当該セッションオーナーのアクセス権限に基づいて当該リソースを取得することを特徴とするコラボレーションシステム。
  11. 前記リソース取得手段は、前記セッションオーナーの端末からの前記リソースに対するアクセス要求から取得された前記アクセス権限を示す情報を、前記セッションオーナー以外のユーザの端末からの取得リクエストに付加することにより、当該リソースを取得することを特徴とする請求項10に記載のコラボレーションシステム。
  12. 前記リソース取得手段は、前記リソースに対して前記セッションオーナー以外のユーザの端末から取得リクエストを受け取った場合に、当該セッションオーナーの端末に当該リソースへのアクセス要求を行わせ、当該リソースを取得することを特徴とする請求項11に記載のコラボレーションシステム。
JP2004500193A 2002-04-25 2003-01-29 コラボレーションサーバ、コラボレーションシステム、そのセッション管理方法及びプログラム Expired - Fee Related JP4197315B2 (ja)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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