[go: up one dir, main page]

JP2014142735A - 印刷システム、方法、及びプログラム - Google Patents

印刷システム、方法、及びプログラム Download PDF

Info

Publication number
JP2014142735A
JP2014142735A JP2013009762A JP2013009762A JP2014142735A JP 2014142735 A JP2014142735 A JP 2014142735A JP 2013009762 A JP2013009762 A JP 2013009762A JP 2013009762 A JP2013009762 A JP 2013009762A JP 2014142735 A JP2014142735 A JP 2014142735A
Authority
JP
Japan
Prior art keywords
print
printer
token
request
application
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
JP2013009762A
Other languages
English (en)
Inventor
Kei Kitakata
圭 北形
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 JP2013009762A priority Critical patent/JP2014142735A/ja
Publication of JP2014142735A publication Critical patent/JP2014142735A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

【課題】プリンタが認証サービスからプリンタのトークン(ユーザ―と紐づかないトークン)を取得し、そのプリンタトークンで、プリンタトークンで印刷ジョブを要求するとき、プリントサービスが、印刷ジョブの生成をプリンタトークンの権限で行うと、トークンから印刷データの所有者が特定できないという課題がある。本発明では、ユーザー情報を意識しないプリンタからのユーザー所有の印刷データ要求に対し、セキュリティを下げない印刷データ特定方法を提供することを目的とする。
【解決手段】ユーザー情報を意識しないプリンタからのユーザー所有の印刷データ要求に対し、プリンタの要求に付随する認可トークンに対しロールとアプリケーションIDで要求に答えてよいかの妥当性を確認し、テナントID、ジョブID、プリンタIDでそのプリンタに返すユーザー所有の印刷データを特定する。
【選択図】 図1

Description

本発明は、印刷システム、特にプルプリントシステムにおいて、ユーザー権限で入稿された文書データをプリンタ権限のプリンタが印刷データ取得する場合の印刷データ特定処理を行う印刷システム、方法、及びプログラムに関する。
近年、クラウドサービスとしてインターネット上にサービスを公開することによりビジネス展開がされてきている。プリントサーバもインターネット上のプリントサービスとして機能を提供することが求められてきている。クラウドサービスとしてサービスを提供することは、大規模なデータセンター上にプリントサーバを配置することで顧客ごとのハードウェアの管理が不要となり、またサーバの負荷に応じてリソースを追加するようなことが容易に行えるといったさまざまなメリットがある。このためプリントサーバからプリンタが、インターネット越しに印刷データを取得し、プル型のプリントを行う環境が求められている。
クラウドプリンティングでは、Webブラウザまたは、プリンタのUI画面をユーザーが操作し、操作者を認証し、ユーザー認証トークンが発行され、その認証トークンと共にプリントサービスへ印刷リクエストが許可され、プリンタがクラウド環境のプリントサービスから印刷ジョブを取得し印刷を行う。クラウドのプリントサービスでは、プリントサービスに入稿される文書データ、印刷ジョブ情報、印刷データ、デバイスに紐づくプリンタリソースは、ユーザーリソースとして管理する。そして、正しいユーザー認証トークンとともにクライアントから送られてきたリクエストに対し、プリントサービスは、管理してそのリクエスト者であるテナントのユーザーのリソースにアクセスし応答を行う。クラウドのプリントサービスは、プリンタに印刷リクエストを送る場合、認証サービスを用いてユーザー認証トークンから認可トークンを生成し、その認可トークンをプリントサービスからWebブラウザを介してプリンタに引き回し、プリンタがそのトークンで印刷ジョブを取得する方法が実現されている。
また、特許文献1のように、認可トークンではなく、連携IDを複数のアプリケーション間で共有しシングルサインオンを実現する技術もある。
特開2008−59038号公報
しかし、プリントサービス、Webブラウザ、プリンタ間で認可トークンを引き回すことでトークンの漏えいの可能性がある。また、プリントサービスで認証サービスにトークンの発行依頼を行い作成することで、プリンタが実際印刷ジョブを取得する前にトークンが発行されることになり、プリンタが紙なし等で印刷ジョブ取得が遅延した場合、トークンの有効期限が切れる可能性があった。更に、トークンを引き回さずに、プリンタごとにユーザー毎の認可トークンを保持するのはプリンタでプリンタを使用するユーザーごとに認可トークン発行操作を行う必要があり、ユーザーに負荷を与えていた。そこで、プリンタが認証サービスからプリンタのトークン(ユーザ―と紐づかないトークン)を取得し、そのプリンタトークンでプリントサービスにアクセスすると仕組みが考えられる。
しかし、この場合、プリンタが、プリンタトークンで印刷ジョブを要求するとき、プリントサービスが、印刷ジョブの生成をプリンタトークンの権限で行うと、トークンから印刷データの所有者が特定できないという課題がある。また、印刷ジョブに埋め込む、ユーザ名がプリンタトークンからは取得できずに、プリンタ上の印刷ジョブとしては誰のジョブかわからなくなってしまうという課題もある。
そこで、本発明では、ユーザー情報を意識しないプリンタからのユーザー所有の印刷データ要求に対し、セキュリティを下げない印刷データ特定方法を提供することを目的とする。
クライアント端末(101〜103)からのユーザー操作による印刷要求、または、登録されている時刻になると、プリンタ(105〜108)内のバッチプリントアプリケーション(308)からバッチ印刷要求を受けるクラウド上のプリントサーバ(104)が、プリンタ(105〜108)からの印刷データ取得要求(S815、S1019)において印刷印刷データを提供する印刷システムにおいて以下の特徴をもつ。
プリントサーバ(104)が、ユーザー権限のトークン(712)とともに文書データ(608)を受け、テナントとユーザー単位に文書データ(608)を保存する手段(図6)、
クライアント端末(101〜103)からの印刷要求において、ユーザ権限のトークン(712)とともに文書データ(608)に紐づく文書ID(502)をプリントサーバ(104)が受信すると、プリントサーバ(104)が、認証サービス(310)にトークン渡し、ユーザーID(703)、テナントID(706)を取得し、その文書データ(608)から印刷データ(605)とそれに紐づく印刷ジョブID(512、522)を生成する時に印刷データ(605)にプリンタユーザー名(704)を埋め込む手段、
プリンタ(105〜108)がプリントサーバ(104)からの印刷要求をクライアント端末(101〜103)を介し受けると、認証サービス(301)からトークン(712)を取得する手段、
取得したトークン(712)とともにプリンタ(105〜108)が、プリントサーバ(104)からクライアント端末(101〜103)を介し受ける印刷要求共に取得した印刷ジョブID(512、522)、テナントID(706)、プリンタID(533)を取得する手段、
プリンタ(105〜108)が、トークン(712)、印刷ジョブID(512、522)、テナントID(706)、プリンタID(533)とともにプリントサーバ(104)に印刷ジョブ取得要求すると、プリントサーバ(104)が、印刷ジョブID(512、522)、テナントID(706)、プリンタID(533)に紐づく印刷データ(605)を特定し、プリンタ(105〜108)に送る手段を有することを特徴とする印刷システム。
本発明によれば、ユーザー情報を意識しないプリンタからのユーザー所有の印刷データ要求に対し、プリンタの要求に付随する認可トークンに対しロールとアプリケーションIDで要求に答えてよいかの妥当性を確認し、テナントID、ジョブID、プリンタIDでそのプリンタに返す印刷データを特定することによりセキュリティを下げない印刷システムが実現できる。
ネットワーク構成を示すブロック図 プリントサーバ、クライアント端末、プリンタのハードウェア構成図 プリントサーバ、クライアント端末、プリンタのモジュール構成図 プリントサーバ、プルプリントアプリケーション、バッチプリントアプリケーション、認可トークン取得アプリケーションのソフトウェア構成図 プリントサーバで管理する文書情報、印刷ジョブ情報、バッチ印刷ジョブ情報、プリンタ情報の構成図 プリントサーバの文書情報、印刷ジョブ情報、バッチ印刷ジョブ情報、文書データ、印刷データの管理階層の概念図 認証サービスの管理データ構成図 印刷システムの処理シーケンス バッチプリントを行う文書入稿の処理シーケンス 印刷システムのバッチプリント処理のシーケンス バッチプリント開始時刻設定画面
以下、本発明を実施するための最良の形態について図面を用いて説明する。
図1は、本発明の実施の形態に係る印刷システムの全体構成を示す図である。
図1において、クライアント端末101〜103、プリントサーバ104、プリンタ105〜108は、ネットワーク109〜111を介して接続されている。
図において、クライアント端末101〜103、プリンタ105〜108は、複数台接続されていることを仮定している。
ネットワーク109〜111は、例えば、インターネット等のLAN、WAN、電話回線、専用デジタル回線、ATMやフレームリレー回線、ケーブルテレビ回線、データ放送用無線回線等のいずれである。またこれらの組み合わせにより実現される、いわゆる通信ネットワークである。ネットワーク109〜111は、データの送受信が可能であればよい。そして、クライアント端末101〜103からプリントサーバ104、プリンタ105〜108への通信手段、プリンタ105〜108からプリントサーバ104への通信手段は異なっていてもよい。
クライアント端末101〜103は、例えば、デスクトップパソコン、ノートパソコン、モバイルパソコン、PDA(パーソナルデータアシスタント)等から成るが、プログラムの実行環境が内蔵された携帯電話であってもよい。クライアント端末101〜103では、Webブラウザ(インターネットブラウザ、WWWブラウザ、World Wide Webの利用に供するブラウザ)等のプログラムを実行する環境が内蔵されている。
プリントサーバ104は、印刷する文書を識別する情報と、出力先プリンタを印刷リクエストと共にクライアント端末101〜103のWebブラウザから受ける。そして、認証サーバ112にそのリクエストの妥当性を確認し、認証サーバ112からユーザ情報を得る。そして、印刷指示を行うコマンドを含めたレスポンス画面をクライアント端末101〜103のWebブラウザに返す。プリントサーバ104は、認証サーバ112から取得したユーザ情報の中のプリンタユーザー名、ドメインを含めた印刷データの生成を開始する。
クライアント端末101〜103のWebブラウザは、指定のプリンタに対し受け取った印刷コマンドを発行する。
プリンタ105〜108は、クライアント端末101〜103のWebブラウザから印刷コマンドを受けると、プリントサーバ104から印刷データを取得し、印刷を行う。
図2は、本発明の実施形態に係る印刷システムのクライアント端末101〜103、プリントサーバ104とプリンタ105〜108のハードウェア構成図である。
図2において、202は装置全体の制御を行うCPUであり、ハードディスク(HDD)205に格納されているアプリケーションプログラム、OS等を実行し、RAM203にプログラムの実行に必要な情報、ファイル等を一時的に格納する制御を行う。
204は記憶手段としてのROMであり、内部には、基本I/Oプログラム等のプログラム、印刷処理の際に使用する印刷データ、プリンタ情報等の各種データを記憶する。
203は一時記憶手段としてのRAMであり、CPU202の主メモリ、ワークエリア等として機能する。205は外部記憶手段の一つであり、大容量メモリとして機能するハードディスク(HDD)である。Webブラウザ等のアプリケーションプログラム、プリントサーバプログラム、OS、関連プログラム等を格納している。
206は表示手段であるディスプレイであり、キーボード207から入力したコマンドや、プリントサーバ104に入稿された文書情報等を表示したりするものである。
208は外部装置I/Fであり、プリンタ、USB機器、周辺機器を接続するためのI/Fである。
207は指示入力手段であるキーボードである。
201はシステムバスであり、印刷システムのプリントサーバ内におけるデータの流れを司るものである。
209はネットワークインタフェースカード(NIC)であり、該インタフェース209、ネットワーク109〜111を介して外部装置とのデータのやり取りを行う。なお、上記コンピュータの構成はその一例であり、図2の構成例に限定されるものではない。例えば、データやプログラムの格納先は、その特徴に応じてROM、RAM、HDDなどで変更することも可能である。また、209はプリンタ105〜108のコントローラであり、プリンタの制御系を司る機器である。
210は装置全体の制御を行うCPUであり、システムバス218に接続される各種デバイスとのアクセスを統括的に制御する。この制御は、ROM212に記憶された制御プログラム等あるいはディスクコントローラ(DKC216)を介して接続された外部メモリ223に記憶された制御プログラムやリソースデータ(資源情報)等に基づく。
211はCPU210の主メモリ、ワークエリア等として機能するRAMで、図示しない増設ポートに接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。
213は大容量メモリとして機能する外部記憶手段であり、プルプリントアプリケーションプログラム、バッチプリントアプリケーションプログラム、認可トークン取得アプリケーションプログラム及び関係プログラム等を格納している。
221は操作パネル(操作部)でプルプリントの操作を行うユーザインタフェースやプルプリント切り替えボタンが配置される。また、プリンタ105〜108の動作モード等の設定やプリンタ105〜108の動作状況の表示、複写指定等の操作を行うためのボタンおよび液晶パネルやLED214等の表示部も配置される。
219は、ネットワークインタフェースカード(NIC)であり、該インタフェース219を介して外部装置とのデータのやり取りを行う。
なお、本図で示したプリントエンジン220は既知の印刷技術を利用するものであり、好適な実施系として例えば電子写真方式(レーザービーム方式)やインクジェット方式、昇華方(熱転写)方式等が挙げられる。
215のラスタコントローラは、PDL言語・PDF言語である印刷データを画像データに変換するコントローラである。217の機器I/Fは、USB等で接続可能な外部機器との接続I/Fである。
図3は、本発明の実施形態に係る印刷システムのシステム構成図である。
プリントサーバ104は、他サービス、または他プログラムから投入される各ユーザの文書データや後述する文書情報501、印刷ジョブ情報511、バッチ印刷ジョブ情報521、各プリンタのプリンタ情報531をストレージ307に管理する。印刷データのデータフォーマットは、PDF等の形式である。
また、ストレージ307はプリントサーバ104の情報処理装置に内蔵するHDDまたは、外部接続しているHDD、または、ネットワークストレージ等の記憶装置である。
また、プリントサーバ104は、Webブラウザ301、バッチプリントアプリケーション308からWebアプリケーション302を介し印刷リクエストを受けると、指定の文書データをストレージ307から取得する。そして、印刷データ生成サービス306にその文書データを送る。
印刷データ生成サービス306では、文書データをプリンタが解釈できるデータフォーマットの印刷データに変換し、プリントサーバ104に送る。
次に、Webアプリケーション302は、クライアント端末101〜103に動作しているWebブラウザ301で表示可能なWebページを作成し、Webブラウザ301からのリクエストに応答し、作成したWebページを返信する。
また、プリンタ105〜108内にあるバッチプリントアプリケーション308からのバッチ印刷に関するリクエストを受けると、その応答をXMLの応答メッセージを作成し応答する。
次に、Webサービス303は、プリンタ105〜108のプルプリントアプリケーション304からの印刷データ取得リクエストを受けると、リクエストの妥当性を認証サービス310に確認する。確認が取れるとプリントサービス305にそのリクエストを送る。Webサービス303は、プリントサービス305から応答として印刷データが含まれるデータストリームを受け取ると、その中から一部の印刷データを読み込み、その一部のデータをプリンタ105〜108からのリクエストのレスポンスに返し続ける。印刷データのすべてをプリンタ105〜108に送るまで繰り返す。
また、プリンタ105〜108から印刷処理における印刷ジョブの完了通知を受け取る。プリンタ105〜108のプルプリントアプリケーション304は、Webブラウザ301から印刷リクエストを受け付ける。プルプリントアプリケーション304は、印刷リクエストを受けるとプリントサーバ104のWebサービス303から印刷データを取得し、プリンタ105〜108で印刷を行う。
次に、バッチプリントアプリケーション308は、後述する図11の画面で登録されているバッチプリント実行時間になると、プリントサービス305からバッチプリントするジョブリストを取得し、プルプリントアプリケーション304に対し、印刷を実行する。
次に、認証トークン取得アプリケーション309は、プルプリントアプリケーション304、または、バッチプリントアプリケーション308がWebサービス303、または、Webアプリケーション302にアクセスするとき、それぞれのアプリケーションに適したロールの認可トークンを認証サービス310から取得しそれぞれのアプリケーションに返す。
認証サービス310は、認可トークンを認証サービス310からの認可トークン生成リクエストに対し、指定のロールの認可トークンを生成し返す。また、Webサービス303、または、Webアプリケーション302からの認可トークンの妥当性チェックリクエストに対し、妥当性を確認しその結果を返す。また、認可トークン、または認証トークンに紐づく認証・認可情報711やユーザ情報701を返す。
また、プリントサービス305、印刷データ生成サービス306、Webアプリケーション302、Webサービス303はそれぞれ独立したプログラムであり、それぞれ別々の情報処理装置に配置することが可能である。これらのプログラムはそれぞれネットワークに繋がった情報処理装置に配置し、それぞれのプログラム間で通信を行う。またこれらのプログラムを同情報処理装置に配置することも可能である。
図4は、本発明の実施形態に係る印刷システムのソフトウェア構成図であり、図5は印刷システムが管理するデータ構成図である。また、図6は印刷システムがストレージ307に保持する各データの構成階層図である。また、図7は認証サービス310が管理する認証データ構成図である。図4、5、6、7を用いて、他サービスまたは他プログラムから印刷システムへの文書入稿と、Webブラウザ301をユーザが操作して入稿を受けた文書の印刷を行う印刷システムの処理、印刷システムが定刻になると行うバッチプリント処理について説明する。
他サービスまたは他プログラムが、文書データをプリントサーバ104に位置するWebサービス303に送信する。Webサービス303はその文書データを文書データ受信部410で受信すると、とWebサービス303のトークン確認部409はそのリクエストに付随する認可トークンを認証サービス310にわたし、このトークンの妥当性を認証サービス310で検証する。
認証サービス310は、認証・認可情報711のトークン712に一致するトークンであるか確認し、一致するトークンであればリクエスト元アプリケーションが処理してよいロール715であるかを検証する。妥当であると判断するとリクエスト元アプリケーションであるWebサービス303にその結果を返す。
Webサービス303では、妥当であると判断されたリクエストであれば、認証サービス310からユーザー情報701の各情報を受け取る。ユーザー情報701については後述する。Webサービス303は、認証サービス310でトークンの妥当性が確認されると、認証サービス310からユーザー情報701を受け取る。Webサービス303は、受け取ったユーザー情報701と文書データをプリントサービス305の文書データ管理部401に送信する。
プリントサービス305の文書データ管理部401が受信した文書データをテナントID706、ユーザーID703をもとにストレージ307の図6で示す各データの構成階層の文書データ604に保存する。更にその文書の文書情報501として、文書名503と文書ID502と、文書のステータス504と文書の受付日505とストレージ307に保存する文書データのパスを示す文書保存パス506をストレージ307に保存する。
ステータス504は「受信中」「受信エラー」「待機中」「印刷待機中」「印刷待ち」「印刷中」「印刷終了」「印刷エラー」「キャンセル終了」等がある。文書保存パス506は、図6で示す各データの構成階層図の文書データ604を示す階層パスから構成される。
ここで、印刷システムのストレージ307の各データの構成の説明をする。データ構成は、まず、認証サービス310のユーザー情報701のテナントID706で識別できるテナントID階層601ある。更にその中に、ユーザID703で識別できるユーザID階層603と、プリントサービス305のプリンタ情報管理部403が管理するプリンタ情報531のプリンタID533で識別できるプリンタID階層521の階層構成となる。
プリントサービス305を構成する401,402,403の各管理部は、302、303の各Webインタフェース経由でくるリクエストに対し、ユーザ情報701のテナントID706、ユーザID703を取得し、その各IDが示す階層構成の501、511、521、531、604、605の各データおよび情報にアクセスする。
次にWebブラウザ301をユーザが操作して文書の印刷を行う印刷システムの処理について説明する。
Webブラウザ301から印刷するプリンタIDと文書IDが指定された印刷リクエストが来ると、Webアプリケーション302のリクエスト受付部407が受信する。Webアプリケーション302のトークン確認部405はそのリクエストに付随する認証トークンを認証サービス310に渡し、このトークンの妥当性を認証サービス310で検証する。
認証サービス310は、認証・認可情報711のトークン712に一致するトークンであるか確認し、一致するトークンであればリクエスト元アプリケーションが処理してよいロール715であるかを検証する。妥当であると判断するとリクエスト元アプリケーションであるWebアプリケーション302にその結果を返す。Webアプリケーション302では、妥当であると判断されたリクエストであれば、認証サービス310からユーザー情報701の各情報を受け取る。ここで、ユーザー情報701は、ユーザー名702と、ユーザーを識別するユーザID703と、そのユーザーがプリンタに登録しているプリンタのユーザー名、ドメインと紐づけて登録するプリンタユーザー名704、プリンタドメイン705から構成される。更にプリンタユーザー名704、プリンタドメイン705は、ローカル認証サーバ(不図)のユーザー情報で管理されるプリンタと認証サービス310で管理するユーザー情報701を紐付けるための情報である。
プリンタは通常このプリンタユーザー名704、プリンタドメイン705で印刷ジョブを扱う。プリンタの操作パネル221で表示する印刷ジョブ情報はこのプリンタユーザー名704で表示される。
Webアプリケーション302では、認証サービス310からユーザー情報701を受け取ると、セッション管理部406でそのリクエストに対するセッションを作成する。また、Webアプリケーション302は印刷リクエストをプリントサービス305の文書データ管理部401に印刷を行うプリンタIDと文書ID、ユーザー情報701を送る。
文書データ管理部401では、ユーザー情報701とプリンタIDをプリンタ情報管理部403に渡す。プリンタ情報管理部403は受け取ったとテナントID706からストレージ307のテナントID階層601を特定し、プリンタ情報531からプリンタIDに一致するプリンタID533を特定し、プリンタ情報531を文書データ管理部401に渡す。
ここで、プリンタ情報531はユーザーが指定するプリンタ名532とそのプリンタと特定するプリンタID533と、プリンタの製品モデルをあらわすモデル名534からなる。更に、後述するWebブラウザ301がプリンタに印刷リクエストを出すときにアクセスするためのIPアドレス535から構成される。
プリンタ情報531を受け取った文書データ管理部401はユーザー情報701からストレージ307のテナントID階層601とユーザID階層602を特定し、文書情報501の文書保存パス506を取得する。
文書データ管理部401は、取得した文書保存パス506とユーザー情報701とプリンタ情報531を印刷ジョブ情報管理部402に渡す。印刷ジョブ情報管理部402では、印刷ジョブID512を生成し、ユーザー情報701からストレージ307のテナントID階層601とプリンタID階層602を特定し印刷ジョブ情報511を登録する。
ここで、印刷ジョブ情報511には、印刷ジョブを特定する印刷ジョブID512とステータス513と印刷開始時間514と文書データ管理部401から取得したプリンタ情報531のプリンタID533がある。更に、ユーザー情報701のユーザーID703と後述の印刷データ生成サービス306が生成し受け取った印刷データ605を保存する印刷データ保存パス527とユーザー情報701のプリンタユーザー名704、プリンタドメイン705から構成される。
また、印刷ジョブ情報511は印刷リクエスト順に情報を保持するリストであり、印刷スケジュール順を管理するリストである。印刷ジョブ情報管理部402は、このリストに印刷ジョブ情報511を登録後、文書データ管理部401を介してWebアプリケーション302に印刷リクエストの応答を返す。この応答には印刷ジョブID512が含まれる。
Webアプリケーション302は、この応答を決起に、Webブラウザ301を介してプリンタ103〜105のプルプリントアプリケーション304に印刷リクエストを行う。このとき、印刷ジョブID512とプリンタID533とテナントID706を印刷リクエストで渡す。
ここで、プリントサービス305の印刷ジョブ情報管理部402は、印刷ジョブ情報511のリストで、印刷スケジュール順の先頭になった印刷ジョブに対する文書データ604を取得する。詳しくは、文書データ管理部401から受け取った文書保存パス506をもとに、ストレージ307から文書データ604を取得する。そして、プリンタ情報531のモデル名534、ユーザー情報701のプリンタユーザー名704、プリンタドメイン705とともに、印刷データ生成サービス306の印刷データ生成部404に送る。
印刷データ生成部404では、受け取った文書データをプリンタモデルに対応したプリンタが解釈できる印刷データを生成する。この印刷データの生成には、プリンタユーザー名704、プリンタドメイン705を印刷データに含めて生成する。生成した印刷データをプリントサービス305の印刷ジョブ情報管理部402に送る。印刷ジョブ情報管理部402では、印刷ジョブ情報511の印刷データ保存パス517に保存する。
プルプリントアプリケーション304は、Webサービス受付部420でWebブラウザ301からの印刷リクエストを受信する。そして、その旨プルプリントコントローラ423に通知する。通知を受けたプルプリントコントローラ423は、トークン生成要求部426を介して、認可トークン取得アプリケーション309に認可トークン生成要求を送る。この要求にはプルプリントアプリケーション用のロールを指定し要求する。認可トークン取得アプリケーション309の要求受付部441がプルプリントアプリケーション304からのトークン生成要求を受けると、指定されたロール情報と共に認証トークン取得部440が認証サービス310に認可トークンの生成を依頼する。ここで、認証サービス310はプルプリントアプリケーション304のロール715の場合、ユーザーログインされた結果のトークンでないため、ユーザーID713情報が存在しない、アプリケーションID714が存在するトークンを生成する。
認可トークン取得アプリケーション309は、認証サービス310からトークンを取得し、プルプリントアプリケーション304にそのトークンを送る。プルプリントアプリケーション304のプルプリントコントローラ423は、認可トークン取得アプリケーション309から認可トークンを受け取ると、印刷ジョブ取得部422対し、プリントサーバ104への印刷ジョブ取得指示を行う。印刷ジョブ取得部422は認可トークンと印刷ジョブID512とプリンタID525とテナントID706を含めた印刷ジョブ取得要求をプリントサーバ104のWebサービス303に送る。
Webサービス303のトークン確認部409はそのリクエストに付随する認可トークンを認証サービス310に渡し、このトークンの妥当性を認証サービス310で検証する。認証サービス310は、認証・認可情報711のトークン712に一致するトークンであるか確認し、一致するトークンであればリクエスト元アプリケーションが処理してよいロール715であるかを検証する。妥当であると判断するとリクエスト元アプリケーションであるWebサービス303にその結果を返す。更にトークン確認部409は、認可トークンを認証サービス310に送り、認可トークンに対するアプリケーションID714を取得する。トークン確認部409はWebサービス303で認識している不図のアプリケーションIDとアプリケーションID714が一致することを確認する。一致しない場合はエラーとしてプルプリントアプリケーション304に印刷ジョブを渡さない。Webサービス303は、アプリケーションIDが一致することを確認すると、その印刷ジョブ取得要求をプリントサービス305に送る。
プリントサービス305の印刷ジョブ情報管理部402では、Webサービス303からの印刷ジョブ要求を受け取る。そして、Webサービス303を介して取得したテナントID706とプリンタID525でストレージ307のテナントID階層601とプリンタID階層603を特定する。また、印刷ジョブID512で、印刷ジョブ情報511から指定の印刷ジョブの印刷ジョブIDに一致する印刷ジョブ情報を取得する。また、印刷ジョブ情報管理部402は取得した印刷ジョブ情報の印刷データ保存パス517を参照し、印刷データ605を取得し、Webサービス303に印刷データ605を送る。
上記が、ユーザーログインがない認可トークンでアクセスするプルプリントアプリケーション304からの要求に対し印刷ジョブを特定するプリントサービス305の仕組みになる。
Webサービス303の印刷ジョブ送信部411は、前述したようにプリントサービス305の印刷ジョブ情報管理部402への印刷ジョブ取得要求の応答に印刷データが含まれるデータストリームを受け取る。そして、その中から一部の印刷データを読み込み、その一部のデータをプリンタ105〜108のプルプリントアプリケーション304の印刷ジョブ取得部422からのジョブ取得要求の応答に返し続ける。
印刷データのすべてをプルプリントアプリケーション304に送るまで繰り返す。プルプリントアプリケーション304は、Webサービス303から印刷データの一部を印刷ジョブ取得部422で受信し始めるとその印刷データを印刷ジョブ送信部424を介し、不図のプリンタのコントローラに印刷データを送り、プリンタは印刷を開始する。印刷制御部425はプリンタのコントローラを監視し、印刷ジョブの完了を検知する。印刷の完了を検知すると印刷制御部425は、Webサービス送信部421を介し、Webサービス303の印刷ステータス受信部412に印刷完了を通知する。この通知には、印刷ジョブID512とプリンタID533とテナントID706と完了ステータスが含まれる。
印刷ステータス受信部412は、印刷完了通知を受け取るとプリントサービス305の印刷ジョブ情報管理部402に印刷ジョブID512とプリンタID533とテナントID706と完了ステータスとともに完了通知を送る。
印刷ジョブ情報管理部402は、受け取ったテナントID706とプリンタID525でストレージ307のテナントID階層601とプリンタID階層603を特定し、更にジョブID512で印刷ジョブ情報511を特定する。そして、印刷ジョブ情報管理部402は、印刷ジョブ情報511のステータス513に取得した完了ステータスを登録し、文書データ管理部401にテナントID706とジョブID512と印刷ジョブ情報511のユーザーID516と共に完了ステータスに送る。
文書データ管理部401は、受け取ったテナントID706とユーザーID516でストレージ307のテナントID階層601のユーザーID階層602を特定し、ユーザーID516に一致する文書情報501のステータス504を完了ステータスに更新する。
ここまでが、Webブラウザ301をユーザが操作して文書の印刷を行う印刷システムの処理の説明である。詳しくは、プリントサービス305が、ユーザー認証された入稿された文書データをプリンタユーザー名、ドメインを含んだ印刷データを作成する。そして、ユーザーログインされないプリンタ103〜108のプリプリントアプリケーション304からの印刷ジョブ取得要求に対し、要求元プリプリントアプリケーション304のロール715とアプリケーションID714の妥当性確認を行う。更に、テナントID706、ジョブID512、プリンタID533で印刷データ605を特定し、プリプリントアプリケーション304に印刷データ605を送信する仕組みの説明となる。この仕組みによりユーザー情報を意識しないプリプリントアプリケーション304からのユーザー所有の印刷データ要求に対し、印刷データを特定するできることによりセキュリティを下げない印刷システムが実現できる。
次に、印刷システムが定刻になると行うバッチプリント処理について説明する。Webブラウザ301をユーザが操作して文書の印刷を行う印刷システムの処理と同等の処理に関しては説明を省略する。
バッチプリント処理では、プリントサービス305は文書入稿時、他サービス、または他プログラムから文書データ受け取りとともに印刷を行うプリンタID533を受け取る。プリントサービス305は、文書入稿のリクエストを受けた場合は、前述したに認証サービス310で認証トークンの妥当性を確認し、さらにユーザー情報701を取得する。そしてプリントサービス305の文書データ管理部401は、受け取った文書データをストレージ307の文書データ604に保存する。文書データ管理部401は、受け取ったプリンタID533が存在するかプリンタ情報管理部403に確認し、印刷ジョブ情報管理部402に文書保存パス506とユーザー情報701とプリンタ情報531を印刷ジョブ情報管理部402に渡す。
印刷ジョブ情報管理部402では、印刷ジョブID512を生成し、ストレージ307のプリンタID階層602にバッチ印刷ジョブ情報521を登録する。ここで、バッチ印刷ジョブ情報521は印刷ジョブ情報511と同等の情報構成となるが、バッチ印刷ジョブ情報521にはバッチプリントのジョブ情報だけ保持されている。
ここで、図11はバッチアプリケーション308のバッチプリント開始時刻設定画面1101の画面例となる。
バッチプリント開始時刻設定画面1101では、定期処理1102の設定でバッチ開始時刻の定期実行のタイミングを設定することができる。設定項目としてはバッチ開始時刻と終了時刻とバッチ実行間隔となり、開始と終了時刻内にバッチ実行間隔ごとにバッチアプリケーション308はバッチプリント処理を実行する。
また、定時処理1103の設定では、指定の時刻になると1回バッチアプリケーション308がバッチプリント処理を実行する設定が可能である。設定情報はバッチ印刷管理部443で管理する。また、バッチ時刻管理部434は、設定された時刻を検知し、指定の実行時時刻になるとその旨バッチプリントコントローラ432に通知する。
バッチプリントコントローラ432は、バッチ時刻管理部434からバッチ開始を通知されるとトークン生成部要求部435を介して認可トークン取得アプリケーション309に認可トークン作成依頼を出す。
続いて、認可トークン取得アプリケーション309は、認証サービス310にバッチアプリケーション308用のロール715の認可トークンの作成依頼を出す。ここで、認証サービス310はバッチプリントアプリケーション308用のトークンとしてユーザー情報701に紐づいた、アプリケーションID714が存在するトークンを生成する。認可トークン取得アプリケーション309は、認証サービス310からトークンを取得し、バッチプリントアプリケーション308にそのトークンを送る。
バッチプリントアプリケーション308のバッチプリントコントローラ432は、認可トークン取得アプリケーション309から認可トークンを受け取ると、印刷ジョブリスト取得部430対し、Webアプリケーション302への印刷ジョブリスト取得指示を行う。このとき、バッチプリントアプリケーション308はプリンタID525をWebアプリケーション302に送る。
バッチプリントアプリケーション308からの要求をWebアプリケーション302はリクエスト受付部407で受ける。その要求をトークン確認部405が認証サービス310に対しトークンの妥当確認依頼を行う。認証サービス310では、バッチプリントアプリケーション308のロールとして妥当なトークンか確認を行う。また、トークン確認部405は、Webアプリケーション302で認識している不図のアプリケーションIDとアプリケーションID714が一致することを確認する。
更に、Webアプリケーション302は認証サービス310からテナントID706を取得する。Webアプリケーション302は、テナントID706とプリンタID525をプリントサービス305の印刷ジョブ情報管理部402に渡す。
印刷ジョブ情報管理部402では、テナントID706とプリンタID525をもとにストレージ307のテナントID階層601とプリンタID階層602を特定しバッチ印刷ジョブ情報521を取得する。このバッチ印刷ジョブ情報521のバッチ印刷ジョブID522のリストをWebアプリケーション302で、バッチプリントアプリケーション308に返す。
次にバッチプリントアプリケーション308は取得したバッチ印刷ジョブID522のリストのバッチ印刷ジョブID522と、プリンタID525をWebアプリケーション302に渡し、バッチ印刷処理を行う。Webアプリケーション302はトークン妥当性確認と、アプリケーションID714の確認とユーザー情報701の取得を認証サービス310に行い、プリントサービス305の印刷ジョブ情報管理部402に印刷要求を出す。
印刷ジョブ情報管理部402では印刷データ生成部404に印刷データ生成依頼をだし、Webアプリケーション302に応答を返す。更に応答を受けたWebアプリケーション302は、バッチプリントアプリケーション308に印刷指示を行うコマンドを含めたレスポンスを返す。バッチプリントアプリケーション308は前述のWebブラウザ301と同様に印刷コマンドをプルプリントアプリケーション304に送る。
これ以降、Webブラウザ301をユーザが操作して文書の印刷を行う印刷システムの処理で説明した処理と同様の処理を行う。以上が印刷システムが定刻になると行うバッチプリント処理についての説明となる。
次に、図8でWebブラウザ301をユーザが操作して文書の印刷を行う印刷システムの処理シーケンスについて説明する。
S801でクライアント端末101のWebブラウザ301にユーザーが印刷実行の操作を行うと、S802でクライアント端末101のWebブラウザ301がプリントサーバ104に認証トークンと文書ID502、プリンタIDとともに印刷要求を行う。
S802でプリントサーバ104は認証サービス310にユーザー情報701取得を行う。
S804で認証サービス310がユーザー情報701をプリントサーバ104に送る。
S805でプリントサーバ104は、指定されたプリンタIDがプリンタ情報531のプリンタID533に存在するかを確認し、存在する場合は、S806で印刷ジョブID512を生成する。
S807で、プリントサーバ104は印刷ジョブ情報511を登録し、S808で、Webブラウザ301に印刷ジョブID512、ユーザー情報701のテナントID706、プリンタID533を含めた印刷コマンドを返す。
更に、プリントサーバ104はS809で、ユーザー情報701のプリンタユーザー名704、プリンタドメイン705を含めた印刷データの生成を開始する。
次にS810で、Webブラウザ301がプルプリントアプリケーション304に印刷要求を送ると、S811でプルプリントアプリケーション304は、認可トークン取得アプリケーション309に認可トークン生成要求を行う。
更にS812で認可トークン取得アプリケーション309が認証サービス310に認可トークン生成要求を行う。S813認証サービス310が認可トークンを認可トークン取得アプリケーション309に返し、S814で認可トークン取得アプリケーション309が認可トークンをプルプリントアプリケーション304に返す。
S815で、プルプリントアプリケーション304は、印刷ジョブID512、ユーザー情報701のテナントID706、プリンタID533とともにプリンタプリントサーバ104に印刷データ要求を行う。
S816で、プリントサーバ104は、認証サービス310に対し認可トークンの妥当性確認を行う。
S817で、認証サービス310から確認結果をプリントサーバ104が受け取ると、続いてS818で、プリントサーバ104は認証サービス310に対し、認証・認可情報711を取得する。
S819で、認証サービス310は、認証・認可情報711をプリントサーバ104に送る。
S820で、プリントサーバ104は、認証・認可情報711のアプリケーションID714とプリントサーバ104が認識しているアプリケーションIDが一致することを確認する。
S821で、プリントサーバ104は印刷データの特定を取得した印刷ジョブID512、ユーザー情報701のテナントID706、プリンタID533をもとに行う。そして、特定した印刷データをS822で、プルプリントアプリケーション304に印刷データを送信する。
S823で、プリンタ105〜108で印刷を行う。印刷完了をプルプリントアプリケーション304が検知するとS823で、プルプリントアプリケーション304からプリントサーバ104に印刷完了通知を出す。
以上が、Webブラウザ301をユーザが操作して文書の印刷を行う印刷システムの処理シーケンスの説明となる。
次に、図9で他サービスまたは他プログラムからプリントサーバ104にバッチプリントを行う文書入稿の処理シーケンスについて説明する。
S901で、他サービスまたは他プログラムから認可トークンと文書データ、プリンタ名とともの文書入稿要求をプリントサーバ104が受ける。
そして、S902で、プリントサーバ104は、認証サービス310に認可トークンの妥当性の確認とともに、ユーザー情報701の取得要求を行う。
S903で、プリントサーバ104は、認証サービス310からユーザー情報701を取得すると、S904で、プリント情報531に登録されているプリンタであるかを確認し、S905で、バッチ印刷ジョブID522を作成する。更にS905で、バッチ印刷ジョブ情報521にバッチ印刷ジョブとして登録する。
次に図10で印刷システムが定刻になると行うバッチプリント処理のシーケンスについて説明する。
S1001で、バッチプリントアプリケーション308がバッチプリント開始時刻設定画面1101で設定されているバッチ印刷時刻になる。
そして、S1002でバッチプリントアプリケーション308がプリントサーバ104に認可トークンとプリンタIDとともにバッチジョブリスト要求を行う。
S1003でプリントサーバ104は認証サービス310に認可トークンの妥当性確認を行う。
S1004で認証サービス310からプリントサーバ104に確認結果が送られると、S1005でプリントサーバ104は認証サービス310に認証・認可情報711の取得を行う。
S1006でプリントサーバ104は、認証・認可情報711のアプリケーションID714とプリントサーバ104が認識しているアプリケーションIDが一致することを確認する。
S1007でプリントサーバ104は、認証サービス310にユーザー情報701の取得を行う。
S1008で認証サービス310からプリントサーバ104にユーザー情報701が送られてくる。
そして、S1009でプリントサーバ104はプリンタIDとユーザー情報701のテナントID706をもとにバッチ印刷ジョブ情報521を特定し、S1010でバッチプリントアプリケーション308にバッチジョブリストを送る。
S1011でバッチプリントアプリケーション308がプリントサーバ104にバッチ印刷要求を送ると、S1012で、プリントサーバ104は、ユーザー情報701のテナントID706、プリンタID533を含めた印刷コマンドを返す。
更に、プリントサーバ104はS1014で、ユーザー情報701のプリンタユーザー名704、プリンタドメイン705を含めた印刷データの生成を開始する。
次にS1013で、バッチプリントアプリケーション308がプルプリントアプリケーション304に印刷要求を送ると、S1015でプルプリントアプリケーション304は、認可トークン取得アプリケーション309に認可トークン生成要求を行う。
更にS1016で認可トークン取得アプリケーション309が認証サービス310に認可トークン生成要求を行う。
S1017で認証サービス310が認可トークンを認可トークン取得アプリケーション309に返し、S1018で認可トークン取得アプリケーション309が認可トークンをプルプリントアプリケーション304に返す。
S1019で、プルプリントアプリケーション304は、バッチ印刷ジョブID522、ユーザー情報701のテナントID706、プリンタID533とともにプリンタプリントサーバ104に印刷データ要求を行う。
S1020で、プリントサーバ104は、認証サービス310に対し認可トークンの妥当性確認を行う。
S1021で、認証サービス310から確認結果をプリントサーバ104が受け取ると、続いてS1022で、プリントサーバ104は認証サービス310に対し、認証・認可情報711を取得する。
S1023で、認証サービス310は、認証・認可情報711をプリントサーバ104に送る。
S1024で、プリントサーバ104は、認証・認可情報711のアプリケーションID714とWebサービス303が認識しているアプリケーションIDが一致することを確認する。
S1025で、プリントサーバ104はプルプリントアプリケーション304から取得したバッチ印刷ジョブID522、ユーザー情報701のテナントID706、プリンタID533をもとに印刷データの特定を行う。
そして、特定した印刷データをS1026で、プルプリントアプリケーション304に送信する。
S1027で、プリンタ105〜108で印刷を行う。
印刷完了をプルプリントアプリケーション304が検知するとS1028で、プルプリントアプリケーション304からプリントサーバ104に印刷完了通知を出す。
以上が、Webブラウザ301をユーザが操作して文書の印刷を行う印刷システムの処理シーケンスの説明となる。
以上が、本発明の印刷システムの説明になる。詳しくは、ユーザー情報を意識しないプリンタからのユーザー所有の印刷データ要求に対し、プリンタの要求に付随する認可トークンに対しロールとアプリケーションIDで要求に答えてよいかの妥当性を確認する。そして、テナントID、ジョブID、プリンタIDでそのプリンタに返す印刷データを特定することによりセキュリティを下げない印刷システムが実現できる。
101〜103 クライアント端末
104 プリントサーバ
105〜108 プリンタ
109〜111 ネットワーク

Claims (1)

  1. クライアント端末(101〜103)からのユーザー操作による印刷要求、または、登録されている時刻になると、プリンタ(105〜108)内のバッチプリントアプリケーション(308)からバッチ印刷要求を受けるクラウド上のプリントサーバ(104)が、プリンタ(105〜108)からの印刷データ取得要求(S815、S1019)において印刷データを提供する印刷システムにおいて以下の特徴をもつ。
    プリントサーバ(104)が、ユーザー権限のトークン(712)とともに文書データ(608)を受け、テナントとユーザー単位に文書データ(608)を保存する手段(図6)、
    クライアント端末(101〜103)からの印刷要求において、ユーザ権限のトークン(712)とともに文書データ(608)に紐づく文書ID(502)をプリントサーバ(104)が受信すると、プリントサーバ(104)が、認証サービス(310)にトークン渡し、ユーザーID(703)、テナントID(706)を取得し、その文書データ(608)から印刷データ(605)とそれに紐づく印刷ジョブID(512、522)を生成する時に印刷データ(605)にプリンタユーザー名(704)を埋め込む手段、
    プリンタ(105〜108)がプリントサーバ(104)からの印刷要求をクライアント端末(101〜103)を介し受けると、認証サービス(301)からトークン(712)を取得する手段、
    取得したトークン(712)とともにプリンタ(105〜108)が、プリントサーバ(104)からクライアント端末(101〜103)を介し受ける印刷要求共に取得した印刷ジョブID(512、522)、テナントID(706)、プリンタID(533)を取得する手段、
    プリンタ(105〜108)が、トークン(712)、印刷ジョブID(512、522)、テナントID(706)、プリンタID(533)とともにプリントサーバ(104)に印刷ジョブ取得要求すると、プリントサーバ(104)が、印刷ジョブID(512、522)、テナントID(706)、プリンタID(533)に紐づく印刷データ(605)を特定し、プリンタ(105〜108)に送る手段を有することを特徴とする印刷システム。
JP2013009762A 2013-01-23 2013-01-23 印刷システム、方法、及びプログラム Pending JP2014142735A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013009762A JP2014142735A (ja) 2013-01-23 2013-01-23 印刷システム、方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013009762A JP2014142735A (ja) 2013-01-23 2013-01-23 印刷システム、方法、及びプログラム

Publications (1)

Publication Number Publication Date
JP2014142735A true JP2014142735A (ja) 2014-08-07

Family

ID=51423976

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013009762A Pending JP2014142735A (ja) 2013-01-23 2013-01-23 印刷システム、方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP2014142735A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016103045A (ja) * 2014-11-27 2016-06-02 富士ゼロックス株式会社 情報処理装置及び情報処理プログラム
JP2017162368A (ja) * 2016-03-11 2017-09-14 富士ゼロックス株式会社 情報処理装置、情報処理システム及び情報処理プログラム
CN110716700A (zh) * 2018-07-13 2020-01-21 佳能株式会社 打印服务器、控制方法和存储介质

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016103045A (ja) * 2014-11-27 2016-06-02 富士ゼロックス株式会社 情報処理装置及び情報処理プログラム
JP2017162368A (ja) * 2016-03-11 2017-09-14 富士ゼロックス株式会社 情報処理装置、情報処理システム及び情報処理プログラム
CN110716700A (zh) * 2018-07-13 2020-01-21 佳能株式会社 打印服务器、控制方法和存储介质

Similar Documents

Publication Publication Date Title
US9230078B2 (en) Authentication system, control method thereof, service provision device, and storage medium
JP5791390B2 (ja) 印刷システム、プリントサーバ、印刷管理方法、およびプログラム
JP6682254B2 (ja) 認証連携システム及び認証連携方法、認可サーバー及びプログラム
JP5730082B2 (ja) プリントサーバ、印刷システム、制御方法、およびプログラム。
JP6098169B2 (ja) 情報処理システム、情報処理装置、プログラム及び認証方法
US9071605B2 (en) Relay device, relay method, and non-transitory computer readable medium
US9148492B2 (en) Relay device, relay method, and non-transitory computer readable medium
JP6000828B2 (ja) 情報処理装置、印刷サーバーシステム、その制御方法、およびプログラム。
JP2012133489A (ja) 印刷システム、プリントサービス装置、サービス提供装置、制御方法、及びプログラム
JP2013041552A (ja) 連携サーバおよびその制御方法、印刷システム、およびプログラム
CN107203351B (zh) 信息处理设备和信息处理方法
JP2013012053A (ja) プルプリントシステム、印刷ジョブ管理方法、プリントサーバおよびその制御方法、並びにプログラム
US9612782B2 (en) Scheduled and secured cloud print services
JP2011253474A (ja) ユーザ装置特定方法および情報処理システム
JP6278651B2 (ja) ネットワークシステム、管理サーバシステム、制御方法及びプログラム
US20130314746A1 (en) Information processing apparatus and method for controlling same
JP2014115907A (ja) 情報処理システムおよびその制御方法、並びにプログラム
JP6197286B2 (ja) 通信装置、情報処理システム及び情報処理システムの制御方法
JP2014142735A (ja) 印刷システム、方法、及びプログラム
JP2014142734A (ja) クラウドプリントにおけるバッチ印刷制御
JP6519431B2 (ja) 印刷管理サーバー、プリンタードライバー管理システム、プリンタードライバー管理プログラムおよび情報処理装置
JP2015005148A (ja) 印刷システム、方法、及びプログラム
US20190205069A1 (en) Data processing apparatus and non-transitory computer-readable storage medium for storing program
JP2006285840A (ja) 文書管理システム
JP2014186707A (ja) 文書生成システム