JP2017191412A - システムおよびその制御方法 - Google Patents

システムおよびその制御方法 Download PDF

Info

Publication number
JP2017191412A
JP2017191412A JP2016079734A JP2016079734A JP2017191412A JP 2017191412 A JP2017191412 A JP 2017191412A JP 2016079734 A JP2016079734 A JP 2016079734A JP 2016079734 A JP2016079734 A JP 2016079734A JP 2017191412 A JP2017191412 A JP 2017191412A
Authority
JP
Japan
Prior art keywords
resource server
server
token
request
service
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.)
Pending
Application number
JP2016079734A
Other languages
English (en)
Inventor
存 田村
Tamotsu Tamura
存 田村
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2016079734A priority Critical patent/JP2017191412A/ja
Publication of JP2017191412A publication Critical patent/JP2017191412A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】OAuthを適用するクラウドシステムにおいて、ユーザーが複数の複合機を所有し、それらがすべて同一のスコープで動作するよう構成されている場合、特定の複合機でのみ機能を許可することが難しい。
【解決手段】リソースサーバーが提供するサービスに対する認可を行う認可サーバーは、前記リソースサーバーを指定するための指定情報を発行して記憶部に登録し、更に前記記憶部にて登録されているリソースサーバーの指定情報に前記ライセンス情報を対応付けて登録し、前記指定情報は、各リソースサーバーおよびそのサービスを利用する際のトークンの発行および当該トークンの検証にて用いられる。
【選択図】 図5

Description

本願発明は、システムおよびその制御方法に関する。
近年、クラウドサービスが普及してきている。このような状況において、複数のサービスを連携させるために、OAuthと呼ばれる、認可の連携を実現させるための標準プロトコルが策定されている。OAuthによると、ある端末内のアプリケーションからクラウドサービスが管理するデータにアクセスする場合、アプリケーションはユーザーの明示的な認可を得る。ユーザーが認可すると、アプリケーションはアクセスを認められたことを証明する認可トークン(以下、アクセストークン)を受け取り、以降のアクセスはそのアクセストークンを用いて実現できる。特許文献1では、OAuthを利用したアクセストークンを発行するための技術が開示されている。
特開2015−5202号公報
近年、導入後に、機能を向上できる複合機が普及している。例えば、恒久的もしくは一時的に印刷速度を向上させることで、ユーザーの業務拡大や繁忙期などの一時的な印刷量の増加に対応可能な複合機がある。この機能向上は無条件に行われるのでなく、複合機にライセンスがインストールされているなどの一定の条件を満たした場合のみ利用可能となる。ここで、複合機を機能向上させた状態で利用して良いか否かを判定する際の条件によっては、複合機自身がライセンスのインストール状態を確認するのでなく、クラウドサービスと連携して判定した方が良い場合がある。
例えば、複合機において、「100枚の用紙のみを対象として印刷速度を上げる」という制御を行いたい場合を考える。ユーザーが複数の複合機を所有している場合には、個々の複合機に印刷枚数(出力枚数)の記録が分散してしまうため、ある時点において、ユーザーが全部で何枚、高速印刷を実施したかを正確に把握することが難しい。一方、クラウドサービスと連携して制御する場合、クラウドサービスが複数の複合機に印刷指示した枚数を集中して管理できるため、ユーザーの高速印刷の総枚数を正確に把握できる。
クラウドサービスと連携して機能向上の利用可否を判定する場合、複合機をリソースサーバーとして、複合機の機能の利用許可に対応したスコープを含むアクセストークンを用いる、OAuthを適用する構成が考えられる。OAuthを適用した構成によれば、特定ユーザーもしくは特定のジョブに限定して複合機の機能向上を許可することも実現できる。
一方、OAuthを適用した構成にはデメリットもある。すなわち、ユーザーが複数の複合機を所有し、それらがすべて同一のスコープで動作するよう構成されている場合、特定の複合機でのみ機能向上を許可することが難しい。OAuthでは、アクセストークンに対象となるリソースサーバーを識別する情報がないため、リソースサーバーとして複数の複合機が存在する場合、任意のリソースサーバーのみの機能向上(例えば、印刷速度の向上)を行うように制御することができない。
上記問題を鑑み、本願発明は以下の構成を有する。すなわち、サービスを提供するリソースサーバーと、前記リソースサーバーが提供するサービスを利用するクライアントと、前記リソースサーバーが提供するサービスを利用するための認可を行う認可サーバーとを含むシステムであって、前記認可サーバーは、前記リソースサーバーの登録要求に応じて、当該リソースサーバーを指定するための指定情報を発行し記憶部に登録する登録手段と、前記登録手段にて発行された指定情報を前記リソースサーバーに通知する通知手段と、前記リソースサーバーに対するライセンス情報の登録要求に応じて、前記記憶部にて登録されている当該リソースサーバーの指定情報に前記ライセンス情報を対応付けて登録する手段とを有し、前記クライアントは、前記認可サーバーに対し、前記リソースサーバーおよび当該リソースサーバーが提供するサービスを指定して、前記リソースサーバーにて前記サービスを利用するためのトークンの発行を要求する手段を有し、前記認可サーバーは更に、前記クライアントからの前記トークンの発行要求に応じて前記トークンを発行し、前記クライアントに送信する発行手段を有し、前記クライアントは更に、前記認可サーバーにて発行されたトークンを用いて、前記リソースサーバーに前記サービスを要求する手段を有し、前記リソースサーバーは、前記クライアントからの前記サービスの要求に応じて、当該サービスの要求に用いられるトークンの検証要求を、自身の前記指定情報を含めて前記認可サーバーに送信する手段を有し、前記認可サーバーは更に、前記トークンの検証要求に応じて、当該トークンの検証要求に含まれるリソースサーバーの前記指定情報および前記トークンの情報と、前記記憶部に登録されている情報とに基づき、当該トークンの検証を行い、検証結果を応答する検証手段を有し、前記リソースサーバーは更に、前記トークンの検証結果に応じて、前記サービスの要求に対するサービスを提供する提供手段を有する。
本願発明により、複数のリソースサーバーを含むシステムにおいて、各リソースサーバーおよび機能を適切に管理し、ユーザーの利便性を向上させることができる。
本願発明の一実施形態に係るネットワーク構成例を示す図。 本願発明の一実施形態に係る各装置のハードウェアの構成例を示す図。 本願発明の一実施形態に係る各装置のモジュール構成の例を示す図。 本願発明の一実施形態に係る処理フローを示す図。 本願発明の一実施形態に係るアクセストークン検証のフローチャート。 本願発明の一実施形態に係る画面の例を示す図。 本願発明の一実施形態に係る各テーブルの構成例を示す図。
以下、本発明を実施するための実施形態について図面を用いて説明する。なお、以下に示す構成等は一例であり、これに限定するものではない。
[システム構成]
図1は、本実施形態に係るシステムの構成例を示し、各装置が通信可能に接続されたネットワーク上に実現される。WAN(Wide Area Network)100は、システムに含まれる装置が通信可能に構成されたネットワークであり、本実施形態ではWWW(World Wide Web)システムが構築されているものとする。したがって、WAN100には、インターネット等の外部ネットワークが含まれる。LAN(Local Area Network)101、102は、各構成要素を接続する内部ネットワークである。図1には示していないが、WAN100と、LAN101、102との間には、ファイアウォール等が設けられ、一定の通信の制限がなされる。
図1において、LAN101は、認可サーバー151および印刷サーバー152を含んで構成される。また、LAN102は、ユーザー端末171および複合機300、400を含んで構成される。なお、システムは、図1に示した構成に限定するものではなく、更に多くの装置が含まれてもよく、また、各サーバーは複数の装置にて構成されていてもよいし、物理的に同一の装置上に構成されてもよい。また、認可サーバー151、印刷サーバー152はそれぞれ個別のLAN上に構成されていてもよいし同一のLAN上に構成されていてもよい。
認可サーバー151は、アクセストークンの発行を行うサーバーである。印刷サーバー152は、複合機に印刷ジョブを発行するサーバーである。アクセストークンとは、操作権限を有するユーザーにより、他のユーザー(例えば、アプリケーションやサーバー)にその操作権限(利用権限)に対応する操作を許可されたことを証明する情報である。アクセストークンは、操作権限を有するユーザーがアプリケーションに対する認可操作を行うことで発行される。例えば、あるアプリケーションがクラウドサービスが管理するデータにアクセスするためのアクセストークンを用いると、そのアプリケーションは、ユーザーに許可された範囲(アクセストークンで示された範囲)でデータにアクセスできる。ユーザー端末171は、ユーザーが操作するPCなどの情報処理装置である。また複合機300および400は、印刷サーバー152の指示に従い印刷を行うMFP(Multi−Function Peripheral)などの装置である。
[ハードウェア構成]
図2は、本実施形態に係るシステムに含まれる情報処理装置および画像形成装置のハードウェア構成の例を示す。ここでの情報処理装置としては、図1に示す各サーバーやユーザー端末が該当する。また、画像形成装置としては、図1に示す複合機が該当する。以下、情報処理装置として認可サーバー151を例に挙げて説明し、また、画像形成装置として複合機300を例に挙げて説明する。しかし、ハードウェア構成は、図2の構成に限定するものではなく、サーバーや複合機それぞれが異なるハードウェア構成を備えてもよい。
図2(A)は本実施形態に係る、認可サーバー151のハードウェア構成の例を示す。認可サーバー151は、CPU201、RAM202、ROM203、キーボードコントローラ(KBC)205、CRTコントローラ(CRTC)206、ディスクコントローラ(DKC)207、およびネットワークコントローラ(NC)を含んで構成される。各構成要素は、システムバス204を介して通信可能に接続される。
CPU201は、認可サーバー151全体の制御を行う制御部である。CPU201は、ROM203のプログラム用ROMに記憶された、或いは外部メモリ211からRAM202にロードされたOS(Operating System)やアプリケーション等のプログラムを読み出して実行する。RAM202は、揮発性の記憶領域であり、CPU201の主メモリ、ワークエリア等として機能する。KBC205は、キーボード(KB)209やポインティングデバイス(不図示)からのキー入力を制御する。CRTC206は、CRTディスプレイ210の表示を制御する。DKC207は、各種データを記憶するハードディスク(HD)やフロッピー(登録商標)ディスク(FD)等の外部メモリ211におけるデータアクセスを制御する。NC212は、LAN101等のネットワークに接続され、ネットワークに接続された他の機器との通信制御処理を実行する。
尚、後述の全ての説明において、認可サーバー151に関しては、特に断りのない限り実行のハードウェア上の処理主体はCPU201であり、ソフトウェア上の処理主体は外部メモリ211に保持されたアプリケーションプログラムである。
図2(B)は、本実施形態に係る複合機300のハードウェア構成の例を示す。複合機300は、CPU301、RAM302、ROM303、入力部305、印刷部I/F306、MC307、およびスキャナ部I/F308を含んで構成される。各構成要素は、システムバス304を介して通信可能に接続される。CPU301は、複合機300全体の制御を行う制御部であり、ROM303や、外部メモリ311に記憶された制御プログラムに基づいてシステムバス304に接続される各構成要素を制御する。CPU301の処理により生成された画像信号が、印刷部I/F306を介して、印刷部(画像処理装置エンジン)309に出力情報として出力される。また、CPU301は、入力部305を介して印刷サーバー152との通信処理が可能である。
ROM303内のプログラムROMには、CPU301の制御プログラム等が記憶される。ROM303内のフォント用ROMには、出力情報を生成する際に使用するフォントデータ等が記憶される。RAM302は、CPU301の主メモリや、ワークエリア等として機能する揮発性の記憶領域であり、増設ポート(不図示)に接続されるオプションRAMによりメモリ容量を拡張することができるように構成される。また、RAM302は、出力情報展開領域、環境データ格納領域、NVRAM等に用いられる。
外部メモリ311は、不揮発性の記憶領域であり、メモリコントローラ(MC)307によりアクセスを制御され、フォントデータ、プログラム、フォームデータ等を記憶する。また、操作部310は、操作のためのスイッチ及びLED表示器(不図示)等で構成される。
スキャナI/F308は、スキャナ部312とのインターフェースであり、スキャナ部312から受取った画像データに対して、補正、加工、及び編集を行う。スキャナ部312は、紙等の原稿上の画像を露光走査して得られた反射光をCCD(Charge Coupled Device)に入力することで画像の情報を電気信号に変換する。さらに、スキャナ部312は、電気信号をRGBの各色からなる輝度信号に変換し、当該輝度信号を画像データとして読み込む。ユーザーが操作部310から読み取り開始を指示すると、スキャナ部312に原稿読み取り指示が与えられる。スキャナ部312は、この指示に基づき、原稿の読み取り動作を行う。尚、原稿の読み取り方法は原稿フィーダ(不図示)にセットされる自動送り方式の形態であってもよい。また、原稿を不図示のガラス面上に載せ、露光部(不図示)を移動させることで原稿の走査を行う方法であってもよい。
尚、後述の全ての説明において、複合機300に関しては、特に断りのない限り実行のハードウェア上の処理主体はCPU301であり、ソフトウェア上の処理主体は外部メモリ311にインストールされたアプリケーションプログラムである。
[モジュール構成]
図3は、本実施形態に係る、認可サーバー151、印刷サーバー152、および複合機300のモジュール構成の例を示す図である。図3(A)〜(C)はそれぞれ、認可サーバー151、印刷サーバー152、及び複合機300のモジュール構成を示す。なお、本実施形態では、複合機300、400のモジュール構成は同様であるものとして説明する。各モジュールは、対応する装置の記憶部にプログラムとして格納されているものとする。
認可サーバー151は、リソースサーバー管理モジュール501、リソースサーバーライセンス管理モジュール502、アクセストークン管理モジュール503、アクセストークン検証モジュール504、及びユーザー管理モジュール505を含んで構成される。印刷サーバー152は、リソースサーバースコープ要求モジュール601、アクセストークン要求モジュール602、及び印刷指示モジュール603を含んで構成される。複合機300は、リソースサーバー登録要求モジュール701、印刷指示受信モジュール702、アクセストークン検証要求モジュール703、及び印刷モジュール704を含んで構成される。各モジュールの動作については、フローチャートと併せて説明する。また、本実施形態において、権限委譲プロトコルとして、OAuthを用いる前提として説明を行う。なお、権限委譲プロトコルは上記に限定するものではなく、本願発明の要旨を満たすものであれば、他の権限委譲プロトコルを用いてもよい。
なお、本実施形態に係る複合機は、ライセンスに応じて実行可能な複数の機能を備えるものとして説明する。例えば、上述したように、本願発明に係る複合機は、ライセンスに応じて、一時的もしくは一定の制限下で、通常の印刷動作よりも印刷速度が速い高速印刷を実行可能であるとする。なお、複合機(リソースサーバー)における、ライセンスに応じて動作可能となる機能はこれに限定するものではなく、他の機能であってもよい。
[処理フロー]
(リソースサーバー登録処理)
図4(A)は、本実施形態に係る、複合機300をリソースサーバーとして認可サーバー151に登録する際の処理フローである。本処理フローは、例えば、ユーザーが、複合機300の入力部305を介して、複合機300を認可サーバー151に登録する操作を行うことで開始される。
S1にて、複合機300のリソースサーバー登録要求モジュール701は、ユーザーからの指示に応じて、認可サーバー151に対し、リソースサーバーとしての複合機300の登録要求を行う。認可サーバー151のリソースサーバー管理モジュール501は、複合機300から送信された登録要求を受信する。登録要求には、リソースサーバー識別子を含む。リソースサーバーとは、サービス(処理)を提供する処理主体を示し、ここでは印刷処理を行う複合機300が該当する。また、リソースサーバー識別子は、リソースサーバーを一意に識別するための識別情報である。本実施形態では、複合機300が自らのリソースサーバー識別子を発行するものとするが、登録要求を受け付けた際に、認可サーバー151のリソースサーバー管理モジュール501が発行するようにしてもよい。
S2にて、リソースサーバー管理モジュール501は、リソースサーバースコープを生成し、図7(A)に示すようなリソースサーバーテーブルにて複合機300のリソースサーバー識別子と対応付けて記憶する。図7(A)において、複合機300のリソースサーバー識別子が「MFP001」であり、発行されたリソースサーバースコープが「rServer.MFP001」の場合のレコードが記憶されている。なお、リソースサーバーテーブルは、認可サーバー151の外部メモリ211等に保持される。ここでスコープとは、OAuthによる権限委譲プロトコルにおいて、認可情報である認可トークンを発行する際に、その認可トークンによって参照可能なリソースのアクセス範囲を意味する。また、リソースサーバースコープとは、アクセス範囲としてのリソースサーバーを示すスコープであり、本実施形態では、リソースサーバーを指定するための指定情報としても用いられる。
S3にて、リソースサーバー管理モジュール501は、S2で発行したリソースサーバースコープを、登録要求に対する応答として、複合機300に返す。リソースサーバー登録要求モジュール701は、認可サーバー151からリソースサーバースコープを受信すると、図7(B)に示すようなリソースサーバースコープテーブルにて、複合機300に対して発行されたリソースサーバースコープを記憶する。リソースサーバースコープテーブルは、複合機300内部(例えば、外部メモリ311)にて、認可サーバー151から複合機300用に発行されたリソースサーバースコープを記憶する。
(ライセンスの対応付け処理)
図4(B)は、本実施形態に係る複合機300で高速印刷が実施できるように、複合機300に高速印刷用のライセンスを対応付ける処理フローである。本処理フローは、ユーザーが、ユーザー端末171を介して、認可サーバー151でライセンスの対応付けを指示する操作を行うことで開始される。本実施形態において、ユーザー端末171からWebブラウザ(不図示)等を用いて認可サーバー151にアクセスすることで、認可サーバー151は、対応付けを行うための画面(不図示)を提供するものとする。この画面を介して、ユーザーは、ライセンスの対応付けを指示する操作を行うことができる。
S11にて、認可サーバー151のリソースサーバーライセンス管理モジュール502は、複合機300に対する高速印刷用のライセンスの対応付けの要求をユーザー端末171から受信する。この対応付けの要求には、複合機300のリソースサーバー識別子と、対応付けようとするライセンス情報が含まれる。従って、ユーザーは、複合機300のリソースサーバー識別子を把握しており、また、複合機300に高速印刷を実施させるためのライセンス情報(リソースサーバーライセンス情報)を有しているものとする。
S12にて、リソースサーバーライセンス管理モジュール502は、対応付けの処理を行った上で、複合機300に対する高速印刷用のライセンスの対応付けの結果を返信する。リソースサーバーライセンス管理モジュール502は、図7(C)に示すようなリソースサーバーライセンステーブルにて各リソースサーバーのライセンス情報を対応付けて記憶する。リソースサーバーライセンステーブルは、例えば、認可サーバー151の外部メモリ211等に保持される。
図7(C)では、「MFP001」(すなわち、複合機300)には高速印刷用のライセンスである「HighSpeedPrintMFP」が対応付けられている。これにより、「MFP001」が示す複合機では高速印刷が可能となる(機能の実行が許可される)。一方、「MFP002」には高速印刷用のライセンスが対応付けられていないため、「MFP002」が示す複合機では高速印刷は実施できない(機能は有するが許可されていない)。
(アクセストークン発行処理)
図4(C)は、本実施形態に係る、特定の複合機で高速印刷を実行するためのアクセストークンを発行するための処理フローである。本処理フローは、ユーザーが複合機と印刷ジョブを指定して、印刷サーバー152に印刷操作を行うことで開始される。本実施形態において、ユーザー端末171からWebブラウザ(不図示)等を用いて印刷サーバー152にアクセスすることで、印刷サーバー152は、印刷サービスを提供するための画面(不図示)を提供するものとする。この画面を介して、ユーザーは印刷操作を行うことができる。
S21にて、印刷サーバー152は、ユーザー端末171からの印刷要求を受け付ける。印刷要求には、印刷ジョブとして印刷対象のデータと印刷を実行させたい複合機の識別子(リソースサーバー識別子)が含まれる。更に、印刷要求には、高速印刷指示も含まれているとする。なお、印刷対象のデータとしては、画像データであってもよいし、画像データが格納された格納先の情報であってもよい。
印刷要求を受け付けると、S22にて、印刷サーバー152のリソースサーバースコープ要求モジュール601は、認可サーバー151に対し、S21にて印刷要求にて指定された複合機に対応するリソースサーバースコープを要求する。
リソースサーバースコープの要求を受け付けると、S23にて、認可サーバー151のリソースサーバー管理モジュール501は、リソースサーバーテーブル(図7(A))を参照する。そして、リソースサーバー管理モジュール501は、要求されたリソースサーバー識別子に対応するリソースサーバースコープを特定し、印刷サーバー152に返す。リソースサーバースコープの要求にて指定された複合機の識別子が「MFP001」である場合、リソースサーバーテーブル上でリソースサーバー識別子が「MFP001」となっているレコードが参照される。その結果、リソースサーバースコープとして「rServer.MFP001」が返される。
S24にて、印刷サーバー152のアクセストークン要求モジュール602は、認可サーバー151に対し、アクセストークン発行要求を送信する。アクセストークン発行要求には高速印刷を実行するためのスコープに加え、S23で取得したリソースサーバースコープ「rServer.MFP001」が含まれる。ここでのスコープは、ユーザー端末171から要求された、ユーザーが実行したいサービスの内容(つまり、印刷サーバー152が認可を受けたい処理の内容)が示される。従って、本例では、高速印刷を実行するためのスコープが相当する。
アクセストークン発行要求を受け付けると、S25にて、認可サーバー151のアクセストークン管理モジュール503は、図6に示すような認可確認画面800をユーザー端末171の表示部に表示し、アクセストークン発行の許可をユーザーに求める。認可確認画面800を表示する際に、アクセストークン管理モジュール503は、アクセストークン発行要求に含まれるスコープに基づき、対応付けられたライセンスにて、要求されたリソースサーバーとそのサービスが許可され得るか(動作可能か)否かを判定する。ここで、ライセンスによる制限や、ライセンスが対応付けられていないなどの理由より、要求されたリソースサーバーおよびそのサービスが許可されない場合(許可されるスコープの範囲を超えている場合)は、ユーザーはトークンの認可(権限の委譲)ができない。その場合には、その旨を印刷サーバー152に通知してもよい。
また、認可確認画面800の表示方法としては、印刷サーバー152が提供する画面からのリダイレクトなどによりユーザー端末171上の表示画面を遷移させてもよい。認可確認画面800において、許可ボタン801が押下された場合には、アクセストークン発行の許可がなされたものとし、拒否ボタン802が押下された場合には拒否されたものとする。なお、拒否された場合には、処理を中断し、エラーをユーザー端末171および印刷サーバー152に通知してもよい。
S26にて、アクセストークン管理モジュール503は、S25でユーザーからアクセストークン発行を許可されたことに応じて、アクセストークンを発行する。発行したアクセストークンは、図7(D)に示すようなアクセストークンテーブルで記憶される。更に、アクセストークン管理モジュール503は、印刷サーバー152にアクセストークンを返す。
アクセストークンテーブル(図7(D))は、例えば、認可サーバー151の外部メモリ211にて保持される。アクセストークンテーブルにはアクセストークン識別子と、アクセストークンの発行を許可したユーザーのユーザー識別子、およびアクセストークンを要求したクライアントの識別子が対応付けられている。また、アクセストークン識別子には、アクセストークン発行要求時に要求されたスコープも対応付けられている。ユーザー識別子は、ユーザーを一意に識別するための識別情報であり、例えば、印刷サーバー152が提供する印刷サービスの利用登録時に発行されているものとする。アクセストークン識別子は、認可サーバー151によって発行されたアクセストークンを一意に識別するための識別情報であり、発行時に認可サーバー151によって付与されるものとする。クライアント識別子は、認可サーバー151が提供する認可サービスを利用するクライアントを一意に識別するための識別情報であり、ここでは、印刷サーバー152を示す。クライアント識別子は、認可サーバー151を利用可能なクライアントとして予め登録する際に発行してもよいし、新たなクライアントが利用を要求してきた際に発行してもよい。
図7(D)において、例えば、アクセストークン識別子が「T001」のアクセストークンは、ユーザー「UserX」が、印刷サーバー152であるクライアント「PrintServer」に対して発行を許可したアクセストークンを表す。また、「T001」のアクセストークンは、高速印刷スコープ「owner.HighSpeedPrint」とリソースサーバースコープ「rServer.MFP001」を持つため、「MFP001」で高速印刷が可能なアクセストークンでもある。
(高速印刷実行処理)
図4(D)は、本実施形態に係る、アクセストークンを用いて複合機で高速印刷を実行する際の処理フローである。本処理フローは、ユーザーが複合機と印刷ジョブを指定して、印刷サーバー152に印刷操作を行うことで開始される。ここでは、複合機300がユーザーにて指定されたものとして説明する。また、上述したように、複合機が提供する高速印刷は、複合機が提供する機能の一例であり、他の機能に本願発明を適用する場合でも同様の処理を行う。
S31にて、印刷サーバー152の印刷指示モジュール603は、S21にて受信した印刷ジョブと、S26にて受信したアクセストークンおよび高速印刷指示を、印刷要求として複合機300に送信する。
印刷要求を受信すると、S32にて、複合機300のアクセストークン検証要求モジュール703は、S31にて受信した印刷要求に含まれるアクセストークンの検証要求を、認可サーバー151に送信する。アクセストークンの検証要求には、S31にて受信したアクセストークンと、高速印刷を実行するためのスコープおよび自身(複合機300)を表すリソースサーバースコープを含む。また、検証要求は、印刷ジョブにて指定されている印刷ページ数の情報も含む。
S33にて、認可サーバー151のアクセストークン検証モジュール504は、S32で受信したアクセストークンの検証要求に応答して、複合機300にて高速印刷の利用を許可するか否かを判定する。ここでの判定の詳細については図5を用いて後述する。
S34にて、アクセストークン検証モジュール504は、S33の判定結果をアクセストークンの検証結果として複合機300に返す。
S35にて、複合機300の印刷モジュール704は、S34で受信したアクセストークン検証結果が、高速印刷を許可する判定結果であった場合は、S31にて受信した印刷要求に基づき高速印刷を実行する。一方、アクセストークン検証結果が、高速印刷を許可しない判定結果であった場合は、印刷モジュール704は、通常速度で印刷を実施する。もしくは、印刷モジュール704は、印刷を実施しないように構成してもよい。
S36にて、複合機300の印刷指示受信モジュール702は、S35の印刷結果を印刷サーバー152に通知する。印刷を実施しなかった場合、もしくは、通常速度で印刷を実施した場合には、その旨を通知する。
S37にて、印刷サーバー152の印刷指示モジュール603は、S36で受信した印刷結果をユーザー(ユーザー端末171)に通知する。そして、本処理フローを終了する。
(アクセストークン検証処理)
図5は、本実施形態に係るアクセストークン検証の処理フローであり、図4(D)のS33における、認可サーバー151のアクセストークン検証モジュール504による処理の詳細を示す。
S501にて、アクセストークン検証モジュール504は、S32で受信した検証要求にて指定されたアクセストークンに対応付けられたスコープとユーザー識別子をアクセストークンテーブル(図7(D))から取得する。例えば、検証要求にて指定されたアクセストークンのアクセストークン識別子が「T001」である場合、スコープは「owner.HighSpeedPrint」と「rServer.MFP001」が取得され、ユーザー識別子は「UserX」が取得される。
S502にて、アクセストークン検証モジュール504は、S32で受信した検証要求にて指定された複合機300のリソースサーバースコープを含む全てのスコープが、S501で取得したスコープに含まれているか否かを判定する。全てのスコープが含まれると判定された場合は(S502にてYES)S503に遷移し、一部でも含まれないと判定された場合は(S502にてNO)S1050に遷移する。例えば、S32で受信した検証要求にて指定されたスコープが「owner.HighSpeedPrint」(利用したい機能を示すスコープ)と「rServer.MFP001」(機能を実行させたいリソースサーバーを示すスコープ)であったとする。また、S32で受信した検証要求にて指定されたアクセストークンのアクセストークン識別子が「T001」であったとする。この場合、図7(D)に示すアクセストークンテーブルの登録内容に基づき、両方のスコープを含むと判定される。一方、S32で受信した検証要求にて指定されたアクセストークンのアクセストークン識別子が「T002」もしくは「T003」であった場合、図7(D)に示すアクセストークンテーブルの登録内容に基づき、「rServer.MFP001」が含まれないと判定される。
S503にて、アクセストークン検証モジュール504は、S32で受信したアクセストークンに対応付けられたスコープに含まれるリソースサーバースコープに対応する複合機を、リソースサーバーテーブル(図7(A))を参照して特定する。また、アクセストークン検証モジュール504は、リソースサーバーライセンステーブル(図7(C))を参照して、特定した複合機のリソースサーバーライセンス情報を取得する。
S504にて、アクセストークン検証モジュール504は、S503で取得したリソースサーバーライセンス情報に、高速印刷用のリソースサーバーライセンスである「HighSpeedPrintMFP」が含まれているか否かを判定する。高速印刷用のリソースサーバーライセンスが含まれていると判定された場合は(S504にてYES)S505に遷移し、含まれていないと判定された場合は(S504にてNO)S509に遷移する。例えば、S32で受信した検証要求にて指定されたアクセストークンの識別子が「T001」であった場合、各テーブルに基づき、対応付けられたリソースサーバースコープは「rServer.MFP001」であり、リソースサーバーライセンス情報として「HighSpeedPrintMFP」を含むと判定される。一方、リソースサーバースコープが「rServer.MFP002」となるアクセストークンであった場合、リソースサーバーライセンス情報として「HighSpeedPrintMFP」を含まないと判定される。
S505にて、アクセストークン検証モジュール504は、S501で取得したユーザーに対応付けられたライセンス情報と、高速印刷可能な残りページ数を、ユーザー管理モジュール505から取得する。図7(E)は、ユーザー管理モジュール505で管理されるユーザーライセンステーブルである。ユーザーライセンステーブルは、例えば、認可サーバー151の外部メモリ211にて保持される。図7(E)に示すユーザーライセンステーブルでは、ユーザーライセンスに対応して、高速印刷が可能なページ数が定義されている。このページ数は一例であり、例えば、ユーザーライセンスごとに実行可能な上限数が定義されていてもよい。また、ユーザーライセンスにて許可もしくは制限される機能はページ数に限定するものではなく、例えば、実行する期間やカラー/モノクロ印刷などであってもよい。
S506にて、アクセストークン検証モジュール504は、S505で取得したライセンス情報を確認する。ここでは高速印刷用のユーザーライセンス「HighSpeedPrintUser」が含まれていること、および、S32で受信した印刷ページ数がS505で取得した高速印刷可能な残りページ数を超えていないことを確認する。ここで高速印刷用のユーザーライセンスがあり、かつ印刷ページ数が高速印刷可能な残りページ数を超えないと判定された場合は(S506にてYES)S507に遷移する。いずれか一方または両方の条件を満たさないと判定された場合は(S506にてNO)S509に遷移する。
S507にて、アクセストークン検証モジュール504は、ユーザー管理モジュール505で管理する高速印刷可能な残りページ数を、印刷ページ数を減算した値で更新する。例えば、S32で受信した検証要求にて指定されたアクセストークンの識別子が「T001」であり、指定された高速印刷のページ数が「30」であった場合を考える。各テーブルを参照すると、アクセストークン「T001」に対応付けられたユーザー識別子は「UserX」であり、ユーザー「UserX」は高速印刷用のユーザーライセンス「HighSpeedPrintUser」を有する。更に、そのユーザーライセンスにおいて高速印刷可能な残りページ数(ここでは100ページ)は印刷ページ数(ここでは30ページ)以上であると判定される。また、アクセストークン検証の結果、ユーザー「UserX」の高速印刷可能な残りページ数は、70ページに更新される。このように、高速印刷可能な残りページ数を認可サーバー151側で管理することで、ユーザーが複数の複合機を使用する場合でも、それぞれの複合機で印刷した総ページ数に基づいて、高速印刷可能な残りページ数を管理することが可能である。つまり、認可サーバー151側でまとめて複数の複合機に対する、ユーザーライセンス情報による利用状況を管理することができる。
S508にて、アクセストークン検証モジュール504は、アクセストークン検証の結果、高速印刷の実行が許可されたことを複合機300に通知する。その後、本処理フローを終了する。
S509にて、アクセストークン検証モジュール504は、高速印刷の実行が不許可であることを複合機300に通知する。そして、本処理フローを終了する。
本実施形態により、複数の複合機を含むシステムにおいて、クラウドサービスと連携して複数の複合機の管理を行いつつ、特定の複合機でのみ所定の機能を実行させるように制御、管理することができる。その結果、複数の複合機それぞれの機能を適切に管理でき、ユーザーによる利便性が向上する。
<その他の実施形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピューターにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
151 認可サーバー、152 プリントサーバー、300 複合機、501 リソースサーバー管理モジュール、502 リソースサーバーライセンス管理モジュール、503 アクセストークン管理モジュール、504 アクセストークン検証モジュール、505 ユーザー管理モジュール、703 アクセストークン検証要求モジュール、704 印刷モジュール

Claims (8)

  1. サービスを提供するリソースサーバーと、前記リソースサーバーが提供するサービスを利用するクライアントと、前記リソースサーバーが提供するサービスを利用するための認可を行う認可サーバーとを含むシステムであって、
    前記認可サーバーは、
    前記リソースサーバーの登録要求に応じて、当該リソースサーバーを指定するための指定情報を発行し記憶部に登録する登録手段と、
    前記登録手段にて発行された指定情報を前記リソースサーバーに通知する通知手段と、
    前記リソースサーバーに対するライセンス情報の登録要求に応じて、前記記憶部にて登録されている当該リソースサーバーの指定情報に前記ライセンス情報を対応付けて登録する手段と
    を有し、
    前記クライアントは、
    前記認可サーバーに対し、前記リソースサーバーおよび当該リソースサーバーが提供するサービスを指定して、前記リソースサーバーにて前記サービスを利用するためのトークンの発行を要求する手段を有し、
    前記認可サーバーは更に、
    前記クライアントからの前記トークンの発行要求に応じて前記トークンを発行し、前記クライアントに送信する発行手段を有し、
    前記クライアントは更に、
    前記認可サーバーにて発行されたトークンを用いて、前記リソースサーバーに前記サービスを要求する手段を有し、
    前記リソースサーバーは、
    前記クライアントからの前記サービスの要求に応じて、当該サービスの要求に用いられるトークンの検証要求を、自身の前記指定情報を含めて前記認可サーバーに送信する手段を有し、
    前記認可サーバーは更に、
    前記トークンの検証要求に応じて、当該トークンの検証要求に含まれるリソースサーバーの前記指定情報および前記トークンの情報と、前記記憶部に登録されている情報とに基づき、当該トークンの検証を行い、検証結果を応答する検証手段を有し、
    前記リソースサーバーは更に、
    前記トークンの検証結果に応じて、前記サービスの要求に対するサービスを提供する提供手段を有することを特徴とするシステム。
  2. 前記システムは、複数の前記リソースサーバーを含み、
    前記登録手段は、前記複数のリソースサーバーそれぞれに対して異なる指定情報を生成して登録することを特徴とする請求項1に記載のシステム。
  3. 前記システムは、権限委譲プロトコルとしてOAuthを用い、
    前記リソースサーバーを示す指定情報は、OAuthにおける、当該リソースサーバーをアクセス範囲としたスコープであることを特徴とする請求項1または2に記載のシステム。
  4. 前記発行手段は、発行を要求されたトークンが対象とする前記リソースサーバーおよび当該リソースサーバーが提供するサービスの利用が、前記記憶部にて登録されている前記リソースサーバーの前記ライセンス情報にて許可されている場合に、前記トークンを発行することを特徴とする請求項1乃至3のいずれか一項に記載のシステム。
  5. 前記発行手段は、前記リソースサーバーの機能を利用する権限を有するユーザーの許可に基づいて、前記クライアントに前記トークンを発行することを特徴とする請求項1乃至4のいずれか一項に記載のシステム。
  6. 前記認可サーバーは、前記発行手段が発行したトークンと当該トークンの発行を許可したユーザーとを対応付けて前記記憶部にて保持する手段を更に有することを特徴とする請求項1乃至5のいずれか一項に記載のシステム。
  7. 前記リソースサーバーは、画像形成装置であることを特徴とする請求項1乃至6のいずれか一項に記載のシステム。
  8. サービスを提供するリソースサーバーと、前記リソースサーバーが提供するサービスを利用するクライアントと、前記リソースサーバーが提供するサービスを利用するための認可を行う認可サーバーとを含むシステムの制御方法であって、
    前記認可サーバーにおいて、前記リソースサーバーの登録要求に応じて、当該リソースサーバーを指定するための指定情報を発行し記憶部に登録する登録工程と、
    前記認可サーバーにおいて、前記登録工程にて発行された指定情報を前記リソースサーバーに通知する通知工程と、
    前記認可サーバーにおいて、前記リソースサーバーに対するライセンス情報の登録要求に応じて、前記記憶部にて登録されている当該リソースサーバーの指定情報に前記ライセンス情報を対応付けて登録する工程と
    前記クライアントにおいて、前記認可サーバーに対し、前記リソースサーバーおよび当該リソースサーバーが提供するサービスを指定して、前記リソースサーバーにて前記サービスを利用するためのトークンの発行を要求する工程と、
    前記認可サーバーにおいて、前記クライアントからの前記トークンの発行要求に応じて前記トークンを発行し、前記クライアントに送信する発行工程と、
    前記クライアントにおいて、前記認可サーバーにて発行されたトークンを用いて、前記リソースサーバーに前記サービスを要求する工程と、
    前記リソースサーバーにおいて、前記クライアントからの前記サービスの要求に応じて、当該サービスの要求に用いられるトークンの検証要求を、自身の前記指定情報を含めて前記認可サーバーに送信する工程と、
    前記認可サーバーにおいて、前記トークンの検証要求に応じて、当該トークンの検証要求に含まれるリソースサーバーの前記指定情報および前記トークンの情報と、前記記憶部に登録されている情報とに基づき、当該トークンの検証を行い、検証結果を応答する検証工程と、
    前記リソースサーバーにおいて、前記トークンの検証結果に応じて、前記サービスの要求に対するサービスを提供する提供する工程と
    を有することを特徴とするシステムの制御方法。
JP2016079734A 2016-04-12 2016-04-12 システムおよびその制御方法 Pending JP2017191412A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016079734A JP2017191412A (ja) 2016-04-12 2016-04-12 システムおよびその制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016079734A JP2017191412A (ja) 2016-04-12 2016-04-12 システムおよびその制御方法

Publications (1)

Publication Number Publication Date
JP2017191412A true JP2017191412A (ja) 2017-10-19

Family

ID=60084772

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016079734A Pending JP2017191412A (ja) 2016-04-12 2016-04-12 システムおよびその制御方法

Country Status (1)

Country Link
JP (1) JP2017191412A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020119342A (ja) * 2019-01-24 2020-08-06 株式会社リコー 情報処理システム、認証基盤、認可情報検証方法、及びプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020119342A (ja) * 2019-01-24 2020-08-06 株式会社リコー 情報処理システム、認証基盤、認可情報検証方法、及びプログラム
JP7131408B2 (ja) 2019-01-24 2022-09-06 株式会社リコー 情報処理システム、認証基盤、認可情報検証方法、及びプログラム

Similar Documents

Publication Publication Date Title
US9230078B2 (en) Authentication system, control method thereof, service provision device, and storage medium
US10050940B2 (en) Connection control system, management server, connection support method, and non-transitory computer-readable recording medium encoded with connection support program
US7865933B2 (en) Authentication agent apparatus, authentication method, and program product therefor
JP4372145B2 (ja) 情報処理装置及び情報処理方法及び印刷制御システム
US10802779B2 (en) Print processing system and method having print server converts document data into print data and to store the print data into plural storage servers for printing at image processing apparatus
JP5870597B2 (ja) サーバ装置、印刷制御プログラム、及び印刷制御システム
JP2018085049A (ja) 権限検証システムおよびリソースサーバー、認証サーバー、権限検証方法
JP5069820B2 (ja) 画像形成システムおよびユーザマネージャサーバ装置
JP2013030022A (ja) 情報処理システム、管理装置およびプログラム
JP2017191412A (ja) システムおよびその制御方法
US10891096B2 (en) Communication device, non-transitory computer-readable recording medium storing computer-readable instructions for communication device, and method performed by communication device
JP6191272B2 (ja) 印刷プログラム、情報処理装置および印刷システム
JP2022040993A (ja) 情報処理装置、制御方法及びプログラム
JP2011192120A (ja) 画像形成システムおよびユーザマネージャサーバ装置
JP2014160390A (ja) 出力制御装置、出力システム及びプログラム
JP6024109B2 (ja) 情報処理システム及びジョブ実行方法
JP6314486B2 (ja) システム、機器、情報処理装置、方法、プログラムおよび記録媒体
JP6074923B2 (ja) 情報処理装置、ネットワークシステム、動作情報取込方法及び動作情報取込プログラム
US11481171B2 (en) Image forming system, server, control method for image forming system, control method for server, and storage medium
JP7443054B2 (ja) 印刷システム、印刷装置、制御方法、およびプログラム
JP2004133907A (ja) 画像形成装置,利用認証情報発行方法および利用認証情報発行システム
JP5298994B2 (ja) ライセンス管理システム、画像処理装置、ライセンス管理サーバ、ライセンス管理方法、ライセンス管理プログラムおよび記憶媒体
JP6256563B2 (ja) 情報処理システム及びジョブ実行方法
JP2011192114A (ja) 画像形成システムおよびユーザマネージャサーバ装置
JP6233446B2 (ja) 情報処理装置、電子機器、ジョブ制御方法、及びジョブ制御プログラム