特許第6287401号(P6287401)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 富士ゼロックス株式会社の特許一覧

<>
  • 特許6287401-中継装置、システム及びプログラム 図000002
  • 特許6287401-中継装置、システム及びプログラム 図000003
  • 特許6287401-中継装置、システム及びプログラム 図000004
  • 特許6287401-中継装置、システム及びプログラム 図000005
  • 特許6287401-中継装置、システム及びプログラム 図000006
  • 特許6287401-中継装置、システム及びプログラム 図000007
  • 特許6287401-中継装置、システム及びプログラム 図000008
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6287401
(24)【登録日】2018年2月16日
(45)【発行日】2018年3月7日
(54)【発明の名称】中継装置、システム及びプログラム
(51)【国際特許分類】
   G06F 21/33 20130101AFI20180226BHJP
【FI】
   G06F21/33
【請求項の数】11
【全頁数】17
(21)【出願番号】特願2014-54624(P2014-54624)
(22)【出願日】2014年3月18日
(65)【公開番号】特開2015-176546(P2015-176546A)
(43)【公開日】2015年10月5日
【審査請求日】2017年3月1日
(73)【特許権者】
【識別番号】000005496
【氏名又は名称】富士ゼロックス株式会社
(74)【代理人】
【識別番号】110000752
【氏名又は名称】特許業務法人朝日特許事務所
(72)【発明者】
【氏名】酒井 悠
【審査官】 宮司 卓佳
(56)【参考文献】
【文献】 特開2012−174137(JP,A)
【文献】 特表2011−505735(JP,A)
【文献】 特開2012−065142(JP,A)
【文献】 特開2013−033437(JP,A)
【文献】 米国特許出願公開第2010/0306547(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F21/00−21/88
(57)【特許請求の範囲】
【請求項1】
サービス提供装置にアクセスするための権限情報をユーザ毎に記憶する記憶手段と、
前記サービス提供装置へのアクセスの要求および前記ユーザを識別する識別情報を含むアクセス要求をクライアント装置から受信する第1受信手段と、
前記受信されたアクセス要求に含まれる識別情報に対応する権限情報が前記記憶手段に記憶されていない場合に、他の中継装置へ該権限情報の取得要求を行う第1要求手段と、
前記取得要求の応答として前記他の中継装置から送信されてくる権限情報を受信する第2受信手段と、
前記受信された権限情報および前記受信されたアクセス要求の少なくともいずれか一方が予め定められた条件を満たす場合に、該受信された権限情報の更新を前記他の中継装置へ要求する第2要求手段と、
前記更新の要求の応答として前記他の中継装置から送信されてくる、更新された権限情報を受信する第3受信手段と、
前記受信された、更新された権限情報を用いて前記サービス提供装置へアクセスするアクセス手段と
を有する中継装置。
【請求項2】
前記第2要求手段は、前記第2受信手段によって受信された権限情報の有効期限が予め定められた条件を満たす場合に、該受信された権限情報の更新を前記他の中継装置へ要求する
請求項1に記載の中継装置。
【請求項3】
前記第2要求手段は、前記受信されたアクセス要求に対応するサービスに要する処理時間が予め定められた閾値以上である場合に、該受信された権限情報の更新を前記他の中継装置へ要求する
請求項1又は2に記載の中継装置。
【請求項4】
サービス提供装置にアクセスするための権限情報をユーザ毎に記憶する記憶手段と、
他の中継装置から権限情報の取得要求を受信する受信手段と、
前記受信された取得要求に対応する権限情報を前記記憶手段から読み出して前記他の中継装置へ送信する第1送信手段と、
前記他の中継装置から前記権限情報の更新の要求を受信した場合に、該受信された更新の要求に対応する権限情報の更新要求を、前記サービス提供装置へ送信し、該サービス提供装置から送信されてくる、更新された権限情報を、前記他の中継装置へ送信する第2送信手段と
を有する中継装置。
【請求項5】
前記第2送信手段は、一の権限情報について複数の他の中継装置から更新の要求を受信した場合、該複数の他の中継装置のいずれか一つに前記更新された権限情報を送信する
請求項4に記載の中継装置。
【請求項6】
前記第2送信手段は、前記サービス提供装置から送信されてくる権限情報の示す権限が制限されるように該権限情報を変更する
請求項4または5に記載の中継装置。
【請求項7】
前記第2送信手段は、前記権限情報の更新の要求の送信元である他の中継装置の種別に基づいて更新の可否を判定する
請求項4乃至6のいずれか1項に記載の中継装置。
【請求項8】
前記第1送信手段は、前記読み出した権限情報の更新要求を前記サービス提供装置へ送信し、該サービス提供装置から送信されてくる更新された権限情報を前記他の中継装置へ送信する
請求項4乃至7のいずれか1項に記載の中継装置。
【請求項9】
第1中継装置と、
第2中継装置と
を有し、
前記第1中継装置は、
サービス提供装置にアクセスするための権限情報をユーザ毎に記憶する第1記憶手段と、
前記サービス提供装置へのアクセスの要求および前記ユーザを識別する識別情報を含むアクセス要求をクライアント装置から受信する第1受信手段と、
前記受信されたアクセス要求に含まれる識別情報に対応する権限情報が前記第1記憶手段に記憶されていない場合に、前記第2中継装置へ該権限情報の取得要求を行う第1要求手段と、
前記取得要求の応答として前記第2中継装置から送信されてくる権限情報を受信する第2受信手段と、
前記受信された権限情報および前記受信されたアクセス要求の少なくともいずれか一方が予め定められた条件を満たす場合に、該受信された権限情報の更新を前記第2中継装置へ要求する第2要求手段と、
前記更新の要求の応答として前記第2中継装置から送信されてくる、更新された権限情報を受信する第3受信手段と、
前記受信された、更新された権限情報を用いて前記サービス提供装置へアクセスするアクセス手段と
を備え、
前記第2中継装置は、
前記サービス提供装置にアクセスするための権限情報をユーザ毎に記憶する第2記憶手段と、
前記第1中継装置から前記権限情報の取得要求を受信する第4受信手段と、
前記受信された取得要求に対応する権限情報を前記第2記憶手段から読み出して前記第1中継装置へ送信する第1送信手段と、
前記第1中継装置から前記権限情報の更新の要求を受信した場合に、該受信された更新の要求に対応する権限情報の更新要求を、前記サービス提供装置へ送信し、該サービス提供装置から送信されてくる、更新された権限情報を、前記第1中継装置へ送信する第2送信手段と
を備える
システム。
【請求項10】
サービス提供装置にアクセスするための権限情報をユーザ毎に記憶する記憶手段を有するコンピュータに、
前記サービス提供装置へのアクセスの要求および前記ユーザを識別する識別情報を含むアクセス要求をクライアント装置から受信するステップと、
前記受信されたアクセス要求に含まれる識別情報に対応する権限情報が前記記憶手段に記憶されていない場合に、他の中継装置へ該権限情報の取得要求を行うステップと、
前記取得要求の応答として前記他の中継装置から送信されてくる権限情報を受信するステップと、
前記受信された権限情報および前記受信されたアクセス要求の少なくともいずれか一方が予め定められた条件を満たす場合に、該受信された権限情報の更新を前記他の中継装置へ要求するステップと、
前記更新の要求の応答として前記他の中継装置から送信されてくる、更新された権限情報を受信するステップと、
前記受信された、更新された権限情報を用いて前記サービス提供装置へアクセスするステップと
を実行させるためのプログラム。
【請求項11】
サービス提供装置にアクセスするための権限情報をユーザ毎に記憶する記憶手段を有するコンピュータに、
他の中継装置から権限情報の取得要求を受信するステップと、
前記受信された取得要求に対応する権限情報を前記記憶手段から読み出して前記他の中継装置へ送信するステップと、
前記他の中継装置から前記権限情報の更新の要求を受信した場合に、該受信された更新の要求に対応する権限情報の更新要求を、前記サービス提供装置へ送信し、該サービス提供装置から送信されてくる、更新された権限情報を、前記他の中継装置へ送信するステップと
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、中継装置、システム及びプログラムに関する。
【背景技術】
【0002】
ネットワーク上のサーバ装置を利用するときに、中継装置を介してサーバ装置にアクセスする技術が知られている。例えば、特許文献1および2には、多機能装置が中継装置と連携して、サービス提供装置にデータをアップロードしたり、サービス提供装置からデータをダウンロードしたりする技術が記載されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2012−113701号公報
【特許文献2】特開2012−118971号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
本発明は、ユーザが、サービス提供装置へのアクセスに必要な自身の権限情報が登録されていない中継装置を介して、サービス提供装置にアクセスできるようにすることを目的とする。
【課題を解決するための手段】
【0005】
請求項1に係る発明は、サービス提供装置にアクセスするための権限情報をユーザ毎に記憶する記憶手段と、前記サービス提供装置へのアクセスの要求および前記ユーザを識別する識別情報を含むアクセス要求をクライアント装置から受信する第1受信手段と、前記受信されたアクセス要求に含まれる識別情報に対応する権限情報が前記記憶手段に記憶されていない場合に、他の中継装置へ該権限情報の取得要求を行う第1要求手段と、前記取得要求の応答として前記他の中継装置から送信されてくる権限情報を受信する第2受信手段と、前記受信された権限情報および前記受信されたアクセス要求の少なくともいずれか一方が予め定められた条件を満たす場合に、該受信された権限情報の更新を前記他の中継装置へ要求する第2要求手段と、前記更新の要求の応答として前記他の中継装置から送信されてくる、更新された権限情報を受信する第3受信手段と、前記受信された、更新された権限情報を用いて前記サービス提供装置へアクセスするアクセス手段とを有する中継装置を提供する。
【0006】
請求項2に係る発明は、請求項1に記載の中継装置において、前記第2要求手段は、前記第2受信手段によって受信された権限情報の有効期限が予め定められた条件を満たす場合に、該受信された権限情報の更新を前記他の中継装置へ要求する。
【0007】
請求項3に係る発明は、請求項1又は2に記載の中継装置において、前記第2要求手段は、前記受信されたアクセス要求に対応するサービスに要する処理時間が予め定められた閾値以上である場合に、該受信された権限情報の更新を前記他の中継装置へ要求する。
【0008】
請求項4に係る発明は、サービス提供装置にアクセスするための権限情報をユーザ毎に記憶する記憶手段と、他の中継装置から権限情報の取得要求を受信する受信手段と、前記受信された取得要求に対応する権限情報を前記記憶手段から読み出して前記他の中継装置へ送信する第1送信手段と、前記他の中継装置から前記権限情報の更新の要求を受信した場合に、該受信された更新の要求に対応する権限情報の更新要求を、前記サービス提供装置へ送信し、該サービス提供装置から送信されてくる、更新された権限情報を、前記他の中継装置へ送信する第2送信手段とを有する中継装置を提供する。
【0009】
請求項5に係る発明は、請求項4に記載の中継装置において、前記第2送信手段は、一の権限情報について複数の他の中継装置から更新の要求を受信した場合、該複数の他の中継装置のいずれか一つに前記更新された権限情報を送信する。
【0010】
請求項6に係る発明は、請求項4または5に記載の中継装置において、前記第2送信手段は、前記サービス提供装置から送信されてくる権限情報の示す権限が制限されるように該権限情報を変更する。
【0011】
請求項7に係る発明は、請求項4乃至6のいずれか1項に記載の中継装置において、前記第2送信手段は、前記権限情報の更新の要求の送信元である他の中継装置の種別に基づいて更新の可否を判定する。
【0012】
請求項8に係る発明は、請求項4乃至7のいずれか1項に記載の中継装置において、前記第1送信手段は、前記読み出された権限情報の更新要求を前記サービス提供装置へ送信し、該サービス提供装置から送信されてくる更新された権限情報を前記他の中継装置へ送信する。
【0013】
請求項9に係る発明は、第1中継装置と、第2中継装置とを有し、前記第1中継装置は、サービス提供装置にアクセスするための権限情報をユーザ毎に記憶する第1記憶手段と、前記サービス提供装置へのアクセスの要求および前記ユーザを識別する識別情報を含むアクセス要求をクライアント装置から受信する第1受信手段と、前記受信されたアクセス要求に含まれる識別情報に対応する権限情報が前記第1記憶手段に記憶されていない場合に、前記第2中継装置へ該権限情報の取得要求を行う第1要求手段と、前記取得要求の応答として前記第2中継装置から送信されてくる権限情報を受信する第2受信手段と、前記受信された権限情報および前記受信されたアクセス要求の少なくともいずれか一方が予め定められた条件を満たす場合に、該受信された権限情報の更新を前記第2中継装置へ要求する第2要求手段と、前記更新の要求の応答として前記第2中継装置から送信されてくる、更新された権限情報を受信する第3受信手段と、前記受信された、更新された権限情報を用いて前記サービス提供装置へアクセスするアクセス手段とを備え、前記第2中継装置は、前記サービス提供装置にアクセスするための権限情報をユーザ毎に記憶する第2記憶手段と、前記第1中継装置から前記権限情報の取得要求を受信する第4受信手段と、前記受信された取得要求に対応する権限情報を前記第2記憶手段から読み出して前記第1中継装置へ送信する第1送信手段と、前記第1中継装置から前記権限情報の更新の要求を受信した場合に、該受信された更新の要求に対応する権限情報の更新要求を、前記サービス提供装置へ送信し、該サービス提供装置から送信されてくる、更新された権限情報を、前記第1中継装置へ送信する第2送信手段とを備えるシステムを提供する。
【0014】
請求項10に係る発明は、サービス提供装置にアクセスするための権限情報をユーザ毎に記憶する記憶手段を有するコンピュータに、前記サービス提供装置へのアクセスの要求および前記ユーザを識別する識別情報を含むアクセス要求アクセス要求をクライアント装置から受信するステップと、前記受信されたアクセス要求に含まれる識別情報に対応する権限情報が前記記憶手段に記憶されていない場合に、他の中継装置へ該権限情報の取得要求を行うステップと、前記取得要求の応答として前記他の中継装置から送信されてくる権限情報を受信するステップと、前記受信された権限情報および前記受信されたアクセス要求の少なくともいずれか一方が予め定められた条件を満たす場合に、該受信された権限情報の更新を前記他の中継装置へ要求するステップと、前記更新の要求の応答として前記他の中継装置から送信されてくる、更新された権限情報を受信するステップと、前記受信された、更新された権限情報を用いて前記サービス提供装置へアクセスするステップとを実行させるためのプログラムを提供する。
【0015】
請求項11に係る発明は、サービス提供装置にアクセスするための権限情報をユーザ毎に記憶する記憶手段を有するコンピュータに、他の中継装置から権限情報の取得要求を受信するステップと、前記受信された取得要求に対応する権限情報を前記記憶手段から読み出して前記他の中継装置へ送信するステップと、前記他の中継装置から前記権限情報の更新の要求を受信した場合に、該受信された更新の要求に対応する権限情報の更新要求を、前記サービス提供装置へ送信し、該サービス提供装置から送信されてくる、更新された権限情報を、前記他の中継装置へ送信するステップとを実行させるためのプログラムを提供する。
【発明の効果】
【0016】
請求項1、4、9、10および11に係る発明によれば、サービス提供装置へのアクセスに必要な権限情報が登録されていない中継装置を介して、サービス提供装置にアクセスすることができる。
請求項2に係る発明によれば、権限情報の有効期限が切れることによってサービス提供装置へアクセスできなくなることを回避することができる。
請求項3に係る発明によれば、権限情報の有効期限が切れることによってサービス提供装置へアクセスできなくなることを回避することができる。
請求項5に係る発明によれば、複数の他の中継装置から権限情報が重複して取得されることが防止される。
請求項6に係る発明によれば、権限情報が登録されていない中継装置を介してサービス提供装置へアクセスする場合のアクセスの権限を、権限情報が登録された中継装置を介してアクセスする場合よりも制限することができる。
請求項7に係る発明によれば、権限情報の更新の可否を他の中継装置の種別に応じて異ならせることができる。
請求項8に係る発明によれば、権限情報の取得要求を受信した際にサービス提供装置へのアクセス権限を更新して他の中継装置に送信することにより、権限情報を取得した他の中継装置による更新要求を低減することができる。
【図面の簡単な説明】
【0017】
図1】システム1の全体構成を示す図。
図2】システム1の機能構成を示す図。
図3】中継装置30のハードウェア構成を示す図。
図4】ユーザ管理テーブルの一例を示す図。
図5】システム1の動作を例示するシーケンス図。
図6】システム1の動作を例示するシーケンス図。
図7】システム1の動作を例示するシーケンス図。
【発明を実施するための形態】
【0018】
1.構成
図1は、本実施形態に係るシステム1の全体構成を示す図である。システム1は、サービス提供装置10A、10Bおよび10Cと、クライアント装置20A、20B、20Cおよび20Dと、中継装置30A、30Bおよび30Cとを備える。なお、以下の説明では、サービス提供装置10A、10Bおよび10Cを区別する必要がない場合には、これらを総称して「サービス提供装置10」という。クライアント装置20A、20B、20Cおよび20Dを区別する必要がない場合には、これらを総称して「クライアント装置20」という。中継装置30A、30Bおよび30Cを区別する必要がない場合には、これらを総称して「中継装置30」という。サービス提供装置10および中継装置30は、インターネット等の通信回線2を介して接続される。クライアント装置20および中継装置30は、LAN(Local Area Network)等の通信回線3を介して通信回線2に接続される。なお、クライアント装置20は、通信回線3および中継装置30を介することなく通信回線2に接続されてもよい。
【0019】
サービス提供装置10は、データを保存するサービス等の各種のサービスを提供する。このサービスは、いわゆるクラウドサービスであってもよい。クライアント装置20がサービス提供装置10にアクセスするには、サービス提供装置10にアクセスする権限を示すトークン(権限情報の一例)が必要となる。この例で、トークンは、アカウントの識別情報や権限が記述されたデータ構造である。クライアント装置20は、例えば画像処理装置であり、ユーザがサービス提供装置10から提供されるサービスを利用するときに用いられる。クライアント装置20は、スキャナ機能の他、コピー機能、プリント機能、ファクシミリ機能等の複数の機能を有していてもよい。中継装置30は、クライアント装置20とサービス提供装置10との間のデータのやり取りを中継する機能を有する。
【0020】
この例で、クライアント装置20が設置される場所は、複数の地域4A、4Bおよび4Cに区分される。中継装置30Aは、地域4Aに設置されたクライアント装置20Aおよび20Bと、サービス提供装置10とのデータのやり取りを中継する。中継装置30Bは、地域4Bに設置されたクライアント装置20Cと、サービス提供装置10とのデータのやり取りを中継する。中継装置30Cは、地域4Cに設置されたクライアント装置20Dとサービス提供装置10とのデータのやり取りを中継する。なお、以下の説明では、地域4A、4Bおよび4Cを区別する必要がない場合には、これらを総称して「地域4」という。
【0021】
システム1のユーザは地域4A、4Bまたは4Cのいずれかに属している。以下の説明では、説明の便宜上、あるユーザが属している地域4を、そのユーザの「ホーム」と呼び、そのユーザが属していない地域を「アウェイ」と呼ぶ。この例で、ユーザU1とユーザU2のホームは地域4Aであり、ユーザU1とユーザU2にとって地域4Bと地域4Cはアウェイである。ユーザは通常、自身が属する地域4に設置されたクライアント装置20を用いて各種作業を行う。各ユーザが属する地域4の中継装置30には、そのユーザのアカウント情報など、そのユーザに関する情報(ユーザ情報)が登録されている。中継装置30は、自装置に登録されているユーザ情報に基づいてユーザ認証などの処理を行う。以下では、ユーザU1、U2、U3およびU4を区別する必要がない場合には、これらを総称して「ユーザU」という。
【0022】
図2は、システム1の機能構成を示す図である。システム1は、サービス提供装置10と、クライアント装置20と、中継装置30aと、中継装置30bとを備える。中継装置30aは、ユーザUのホームに設置された中継装置(第2中継装置の一例)であり、中継装置30bは、ユーザUのアウェイに設置された中継装置(第1中継装置の一例)である。中継装置30bは、第1記憶手段31と、第1受信手段32と、第1要求手段33と、第2受信手段34と、第2要求手段35と、第3受信手段36と、アクセス手段37とを有する。第1記憶手段31は、サービス提供装置10にアクセスするための権限情報をユーザ毎に記憶する。第1受信手段32は、前記サービス提供装置へのアクセスの要求およびユーザを識別する識別情報を含むアクセス要求をクライアント装置20から受信する。第1要求手段33は、第1受信手段32によって受信されたアクセス要求に含まれる識別情報に対応する権限情報が第1記憶手段31に記憶されていない場合に、中継装置30aへ権限情報の取得要求を行う。第2受信手段34は、取得要求の応答として中継装置30aから送信されてくる権限情報を受信する。第2要求手段35は、第2受信手段34によって受信された権限情報および第1受信手段32によって受信されたアクセス要求の少なくともいずれか一方が予め定められた条件を満たす場合に、該受信された権限情報の更新を中継装置30aへ要求する。第3受信手段36は、更新の要求の応答として中継装置30aから送信されてくる、更新された権限情報を受信する。アクセス手段37は、第3受信手段36によって受信された、更新された権限情報を用いて前記サービス提供装置へアクセスする。
【0023】
中継装置30aは、第2記憶手段41と、第4受信手段42と、第1送信手段43と、第2送信手段44とを有する。第2記憶手段41は、サービス提供装置10にアクセスするための権限情報をユーザ毎に記憶する。第4受信手段42は、中継装置30bから権限情報の取得要求を受信する。第1送信手段43は、第4受信手段によって受信された取得要求に対応する権限情報を第2記憶手段41から読み出して、中継装置30bに送信する。第2送信手段44は、中継装置30bから権限情報の更新の要求を受信した場合に、受信された更新の要求に対応する権限情報の更新要求を、サービス提供装置10へ送信する。また、第2送信手段44は、サービス提供装置10から送信されてくる、更新された権限情報を、中継装置30bへ送信する。
【0024】
図3は、中継装置30のハードウェア構成を例示する図である。中継装置30は、CPU(Central Processing Unit)301と、ROM(Read Only Memory)302と、RAM(Random Access Memory)303と、ストレージ304と、通信IF305とを有するコンピュータ装置である。CPU301は、中継装置30の各部を制御する制御装置(プロセッサ)である。ROM302は、プログラムおよびデータを記憶する不揮発性の記憶装置である。RAM303は、CPU301がプログラムを実行する際の作業領域として機能する揮発性の主記憶装置である。ストレージ304は、プログラムおよびデータを記憶する不揮発性の補助記憶装置である。通信IF305は、通信回線2を介した通信を行うためのインターフェースであり、この例では特に、サービス提供装置10およびクライアント装置20と通信を行うためのインターフェースである。
【0025】
この例で、ストレージ304(またはROM302)に記憶されている中継プログラムをCPU301が実行することにより、図2に示される機能が実装される。中継プログラムを実行しているCPU301、またはCPU301および通信IF305は、第1受信手段32、第1要求手段33、第2受信手段34、第2要求手段35、第3受信手段36、アクセス手段37、第4受信手段42、第1送信手段43、第2送信手段44の一例である。ストレージ304は、第1記憶手段31および第2記憶手段41の一例である。なお、サービス提供装置10およびクライアント装置20のハードウェア構成についての詳細な説明は省く。サービス提供装置10は、CPU、ROM、RAM、ストレージおよび通信インターフェースを有するコンピュータ装置である。クライアント装置20は、CPU、ROM、RAM、ストレージ、操作部、表示部、画像読取部および画像形成部を有する画像形成装置である。
【0026】
ストレージ304は、ユーザ管理テーブル308を記憶する。ユーザ管理テーブル308は、ユーザに関する情報(ユーザ情報)の管理に用いられるテーブルである。ユーザ管理テーブル308には、自装置に対応する地域4に属するユーザのユーザ情報が登録されている。すなわち、ユーザ管理テーブル308に登録されているユーザ情報は、中継装置30のそれぞれで異なっている。図1の例では、ユーザU1のユーザ情報とユーザU2のユーザ情報は、中継装置30Aのユーザ管理テーブル308に格納されており、中継装置30Bおよび中継装置30Cのユーザ管理テーブル308には格納されていない。ユーザU3のユーザ情報は、中継装置30Bのユーザ管理テーブル308に格納されており、中継装置30Aおよび中継装置30Cのユーザ管理テーブル308には格納されていない。ユーザU4のユーザ情報は、中継装置30Cのユーザ管理テーブル308に格納されており、中継装置30Aおよび中継装置30Bのユーザ管理テーブル308には格納されていない。
【0027】
図4は、ユーザ管理テーブル308の一例を示す図である。ユーザ管理テーブル308には、アカウント情報と、各サービス提供装置10のトークンとが対応付けて格納される。アカウント情報は、中継装置30へのログインに必要な情報である。アカウント情報には、ユーザIDとパスワードとが含まれる。ユーザIDはユーザを識別する識別情報の一例である。ユーザIDは、ユーザ名であってもよいし、ユーザに割り当てられたメールアドレスであってもよい。トークンは、サービス提供装置10にアクセスする権限を示す情報である。トークンは、ユーザ毎にサービス提供装置10によって発行され、ユーザ管理テーブル308に格納される。この例では、ユーザID「User01@aaa.example.com」と対応付けて、サービス提供装置10Aのトークン「トークンA1」と、サービス提供装置10Bのトークン「トークンB1」とが格納されている。
【0028】
ユーザ管理テーブル308に格納されるトークンには、そのトークンの有効期限を示す情報や、サービス提供装置10にアクセスする権限の内容(例えば、データの参照を許可、データの参照および更新を許可、など)を示す情報が含まれている。各トークンは、サービス提供装置10がトークンを発行する際に有効期限が定められており、定められた有効期限を過ぎるとそのトークンは利用できなくなる。有効期限が過ぎた場合は、ユーザのアカウント情報が登録されている中継装置30が、サービス提供装置10へトークンの更新処理を依頼し、サービス提供装置10が新たなトークンを発行する。
【0029】
2.動作
次に、システム1の動作について説明する。ユーザは通常、ホームに設置されたクライアント装置20を利用する。まず、ユーザは、ホームに設置されたクライアント装置20を用いて、ホームの中継装置30にアカウントを登録する。その後、サービス提供装置10が提供するサービスを利用する場合、ユーザは、ホームに設置されたクライアント装置20を用いてサービス提供装置10にアクセスする。一方、例えば出張などによってユーザが一時的にアウェイに移動する場合がある。その場合、ユーザはアウェイに設置されたクライアント装置20を用いてサービスを利用する。以下の説明では、中継装置30にアカウントを登録する動作と、ユーザがホームに設置されたクライアント装置20を用いてサービスを利用する動作と、ユーザがアウェイに設置されたクライアント装置20を用いてサービスを利用する動作、との3つの動作を説明する。
【0030】
2−1.アカウント登録動作
図5は、ユーザが中継装置30にアカウントを登録する動作を示すシーケンス図である。この例では、ユーザU1が、クライアント装置20Aを用いて、地域4Aの中継装置30Aにアカウントを登録する動作が示されている。まず、ユーザU1は、クライアント装置20Aを用いて中継装置30Aにアカウントの登録要求を行う。具体的には、ユーザは、クライアント装置20Aの操作部を用いた操作により、中継装置30Aにアカウントを登録するためのアカウント情報を入力する。例えば、ユーザU1はユーザIDとして「User01@aaa.example.com」を入力し、パスワードとして「password01」を入力する。
【0031】
ステップS301において、クライアント装置20Aは、ユーザの操作により入力されたアカウント情報を含むアカウント登録要求を中継装置30Aに送信する。ステップS302において、中継装置30AのCPU301は、アカウント登録要求に含まれるアカウント情報を自装置に登録する。すなわち、CPU301は、アカウント登録要求に含まれるアカウント情報を、ユーザ管理テーブル308に格納する。
【0032】
また、CPU301は、ユーザがサービス提供装置10の提供するサービスを利用するために必要なトークンの発行をサービス提供装置10に依頼する。ステップS303において、CPU301は、サービス提供装置10にトークンの発行を要求する。サービス提供装置10は、トークンの発行要求を中継装置30Aから受信する。ステップS304において、サービス提供装置10はトークンを発行し、中継装置30Aへ送信する。中継装置30Aはサービス提供装置10からトークンを受信する。ステップS305において、中継装置30AのCPU301は受信したトークンを、ユーザU1のユーザIDと対応付けてユーザ管理テーブル308に格納する。ステップS306において、CPU301は、アカウントの登録が正常に完了した旨をクライアント装置20Aに通知する。
【0033】
2−2.ホームでサービスを利用する場合の動作
図6は、ユーザがホームのクライアント装置20からサービスを利用する場合の動作を示すシーケンス図である。この例では、地域4Aに属しているユーザU1が、クライアント装置20Aを用いてサービスを利用する場合の動作が示されている。まず、ユーザU1は、クライアント装置20Aを用いて中継装置30Aにログインする。具体的には、ユーザは、クライアント装置20Aの操作部を用いた操作により、中継装置30Aにログインするためのアカウント情報を入力する。例えば、中継装置30Aにログインするためのアカウント情報がユーザID「User01@aaa.example.com」およびパスワード「password01」である場合には、ユーザU1はこのユーザIDおよびパスワードを入力する。
【0034】
ステップS101において、クライアント装置20Aは、ユーザの操作により入力されたアカウント情報を含む認証要求を中継装置30Aに送信する。ステップS102において、中継装置30AのCPU301は、クライアント装置20Aから受信した認証要求に応じて、ユーザ認証を行う。具体的には、CPU301は、認証要求に含まれるアカウント情報が、ユーザ管理テーブル308に格納されているか否かに基づいて、ユーザ認証を行う。認証要求に含まれるアカウント情報がユーザ管理テーブル308に格納されている場合、ユーザ認証は成功する。一方、認証要求に含まれるアカウント情報がユーザ管理テーブル308に格納されていない場合、ユーザ認証は失敗する。この例では、ユーザU1のアカウント情報はユーザ管理テーブル308に登録されているため、ユーザ認証は成功する。ユーザ認証に成功した場合、CPU301は、ステップS103において、ステップS102で行ったユーザ認証の認証結果をクライアント装置20Aに送信する。
【0035】
クライアント装置20Aはユーザ認証が成功したことを示す認証結果を受信した場合には、ステップS104に進む。一方、クライアント装置20Aは、ユーザ認証が失敗したことを示す認証結果を受信した場合には、以降の処理を行わずにこの処理を終了する。この例では、クライアント装置20Aは、ユーザ認証が成功したことを示す認証結果を受信し、ステップS104に進む。
【0036】
ステップS104において、クライアント装置20Aは、サービス提供装置10へのアクセス要求を中継装置30Aへ送信する。このアクセス要求には、ユーザU1のユーザIDとサービス提供装置10が提供するサービスの種別を示す情報とが含まれる。中継装置30AのCPU301は、クライアント装置20Aからアクセス要求を受信する。CPU301は、受信したアクセス要求に含まれるユーザIDに対応するトークンをユーザ管理テーブル308から読み出す。このとき、CPU301は、読み出したトークンの有効期限を参照し、有効期限が切れている場合には、サービス提供装置10へトークンの更新を要求する。ステップS105において、CPU301は、トークンの更新要求をサービス提供装置10へ送信する。サービス提供装置10は、中継装置30Aからの更新要求に応じて新たなトークンを発行する。ステップS106において、サービス提供装置10は、発行したトークンを中継装置30Aへ送信する。中継装置30AのCPU301は、サービス提供装置10から、更新されたトークンを受信する。ステップS107において、CPU301は、受信されたトークンをユーザ管理テーブル308に格納する。なお、トークンの有効期限が切れていない場合には、ステップS105乃至ステップS107の処理は行われない。
【0037】
ステップS108において、CPU301は、更新されたトークンを用いてサービス提供装置10へアクセス要求を行う。すなわち、CPU301は、更新されたトークンと、ステップS104でクライアント装置20Aから受信したアクセス要求とを、サービス提供装置10へ送信する。サービス提供装置10はアクセス要求およびトークンを受信し、受信したトークンを用いて自装置へのアクセスの可否を判定する。ステップS109において、サービス提供装置10は、自装置へのアクセスを許可する場合は、受信したアクセス要求に対応する処理を実行する。例えば、サービス提供装置10は、受信したアクセス要求に含まれるサービス種別に応じたサービスに関する処理を実行する。
【0038】
2−3.アウェイでサービスを利用する場合の動作
図7は、ユーザがアウェイのクライアント装置20からサービスを利用する場合の動作を示すシーケンス図である。この例では、地域4Aに属しているユーザU1が、アウェイのクライアント装置20Cを用いて(すなわち中継装置30Bを介して)サービスを利用する場合の動作が示されている。上述したように、各ユーザのユーザ情報は、そのユーザのホームの中継装置30にしか格納されておらず、アウェイの中継装置30には格納されていない。すなわち、ユーザU1のユーザ情報は中継装置30Bには格納されていない。
【0039】
ユーザU1は、まずクライアント装置20Cを用いて中継装置30Bにログインする。具体的には、ユーザU1は、クライアント装置20Cの操作部を用いた操作により、中継装置30Bにログインするためのアカウント情報を入力する。例えば、中継装置30Aにログインするためのアカウント情報がユーザID「User01@aaa.example.com」およびパスワード「password01」である場合には、ユーザU1はこのユーザIDおよびパスワードを入力する。
【0040】
ステップS201において、クライアント装置20Cは、ユーザの操作により入力されたアカウント情報を含む認証要求を中継装置30Bに送信する。ステップS202において、中継装置30BのCPU301は、クライアント装置20Cから受信した認証要求に応じて、ユーザ認証を行う。認証要求に含まれるアカウント情報が、ユーザ管理テーブル308に格納されている場合、ユーザ認証は成功する。一方、認証要求に含まれるアカウント情報がユーザ管理テーブル308に格納されていない場合、ユーザ認証は失敗する。この例で、中継装置30Bのユーザ管理テーブル308にはユーザU1のユーザ情報は格納されていないため、ユーザ認証は失敗する。CPU301は、ステップS203において、クライアント装置20Cから受信した認証要求を、他の中継装置30、すなわち中継装置30Aおよび30Cへ送信する。なお、図が煩雑になるのを防ぐため、図7には中継装置30Cの図示を省略している。
【0041】
中継装置30AのCPU301は、中継装置30Bから認証要求を受信する。ステップS204において、中継装置30AのCPU301は、受信した認証要求に応じてユーザ認証を行う。この例で、中継装置30Aのユーザ管理テーブル308にユーザU1のユーザ情報が格納されているため、ユーザ認証は成功する。ステップS205において、中継装置30AのCPU301はユーザ認証が成功したことを示す認証結果を中継装置30Bへ送信する。なお、中継装置30Cについては、中継装置30Cのユーザ管理テーブル308にはユーザU1のユーザ情報は格納されていないため、ユーザ認証は失敗する。中継装置30CのCPU301は、認証が失敗したことを示す認証結果を中継装置30Bへ送信する。
【0042】
中継装置30BのCPU301は、中継装置30Aおよび中継装置30Cから認証結果を受信する。中継装置30Aからユーザ認証が成功したことを示す認証結果が受信されるため、ステップS206において、中継装置30BのCPU301は、ユーザ認証が成功したことを示す認証結果をクライアント装置20Cに送信する。クライアント装置20Cはユーザ認証が成功したことを示す認証結果を受信した場合には、ステップS207に進む。一方、クライアント装置20Cは、ユーザ認証が失敗したことを示す認証結果を受信した場合には、以降の処理を行わずにこの処理を終了する。この例では、クライアント装置20Cは、中継装置30Aでユーザ認証が成功したことを示す認証結果を受信し、ステップS207に進む。
【0043】
ステップS207において、クライアント装置20Cは、サービス提供装置10へのアクセス要求を中継装置30Bへ送信する。このアクセス要求には、ユーザU1のユーザIDとサービス提供装置10が提供するサービスの種別を示す情報とが含まれる。
【0044】
中継装置30BのCPU301はクライアント装置20Cからアクセス要求を受信する。CPU301は、受信したアクセス要求に含まれるユーザIDに対応するトークンが格納されている中継装置30、すなわちユーザU1のホームの中継装置30に、トークンの取得要求を送信する。ユーザU1のホームの中継装置30は、ステップS205において、ユーザ認証が成功したことを示す認証結果の送信元の中継装置30である。すなわち、ステップS208において、中継装置30BのCPU301は、受信したアクセス要求に含まれるユーザIDに対応するトークンの取得要求を、中継装置30Aへ送信する。この取得要求には、受信したアクセス要求に含まれるユーザIDが含まれる。中継装置30AのCPU301は、中継装置30Bから受信される取得要求に含まれるユーザIDに対応するトークンをユーザ管理テーブル308から読み出す。ステップS209において、中継装置30AのCPU301は、読み出したトークンを中継装置30Bに送信する。ここで、ステップS209において、中継装置30AのCPU301は、読みだしたトークンを、このトークンに対応するサービス提供装置10へトークンの更新要求を行い、サービス提供装置10にて発行された更新されたトークンを取得し、この更新されたトークンを中継装置30Bに送信するように構成してもよい。
【0045】
ステップS210において、中継装置30BのCPU301は、中継装置30Aから受信されたトークンを更新する必要があるかを判定する。この例で、CPU301は、受信されたトークンの有効期限が予め定められた条件を満たす場合に、更新する必要があると判定する。より具体的には、例えば、CPU301は、トークンの有効期限が既に切れている場合や、トークンが有効である残期間が予め定められた閾値未満である場合に、トークンを更新すると判定する。CPU301は、トークンを更新する場合には、ステップS211の処理に進む。一方、トークンを更新しない場合は、CPU301は、ステップS211およびステップS215の処理をスキップし、ステップS216の処理に進む。
【0046】
サービス提供装置10は、中継装置30からの要求によりトークンを発行する。トークンを更新する場合、サービス提供装置10は、トークンの発行の要求元の中継装置30からの更新要求は受け付ける一方、それ以外の中継装置30(トークンの発行の要求元でない中継装置30)からの更新要求は受け付けない。すなわち、システム1では、サービス提供装置10へトークンの発行を依頼していない装置からは、サービス提供装置10へトークンの更新を依頼することができない。この例で、中継装置30BはユーザU1がサービス提供装置10にアクセスするために必要なトークンの発行を依頼した中継装置ではないため、中継装置30Bがサービス提供装置10へトークンの更新を依頼することができない。そこで、この例では、中継装置30BはユーザU1のトークンを有している中継装置30Aにトークンの更新を依頼する。
【0047】
ステップS211において、中継装置30BのCPU301は、トークンの更新要求を中継装置30Aへ送信する。中継装置30Aは、中継装置30Bからトークンの更新要求を受信する。ステップS212において、中継装置30Aは、トークンの更新要求をサービス提供装置10へ送信する。サービス提供装置10は、中継装置30Aからの更新要求に応じて新たなトークンを発行する。ステップS213において、サービス提供装置10は、発行したトークンを中継装置30Aへ送信する。中継装置30AのCPU301は、サービス提供装置10から、更新されたトークンを受信する。ステップS214において、中継装置30AのCPU301は、受信したトークンを中継装置30Bに送信する。
【0048】
中継装置30BのCPU301は、中継装置30Aから、更新されたトークンを受信する。ステップS215において、中継装置30BのCPU301は、受信されたトークンを予め定められたキャッシュ領域にキャッシュする。ステップS216において、CPU301は、更新されたトークンと、ステップS207においてクライアント装置20Cから受信したアクセス要求とを、サービス提供装置10へ送信する。サービス提供装置10はアクセス要求およびトークンを受信し、受信したトークンを用いて自装置へのアクセスの可否を判定する。ステップS217において、サービス提供装置10は、自装置へのアクセスを許可する場合は、受信したアクセス要求に対応する処理を実行する。例えば、サービス提供装置10は、受信したアクセス要求に含まれるサービス種別に応じたサービスに関する処理を実行する。
【0049】
また、ユーザU1から再度サービス提供装置10へのアクセス要求があった場合は、中継装置30Bは、ステップS215においてキャッシュに格納されたトークンを用いてサービス提供装置10へアクセス要求を行う。すなわち、2回目以降のアクセス要求については、中継装置30Bは、中継装置30Aにトークンの取得要求を行うことなく、キャッシュに格納されたトークンを用いてサービス提供装置10にアクセスする。
【0050】
この実施形態では、ユーザがアウェイのクライアント装置20からサービス提供装置10のサービスを利用する場合に、アウェイの中継装置30がホームの中継装置30からトークンを取得し、サービス提供装置10へのアクセスに必要なトークンが予め定められた条件を満たす場合にトークンの更新を要求する。そのため、例えばユーザのホームで保持されているトークンの有効期限が切れている場合や有効期限が残り少ない場合であっても、サービス提供装置10へアクセスできなくなることが回避される。
【0051】
3.変形例
上述した実施形態は、本発明の一例である。これらの実施形態は、以下のように変形してもよい。また、以下の変形例は、互いに組み合わせてもよい。
【0052】
3−1.変形例1
上述の実施形態に係るシステム1は、サービス提供装置10A、10Bおよび10Cと、クライアント装置20A、20B、20Cおよび20Dと、中継装置30A、30Bおよび30Cとを備えていた。サービス提供装置10、クライアント装置20および中継装置30の台数はシステム1で示した台数に限られない。
【0053】
3−2.変形例2
上述の実施形態では、ユーザ管理テーブル308には、ユーザ情報として各ユーザのアカウント情報およびトークンが記憶された。ユーザ管理テーブル308に記憶されるユーザ情報はこれに限られない。例えば、ユーザの属性(所属部署、勤務地、所属する地域、など)を示す情報がユーザ情報に含まれてもよい。
【0054】
3−3.変形例3
上述の実施形態では、ユーザU1のアウェイの中継装置30BのCPU301は、中継装置30Aから受信したトークンの有効期限が予め定められた条件を満たす場合に、トークンを更新すると判定した。トークンを更新するかの判定は上述したものに限られない。例えば、CPU301は、クライアント装置20Cから受信されたアクセス要求が予め定められた条件を満たすか否かを判定してもよい。
【0055】
例えば、アクセス要求に含まれるサービス種別に応じて判定が行われてもよい。この場合、サービス提供装置10が提供するサービスの種別と、そのサービスに要する処理時間とを対応付けたテーブルを中継装置30Bのストレージ304に予め記憶しておく。中継装置30BのCPU301は、クライアント装置20Cから受信されたアクセス要求に含まれるサービス種別に対応する処理時間をストレージ304に記憶されたテーブルを参照して特定する。CPU301は、特定した処理時間が予め定められた閾値を超える場合に、トークンの有効期限を更新すると判定する。
【0056】
また、上述の実施形態に係る判定(すなわちトークンを用いた判定)と上記アクセス要求を用いた判定とが組み合わされて用いられてもよい。例えば、CPU301は、トークンの有効期限が予め定められた条件を満たし、かつ、アクセス要求に含まれるサービス種別に対応する処理時間が予め定められた閾値を超える場合に、トークンの有効期限を更新すると判定してもよい。
【0057】
また、中継装置30BのCPU301が、トークンを更新するかの判定を行わず、全てのトークンについて更新を要求するようにしてもよい。
【0058】
3−4.変形例4
上述の実施形態において、ユーザU1のホームの中継装置30AのCPU301が、ステップS211においてアウェイの中継装置30Bからトークンの更新要求を受信した場合に、更新を行うか否かを判定してもよい。
【0059】
例えば、CPU301が、更新要求の送信元である中継装置に対応する地域の種別に応じて、更新を行うか否かを判定してもよい。この場合、地域の種別と、その地域からの更新要求を許可するか否かを示すフラグとを対応付けたテーブルを中継装置30Aのストレージ304に予め記憶しておく。中継装置30AのCPU301は、更新要求を他の中継装置30から受信すると、このテーブルを参照して更新を許可するか否かを判定する。
【0060】
3−5.変形例5
上述の実施形態において、ホームの中継装置30が他の複数の中継装置30からトークンの更新要求を受信した場合に、他の複数の中継装置30のいずれかを選択し、選択した中継装置30からの更新要求以外の更新要求を破棄してもよい。例えば、ホームの中継装置30のCPU301が、予め定められた期間内に複数のアウェイの中継装置30から更新要求を受信した場合、最初に受信された更新要求については更新処理を行い、2番目以降に受信された更新要求を破棄してもよい。また、他の例として、CPU301が、予め定められた期間内に複数の更新要求を受信した場合、最後に受信された更新要求に基づいて更新処理を行い、それ以外の更新要求を破棄してもよい。
【0061】
また、ホームの中継装置30が、複数のアウェイの中継装置30からトークンの更新要求を受信した場合、更新要求の送信元である中継装置30のそれぞれで、トークンの有効期限や権限の範囲を異ならせてもよい。例えば、中継装置30Aが中継装置30Bからトークンの更新要求を受信し、その後、中継装置30Cからトークンの更新要求を受信した場合、中継装置30AのCPU301が、中継装置30Cに送信するトークンの権限の範囲が、中継装置30Bに送信するトークンの権限の範囲よりも狭くなるようにトークンを変更してもよい。
【0062】
3−6.変形例6
ホームの中継装置30は、アウェイの中継装置30からトークンの取得要求を受信した場合に、自装置が直接サービス提供装置10へアクセスする場合よりも、トークンの権限の範囲が狭くなるように、アウェイの中継装置30へ送信するトークンを変更してもよい。
【0063】
3−7.変形例7
上述の実施形態では、アウェイの中継装置30は、他の中継装置30へ認証要求を送信し(図7のステップS203)、ステップS205においてユーザ認証が成功したことを示す認証結果の送信元の中継装置30を、ホームの中継装置30とした。ホームの中継装置30の特定の手法はこれに限られない。例えば、ユーザとホームとの対応関係を示すテーブルを、アウェイの中継装置30に予め登録しておく構成とし、アウェイの中継装置30は、このテーブルを参照してホームの中継装置30を特定してもよい。
【0064】
3−8.変形例8
上述した実施形態において、中継装置30のCPU301により実行されるプログラムは、インターネットなどの通信回線を介してダウンロードされてもよい。また、このプログラムは、磁気記録媒体(磁気テープ、磁気ディスクなど)、光記録媒体(光ディスクなど)、光磁気記録媒体、半導体メモリなどの、コンピュータが読取可能な記録媒体に記録した状態で提供されてもよい。
【符号の説明】
【0065】
1…システム、10A、10B、10C…サービス提供装置、20A、20B、20C、20D…クライアント装置、30A、30B、30C…中継装置、31…第1記憶手段、32…第1受信手段、33…第1要求手段、34…第2受信手段、35…第2要求手段、36…第3受信手段、37…アクセス手段、41…第2記憶手段、42…第4受信手段、43…第1送信手段、44…第2送信手段。
図1
図2
図3
図4
図5
図6
図7