(57)【特許請求の範囲】
【請求項１】
サービス利用装置と、前記サービス利用装置にサービスを提供する１以上の情報処理装置とを含む情報処理システムであって、
前記情報処理装置により、一時コードを発行する一時コード発行手段と、
前記サービス利用装置により、前記情報処理装置から得られた一時コードを用いて機器認証トークンを生成する機器認証トークン生成手段と、
前記情報処理装置により、前記サービス利用装置から得られた機器認証トークンの正当性を前記一時コードを用いて検証し、検証結果に応じて機器認証チケットを発行する機器認証チケット発行手段と、
前記サービス利用装置により、前記情報処理装置から得られた機器認証チケットを用いて、前記情報処理装置のリソースにアクセスするアクセス手段と、
前記情報処理装置により、前記機器認証チケットの発行と合わせて機器認証パスワードを発行する機器認証パスワード発行手段と
を有し、
前記機器認証チケット発行手段は、次回以降、前記サービス利用装置から得られた機器認証パスワードの正当性を検証し、検証結果に応じて前記機器認証チケットを発行する
ことを特徴とする情報処理システム。
【請求項２】
サービス利用装置と、前記サービス利用装置にサービスを提供する１以上の情報処理装置とを含む情報処理システムであって、
前記情報処理装置により、一時コードを発行する一時コード発行手段と、
前記サービス利用装置により、前記情報処理装置から得られた一時コードを用いて機器認証トークンを生成する機器認証トークン生成手段と、
前記情報処理装置により、前記サービス利用装置から得られた機器認証トークンの正当性を前記一時コードを用いて検証し、検証結果に応じて機器認証チケットを発行する機器認証チケット発行手段と、
前記サービス利用装置により、前記情報処理装置から得られた機器認証チケットを用いて、前記情報処理装置のリソースにアクセスするアクセス手段とを有し、
前記情報処理装置は、前記サービス利用装置が所属するテナントごとに発行したテナント情報により前記サービス利用装置を管理し、
前記アクセス手段は、前記機器認証チケット及び前記情報処理装置から得られたテナント情報を用いて、前記情報処理装置のリソースにアクセスする
ことを特徴とする情報処理システム。
【請求項３】
前記情報処理装置により、前記一時コードを用いて前記機器認証トークンを生成できる回数、又は、前記機器認証パスワードを用いて前記機器認証チケットを発行できる回数を制限することを特徴とする請求項１に記載の情報処理システム。
【請求項４】
前記サービス利用装置により、前記機器認証トークンは、
外部からのアクセス制限可能な記憶領域に保存されることを特徴とする請求項１乃至３のいずれか一項に記載の情報処理システム。
【請求項５】
前記機器認証トークン生成手段は、
前記一時コード及び前記サービス利用装置のデバイス情報を暗号化して、前記機器認証トークンを生成することを特徴とする請求項１乃至４のいずれか一項に記載の情報処理システム。
【請求項６】
前記サービス利用装置により、ユーザから受け付けたＡＰＩを利用する要求に対し、前記ＡＰＩを利用した前記情報処理装置のリソースへのアクセスを保護する認証方式を判断する判断手段を有することを特徴とする請求項１乃至５のいずれか一項に記載の情報処理システム。
【請求項７】
前記情報処理装置により、前記サービス利用装置から受け付けたＡＰＩを利用する要求に対し、前記ＡＰＩを利用した前記情報処理装置のリソースへのアクセスを保護する認証方式を判断し、判断した内容を前記サービス利用装置に通知する認証手段を有することを特徴とする請求項１乃至６のいずれか一項に記載の情報処理システム。
【請求項８】
サービス利用装置と、前記サービス利用装置にサービスを提供する１以上の情報処理装置とを含む情報処理システムによる認証方法であって、
前記情報処理装置により、一時コードを発行する一時コード発行ステップと、
前記サービス利用装置により、前記情報処理装置から得られた一時コードを用いて機器認証トークンを生成する機器認証トークン生成ステップと、
前記情報処理装置により、前記サービス利用装置から得られた機器認証トークンの正当性を前記一時コードを用いて検証し、検証結果に応じて機器認証チケットを発行する機器認証チケット発行ステップと、
前記サービス利用装置により、前記情報処理装置から得られた機器認証チケットを用いて、前記情報処理装置のリソースにアクセスするアクセスステップと、
前記情報処理装置により、前記機器認証チケットの発行と合わせて機器認証パスワードを発行する機器認証パスワード発行ステップと
を有し、
前記機器認証チケット発行ステップは、次回以降、前記サービス利用装置から得られた機器認証パスワードの正当性を検証し、検証結果に応じて前記機器認証チケットを発行する
ことを特徴とする認証方法。
【請求項９】
サービス利用装置にサービスを提供する情報処理装置であって、
一時コードを発行する一時コード発行手段と、
前記サービス利用装置により、前記情報処理装置から得られた一時コードを用いて機器認証トークンが生成され、当該機器認証トークンを指定した機器認証チケットの取得要求が行われると、前記サービス利用装置から得られた機器認証トークンの正当性を前記一時コードを用いて検証し、検証結果に応じて、前記サービス利用装置による前記情報処理装置のリソースへのアクセスを可能とする機器認証チケットを発行する機器認証チケット発行手段と、
前記機器認証チケットの発行と合わせて機器認証パスワードを発行する機器認証パスワード発行手段と
を有し、
前記機器認証チケット発行手段は、次回以降、前記サービス利用装置から得られた機器認証パスワードの正当性を検証し、検証結果に応じて前記機器認証チケットを発行する
ことを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、情報処理システム、及び認証方法に関する。
【背景技術】
【０００２】
近年、ユーザが必要な時に必要な機能だけを利用するといったサービス提供形態が増加している。例えば、ユーザが欲しい機能だけを自由に選んでサービスを利用するソフトウェア利用形態であるＳａａＳ（Ｓｏｆｔｗａｒｅ  ａｓ  ａ  Ｓｅｒｖｉｃｅ）や、インターネット上のコンピューティング・リソースの組合せ、エンドユーザに対して付加価値の高いサービスを提供するクラウドコンピューティング等である。
【０００３】
上述したサービスを利用するため、クライアントが、サーバ側でクライアントのデバイスＩＤを用いて生成した認証トークンを使用し、認証処理を行う方法が知られている（例えば、特許文献１参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述した特許文献１の手法では、単にクライアントのデバイスＩＤを用いて認証トークンを生成しているだけである。したがって、クライアントのデバイスＩＤの情報が漏洩した場合には、上述したサービスを利用しようとする他のクライアントからのアクセスを制限することができなくなる。
【０００５】
一つの側面では、本発明は、セキュリティ強度を高めることを目的とする。
【課題を解決するための手段】
【０００６】
一態様において、サービス利用装置と、前記サービス利用装置にサービスを提供する１以上の情報処理装置とを含む情報処理システムであって、前記情報処理装置により、一時コードを発行する一時コード発行手段と、前記サービス利用装置により、前記情報処理装置から得られた一時コードを用いて機器認証トークンを生成する機器認証トークン生成手段と、前記情報処理装置により、前記サービス利用装置から得られた機器認証トークンの正当性を前記一時コードを用いて検証し、検証結果に応じて機器認証チケットを発行する機器認証チケット発行手段と、前記サービス利用装置により、前記情報処理装置から得られた機器認証チケットを用いて、前記情報処理装置のリソースにアクセスするアクセス手段と、前記情報処理装置により、前記機器認証チケットの発行と合わせて機器認証パスワードを発行する機器認証パスワード発行手段とを有し、前記機器認証チケット発行手段は、次回以降、前記サービス利用装置から得られた機器認証パスワードの正当性を検証し、検証結果に応じて前記機器認証チケットを発行する。
【発明の効果】
【０００７】
セキュリティ強度を高めることが可能となる。
【図面の簡単な説明】
【０００８】
【図１】本実施形態に係る情報処理システムの一例の構成図である。
【図２】本実施形態に係るコンピュータの一例のハードウェア構成図である。
【図３】本実施形態に係る画像形成装置の一例のハードウェア構成図である。
【図４】本実施形態に係るサービス提供システムの一例の構成図である。
【図５】サービスプラットフォーム提供システムの一例の処理ブロック図である。
【図６】本実施形態に係る画像形成装置の一例の処理ブロック図である。
【図７】機器認証トークンを用いた機器認証シーケンスの一例を示す図である。
【図８】機器認証パスワードを用いた機器認証シーケンスの一例を示す図である。
【図９】機器認証チケットを保持している場合の機器認証シーケンスの一例を示す図である。
【図１０】機器認証とテナント認証を組み合わせたシーケンスの一例を示す図である。
【図１１】機器認証が必要か否かが通知されるシーケンスの一例を示す図である。
【図１２】各種テーブルの構造例を示す図である。
【発明を実施するための形態】
【０００９】
以下、実施の形態について詳細に説明する。
【００１０】
＜システム構成＞
図１は、本実施形態に係る情報処理システムの一例の構成図である。図１に示す情報処理システム１は、ユーザシステム１０、アプリマーケット提供システム２０、サービス提供システム３０、サービスプラットフォーム提供システム４０、及び業務プラットフォーム提供システム５０を有する。
【００１１】
ユーザシステム１０、アプリマーケット提供システム２０、サービス提供システム３０、及びサービスプラットフォーム提供システム４０は、インターネット等のネットワークＮ１を介して接続されている。また、サービスプラットフォーム提供システム４０、及び業務プラットフォーム提供システム５０は、専用回線等で接続されている。
【００１２】
ユーザシステム１０のネットワークＮ２は、ファイアウォールＦＷの内側にあるプライベートなネットワークである。ファイアウォールＦＷは、不正なアクセスを検出及び遮断する。ネットワークＮ２には、ユーザ端末１１、複合機等の画像形成装置１２が接続されている。なお、画像形成装置１２は、ユーザがサービスを試用又は利用する電子機器の一例である。
【００１３】
ユーザ端末１１は、一般的なＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）等が搭載された情報処理装置によって実現することが可能である。ユーザ端末１１は、無線による通信の手段又は有線による通信の手段を有する。ユーザ端末１１は、スマートフォンや携帯電話、タブレット端末、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）等のユーザが操作可能な端末である。
【００１４】
画像形成装置１２は、複合機等の画像形成機能を有する装置である。画像形成装置１２は、無線による通信の手段又は有線による通信の手段を有する。画像形成装置１２は、例えばブラウザが搭載された複合機、コピー機、スキャナ、プリンタ、レーザプリンタ、プロジェクタ、電子黒板等、画像形成に係る処理を行う装置である。図１の例では、一例としてユーザ端末１１、画像形成装置１２がそれぞれ一台である例を示しているが複数台であっても良い。
【００１５】
また、アプリマーケット提供システム２０のアプリマーケット提供サーバ２１は、ファイアウォールＦＷを介してネットワークＮ１に接続される。アプリマーケット提供サーバ２１は、一般的なＯＳ等が搭載された一台以上の情報処理装置によって実現することが可能である。
【００１６】
アプリマーケット提供システム２０は、販売地域や販売会社等ごとに設けても良い。アプリマーケット提供サーバ２１は、例えばサービス一覧画面や申し込み画面等のアプリマーケット画面をユーザ端末１１や画像形成装置１２に提供する。
【００１７】
サービス提供システム３０は、ファイアウォールＦＷを介してネットワークＮ１に接続されている。サービス提供システム３０は、ユーザ端末１１や画像形成装置１２に各種サービスを提供する。サービス提供システム３０は、一般的なＯＳ等が搭載された一台以上の情報処理装置によって実現することが可能である。
【００１８】
サービス提供システム３０が提供するサービスは、サービスプラットフォーム提供システム４０の運営者が提供するサービスの他、外部のサービスプロバイダ等が提供するサービスであっても良い。
【００１９】
サービスプラットフォーム提供システム４０は、ファイアウォールＦＷを介してネットワークＮ１に接続されている。サービスプラットフォーム提供システム４０は、一般的なＯＳ等が搭載された一台以上の情報処理装置によって実現することが可能である。
【００２０】
サービスプラットフォーム提供システム４０は、例えば認証・認可、テナント・ユーザ管理、ライセンス管理、アカウント登録等の機能を有している。サービスプラットフォーム提供システム４０は、ユーザ端末１１、画像形成装置１２からのアカウント登録やログインの要求を受け付ける。また、サービスプラットフォーム提供システム４０は、サービス提供システム３０からの認証チケットの確認要求やユーザ情報の取得要求を受け付ける。
【００２１】
業務プラットフォーム提供システム５０のネットワークＮ３は、ファイアウォールＦＷの内側にあるプライベートなネットワークである。ネットワークＮ３には、業務端末５１、ライセンス管理サーバ５２が接続されている。業務端末５１及びライセンス管理サーバ５２は、一般的なＯＳ等が搭載された一台以上の情報処理装置によって実現することが可能である。
【００２２】
業務端末５１は、無線による通信の手段又は有線による通信の手段を有する。業務端末５１は、スマートフォンや携帯電話、タブレット端末、ＰＣ等の業務担当が操作可能な端末である。業務担当は、業務端末５１からライセンス管理サーバ５２にライセンス発行を要求することが可能である。
【００２３】
ライセンス管理サーバ５２は、ライセンス管理等の機能を有している。ライセンス管理サーバ５２は、サービスプラットフォーム提供システム４０や業務端末５１から、ライセンス発行等の要求を受け付ける。図１に示す情報処理システム１の構成は、一例であって他の構成であっても良い。
【００２４】
＜コンピュータのハードウェア構成＞
図１に示すユーザ端末１１、アプリマーケット提供サーバ２１、業務端末５１、及びライセンス管理サーバ５２は、例えば図２に示すようなハードウェア構成のコンピュータにより実現される。また、図１に示すサービス提供システム３０、及びサービスプラットフォーム提供システム４０を実現する情報処理装置は、例えば図２に示すハードウェア構成のコンピュータにより実現される。図２は、本実施形態に係るコンピュータの一例のハードウェア構成図である。
【００２５】
図２に示すコンピュータ５００は、入力装置５０１、表示装置５０２、外部Ｉ／Ｆ５０３、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）５０４、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）５０５、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）５０６、通信Ｉ／Ｆ５０７、及びＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）５０８等を備え、それぞれがバスＢで相互に接続されている。なお、入力装置５０１及び表示装置５０２は、必要なときに接続して利用する形態であっても良い。
【００２６】
入力装置５０１は、キーボードやマウス等を含み、ユーザが各操作信号を入力するのに用いられる。表示装置５０２は、ディスプレイ等を含み、コンピュータ５００による処理結果を表示する。
【００２７】
外部Ｉ／Ｆ５０３は、外部装置とのインタフェースである。外部装置には、記録媒体５０３ａ等がある。これにより、コンピュータ５００は、外部Ｉ／Ｆ５０３を介して記録媒体５０３ａの読み取り及び／又は書き込みを行うことが可能である。記録媒体５０３ａには、フレキシブルディスク、ＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）、ＳＤメモリカード（ＳＤ  Ｍｅｍｏｒｙ  ｃａｒｄ）、ＵＳＢメモリ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ  ｍｅｍｏｒｙ）等がある。
【００２８】
ＲＡＭ５０４は、プログラムやデータを一時保持する揮発性の半導体メモリ（記憶装置）である。ＲＯＭ５０５は、電源を切ってもプログラムやデータを保持することが可能な不揮発性の半導体メモリ（記憶装置）である。ＲＯＭ５０５には、コンピュータ５００の起動時に実行されるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）、ＯＳ設定、及びネットワーク設定等のプログラムやデータが格納されている。
【００２９】
ＣＰＵ５０６は、ＲＯＭ５０５やＨＤＤ５０８等の記憶装置からプログラムやデータをＲＡＭ５０４上に読み出し、処理を実行することで、コンピュータ５００全体の制御や機能を実現する演算装置である。
【００３０】
通信Ｉ／Ｆ５０７は、コンピュータ５００をネットワークＮ１、Ｎ２及びＮ３に接続するインタフェースである。これにより、コンピュータ５００は、通信Ｉ／Ｆ５０７を介してデータ通信を行うことが可能である。
【００３１】
ＨＤＤ５０８は、プログラムやデータを格納している不揮発性の記憶装置である。格納されるプログラムやデータは、例えばコンピュータ５００全体を制御する基本ソフトウェアであるＯＳや、ＯＳ上において各種機能を提供するアプリケーションソフトウェア等である。なお、コンピュータ５００は、ＨＤＤ５５の代わりにＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）が設けられても良い。
【００３２】
本実施形態に係るユーザ端末１１、アプリマーケット提供サーバ２１、業務端末５１、及びライセンス管理サーバ５２は、コンピュータ５００のハードウェア構成により後述する各種処理を実現することが可能である。また、本実施形態に係るサービス提供システム３０、及びサービスプラットフォーム提供システム４０を実現する情報処理装置は、コンピュータ５００のハードウェア構成により後述する各種処理を実現することが可能である。
【００３３】
＜画像形成装置のハードウェア構成＞
図１に示す画像形成装置１２は、例えば図３に示すようなハードウェア構成のコンピュータにより実現される。図３は、本実施形態に係る画像形成装置の一例のハードウェア構成図である。図３に示した画像形成装置１２は、コントローラ６０１、操作パネル６０２、外部Ｉ／Ｆ６０３、通信Ｉ／Ｆ６０４、プリンタ６０５、及びスキャナ６０６等を備える。
【００３４】
コントローラ６０１は、ＣＰＵ６１１、ＲＡＭ６１２、ＲＯＭ６１３、ＮＶＲＡＭ６１４及びＨＤＤ６１５等を備える。ＲＯＭ６１３は、各種プログラムやデータが格納されている。ＲＡＭ６１２は、プログラムやデータを一時保持する。ＮＶＲＡＭ６１４は、例えば設定情報等が格納されている。また、ＨＤＤ６１５は、各種プログラムやデータが格納されている。
【００３５】
ＣＰＵ６１１は、ＲＯＭ６１３やＮＶＲＡＭ６１４、ＨＤＤ６１５等からプログラムやデータ、設定情報等をＲＡＭ６１２上に読み出し、処理を実行することで、画像形成装置１２全体の制御や機能を実現する。
【００３６】
操作パネル６０２は、ユーザからの入力を受け付ける入力部と、表示を行う表示部とを備えている。外部Ｉ／Ｆ６０３は、外部装置とのインタフェースである。外部装置には、記録媒体６０３ａ等がある。これにより、画像形成装置１２は、外部Ｉ／Ｆ６０３を介して記録媒体６０３ａの読み取り及び／又は書き込みを行うことが可能である。記録媒体６０３ａには、ＩＣカード、フレキシブルディスク、ＣＤ、ＤＶＤ、ＳＤメモリカード、ＵＳＢメモリ等がある。
【００３７】
通信Ｉ／Ｆ６０４は、画像形成装置１２をネットワークＮ２に接続させるインタフェースである。これにより画像形成装置１２は、通信Ｉ／Ｆ６０４を介してデータ通信を行うことが可能である。プリンタ６０５は、印刷データを用紙に印刷する印刷装置である。スキャナ６０６は、原稿から画像データ（電子データ）を読み取る読取装置である。なお、図１に示したファイアウォールＦＷのハードウェア構成については説明を省略する。
【００３８】
＜サービス提供システム＞
本実施形態に係るサービス提供システム３０は、例えば図４に示す構成により実現することが可能である。図４は、本実施形態に係るサービス提供システムの一例の構成図である。図４に示すサービス提供システム３０は、認証エージェント装置３１、及びサービス提供装置３２を有する。
【００３９】
認証エージェント装置３１は、ユーザ端末１１や画像形成装置１２からサービス提供装置３２に対する各種要求（リクエスト）を受け付ける。認証エージェント装置３１は、サービスプラットフォーム提供システム４０が発行した正当な認証チケットが含まれるユーザ端末１１や画像形成装置１２からの要求をサービス提供装置３２に送信するようにアクセス制御を行う。
【００４０】
また、認証エージェント装置３１は、正当な認証チケットが含まれていないユーザ端末１１や画像形成装置１２からの要求をサービスプラットフォーム提供システム４０にリダイレクトすることが可能である。このように、認証エージェント装置３１は、正当な認証チケットをユーザ端末１１や画像形成装置１２に取得させた後、ユーザ端末１１や画像形成装置１２からの要求をサービス提供装置３２に送信することが可能である。
【００４１】
サービス提供装置３２は、ユーザ端末１１や画像形成装置１２からの要求に応じたサービスを提供する。また、サービス提供装置３２は、認証エージェント装置３１に対して認証チケットの正当性を問い合わせたり、サービスの提供に必要な情報の取得を要求したりする。
【００４２】
サービス提供装置３２が提供するサービスの一例として翻訳サービスがある。画像形成装置１２は、例えば原稿からスキャンした画像データをＯＣＲ（Ｏｐｔｉｃａｌ  Ｃｈａｒａｃｔｅｒ  Ｒｅｃｏｇｎｉｔｉｏｎ：光学文字認識）した後、サービス提供装置３２に送信し、サービス提供装置３２が提供する翻訳サービスを利用する。サービス提供装置３２は、翻訳サービスの提供に必要な情報の一例としてユーザ情報を取得し、翻訳結果に含ませても良い。ユーザは、例えばユーザ端末１１からサービス提供装置３２にアクセスして翻訳結果を閲覧しても良く、電子メールで翻訳結果を受け取っても良い。
【００４３】
＜サービスプラットフォーム提供システム＞
本実施形態に係るサービスプラットフォーム提供システム４０は、例えば図５に示す処理ブロックにより実現される。図５は、本実施形態に係るサービスプラットフォーム提供システムの一例の処理ブロック図である。
【００４４】
図５に示すサービスプラットフォーム提供システム４０は、アプリケーション１０１、共通サービス１０２、データベース（ＤＢ）１０３、及びプラットフォームＡＰＩ１０４を実現している。
【００４５】
アプリケーション１０１は、ポータルサービスアプリ１１１、スキャンサービスアプリ１１２、プリントサービスアプリ１１３、アカウント登録アプリ１１４を一例として有している。
【００４６】
ポータルサービスアプリ１１１は、ポータルサービスを提供するアプリケーションである。ポータルサービスは、情報処理システム１を利用するための入り口となるサービスを提供する。スキャンサービスアプリ１１２は、スキャンサービスを提供するアプリケーションのＵＩ（ユーザインタフェース）である。
【００４７】
また、プリントサービスアプリ１１３は、プリントサービスを提供するアプリケーションのＵＩである。アカウント登録アプリ１１４は、アカウント登録サービスを提供するアプリケーションのＵＩである。なお、アプリケーション１０１には、その他のサービスアプリが含まれていても良い。
【００４８】
スキャンサービスアプリ１１２、プリントサービスアプリ１１３、及びアカウント登録アプリ１１４のＵＩには、ユーザ端末１１又は画像形成装置１２で表示又は実行されるＮａｔｉｖｅアプリ、ＨＴＭＬ／ＪａｖａＳｃｒｉｐｔ（登録商標）データが含まれていても良い。Ｎａｔｉｖｅアプリは、Ｗｅｂアプリと対比するものであり、主な処理をユーザ端末１１や画像形成装置１２で行うタイプのアプリケーションである。Ｗｅｂアプリは、主な処理をサービスプラットフォーム提供システム４０で行うタイプのアプリケーションである。
【００４９】
プラットフォームＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）１０４は、ポータルサービスアプリ１１１等のアプリケーション１０１が共通サービス１０２を利用するためのインタフェースである。
【００５０】
プラットフォームＡＰＩ１０４は、アプリケーション１０１からの要求を共通サービス１０２が受信するために設けられた予め定義されたインタフェースであり、例えば関数やクラス等により構成される。プラットフォームＡＰＩ１０４は、サービスプラットフォーム提供システム４０が複数の情報処理装置で構成される場合、ネットワーク経由で利用可能な例えばＷｅｂ  ＡＰＩにより実現することが可能である。
【００５１】
共通サービス１０２は、スキャンサービス部１２１、プリントサービス部１２２、アカウント登録部１２３、認証・認可部１３１、テナント管理部１３２、ユーザ管理部１３３、ライセンス管理部１３４、機器管理部１３５、一時画像保存部１３６、データ保管部１３７、画像処理ワークフロー制御部１３８、ログ収集部１３９を有する。また、画像処理ワークフロー制御部１３８は、メッセージキュー１４１、１つ以上のワーカー（Ｗｏｒｋｅｒ）１４２を有する。ワーカー１４２は、画像変換や画像送信などの機能を実現する。
【００５２】
スキャンサービス部１２１は、スキャンサービスアプリ１１２のロジック（ＡＰＩ）として機能する。プリントサービス部１２２は、プリントサービスアプリ１１３のロジック（ＡＰＩ）として機能する。また、アカウント登録部１２３は、アカウント登録アプリ１１４のロジック（ＡＰＩ）として機能する。
【００５３】
認証・認可部１３１は、ユーザ端末１１や画像形成装置１２等のオフィス機器からのログイン要求に基づいて認証・認可を実行する。オフィス機器は、ユーザ端末１１、画像形成装置１２等の総称である。
【００５４】
認証・認可部１３１は、例えばユーザ情報記憶部１５３、ライセンス情報記憶部１５４等にアクセスしてユーザを認証・認可する。また、認証・認可部１３１は、例えばテナント情報記憶部１５２、ライセンス情報記憶部１５４、機器情報記憶部１５５等にアクセスして画像形成装置１２等をクライアント認証する。
【００５５】
テナント管理部１３２は、テナント情報記憶部１５２に記憶されているテナント情報を管理する。ユーザ管理部１３３は、ユーザ情報記憶部１５３に記憶されているユーザ情報を管理する。
【００５６】
ライセンス管理部１３４は、ライセンス情報記憶部１５４に記憶されているライセンス情報を管理する。機器管理部１３５は、機器情報記憶部１５５に記憶されている機器情報を管理する。一時画像保存部１３６は、一時画像記憶部１５６への一時画像の保存、一時画像記憶部１５６からの一時画像の取得を行う。データ保管部１３７は、ジョブ情報記憶部１５７等にデータを保管する。
【００５７】
画像処理ワークフロー制御部１３８は、アプリケーション１０１からの要求に基づいて画像処理に関するワークフローを制御する。メッセージキュー１４１は、処理の種類に対応するキューを有する。画像処理ワークフロー制御部１３８は、処理（ジョブ）に係るリクエストのメッセージを、そのジョブの種類に対応するキューに投入する。
【００５８】
ワーカー１４２は、対応するキューを監視している。そして、キューにメッセージが投入されるとワーカー１４２は、対応するジョブの種類に応じた画像変換や画像送信等の処理を行う。キューに投入されたメッセージは、ワーカー１４２が主体的に読み出す（Ｐｕｌｌ）ようにしても良く、キューからワーカー１４２に提供する（Ｐｕｓｈ）ようにしても良い。ログ収集部１３９は、例えばログ情報記憶部１５１に収集したログ情報を記憶させる。
【００５９】
データベース１０３は、ログ情報記憶部１５１、テナント情報記憶部１５２、ユーザ情報記憶部１５３、ライセンス情報記憶部１５４、機器情報記憶部１５５、一時画像記憶部１５６、ジョブ情報記憶部１５７、及びアプリケーション固有の設定情報記憶部１５８を有する。
【００６０】
ログ情報記憶部１５１は、ログ情報を記憶する。テナント情報記憶部１５２は、テナント情報を記憶する。ユーザ情報記憶部１５３は、ユーザ情報を記憶する。ライセンス情報記憶部１５４は、ライセンス情報を記憶する。機器情報記憶部１５５は、機器情報を記憶する。一時画像記憶部１５６は、一時画像を記憶する。一時画像は、例えばワーカー１４２が処理するスキャン画像等のファイルやデータである。
【００６１】
ジョブ情報記憶部１５７は、処理（ジョブ）に係るリクエストの情報（ジョブ情報）を記憶する。アプリケーション固有の設定情報記憶部１５８は、アプリケーション１０１に固有の設定情報を記憶する。
【００６２】
サービスプラットフォーム提供システム４０は、認証・認可や画像処理に関するワークフロー等の共通サービスを提供する統合基盤と、統合基盤の機能を利用してスキャンサービスやプリントサービス等のアプリサービスを提供するサービス群として機能する。
【００６３】
統合基盤は、例えば共通サービス１０２、データベース１０３及びプラットフォームＡＰＩ１０４によって構成される。サービス群は、例えばアプリケーション１０１によって構成される。このように、図５に示すサービスプラットフォーム提供システム４０は、サービス群と統合基盤とが分離された構成である。
【００６４】
図５に示すサービスプラットフォーム提供システム４０は、サービス群と統合基盤とを分離した構成により、プラットフォームＡＰＩ１０４を利用するアプリケーション１０１を容易に開発することが可能となる。また、図５に示すサービスプラットフォーム提供システム４０は、プラットフォームＡＰＩ１０４を利用するサービス提供システム３０を、容易に開発することが可能となる。
【００６５】
なお、図５に示すサービスプラットフォーム提供システム４０の処理ブロックの分類形態は一例であり、アプリケーション１０１、共通サービス１０２、データベース１０３が図５に示される階層で分類されていることが必須ではない。例えば、サービスプラットフォーム提供システム４０の処理を実施できるのであれば、図５に示される階層関係等は、特定のものに限定されない。
【００６６】
＜画像形成装置１２＞
本実施形態に係る画像形成装置１２は、例えば図６に示す処理ブロックにより実現される。図６は、本実施形態に係る画像形成装置の一例の処理ブロック図である。図６に示す画像形成装置１２は、例えば、ブラウザ２０１、ＪａｖａＳｃｒｉｐｔ２０２、制御部２０３等を実現している。
【００６７】
ブラウザ２０１は、例えばＷｅｂブラウザであり、画面表示を行う。ＪａｖａＳｃｒｉｐｔ２０２は、ブラウザ２０１からのＪａｖａＳｃｒｉｐｔ実行要求を受け付け、必要な処理の制御を行う。
【００６８】
制御部２０３は、ＪａｖａＳｃｒｉｐｔ２０２からの要求を受け付け、例えば機器認証トークンを生成する。また、制御部２０３は、機器認証トークンをコントローラ６０１の例えばＴＰＭ（Ｔｒｕｓｔｅｄ  Ｐｌａｔｆｏｒｍ  Ｍｏｄｕｌｅ）等のセキュリティチップにより安全性が確保された外部からのアクセス制限可能な記憶領域に保存する。
【００６９】
＜機器認証トークンを用いた機器認証シーケンス＞
上述した情報処理システム１において、画像形成装置１２は、サービス提供システム３０が提供するサービスを利用するにあたり、例えばＡＰＩを利用したサービスプラットフォーム提供システム４０のリソースにアクセスする場合に機器認証等を行う。図７は、機器認証トークンを用いた機器認証シーケンスの一例を示す図である。
【００７０】
図７に示すシーケンスは、画像形成装置１２におけるブラウザ２０１と、ＪａｖａＳｃｒｉｐｔ２０２と、制御部２０３と、サービスプラットフォーム提供システム４０における認証エージェント１６０と、アカウント登録部１２３と、認証・認可部１３１とにより実行される。
【００７１】
なお、認証エージェント１６０は、図５に示すサービスプラットフォーム提供システム４０のアプリケーション１０１や共通サービス１０２に設けられ、例えば画像形成装置１２からのアカウント登録部１２３等に対する各種要求を受け付ける。認証エージェント１６０は、画像形成装置１２からのＡＰＩを利用したサービスプラットフォーム提供システム４０のリソースへのアクセス要求のうち、サービスプラットフォーム提供システム４０が発行した正当な機器認証チケット等が含まれる要求について受け付ける。
【００７２】
図７の例では、画像形成装置１２は、ユーザからの翻訳アプリの起動を受け付けると、サービスプラットフォーム提供システム４０のアカウント登録部１２３に対して起動要求を行い（Ｓ１０）、ＨＴＭＬ／ＪａｖａＳｃｒｉｐｔデータを取得する。画像形成装置１２のブラウザ２０１は、ユーザから、翻訳サービスの文字認識に用いるＯＣＲ辞書のダウンロード要求等を受け付けると（Ｓ１１）、ＪａｖａＳｃｒｉｐｔ２０２に対してＪａｖａＳｃｒｉｐｔの実行要求を行う（Ｓ１２）。
【００７３】
ここで、ＪａｖａＳｃｒｉｐｔ２０２は、ＯＣＲ辞書のダウンロード要求等のサービスプラットフォーム提供システム４０のＡＰＩを利用する要求に対し、そのＡＰＩを利用したサービスプラットフォーム提供システム４０のリソースへのアクセスを保護する認証方式を判断する。
【００７４】
ＪａｖａＳｃｒｉｐｔ２０２は、例えば機器認証が必要である判断すると、画像形成装置１２の装置ごとに固有の識別情報であるシリアルＩＤ（デバイス情報）の取得要求を制御部２０３に行い（Ｓ１３）、シリアルＩＤを取得する。
【００７５】
次に、ＪａｖａＳｃｒｉｐｔ２０２は、シリアルＩＤを指定して、サービスプラットフォーム提供システム４０の認証・認可部１３１に対して一時コードの取得要求を行う（Ｓ１４）。認証・認可部１３１は、乱数を発生させることにより一時コードを発行すると（Ｓ１５）、シリアルＩＤと発行した一時コードとを対応させた一時コードテーブルを作成する。
【００７６】
次に、ＪａｖａＳｃｒｉｐｔ２０２は、サービスプラットフォーム提供システム４０から一時コードを取得すると、制御部２０３に対して機器認証トークンの取得要求を行う（Ｓ１６）。制御部２０３は、シリアルＩＤを取得すると（Ｓ１７）、シリアルＩＤと一時コードとを含めて暗号化した機器認証トークンを生成する（Ｓ１８）。
【００７７】
Ｓ１８の処理では、制御部２０３は、シリアルＩＤ及び一時コードを用いることにより、例えば機器認証トークンを毎回異なる文字列で生成することが可能となる。また、制御部２０３は、外部から容易にアクセスできないコントローラ６０１等の記憶領域に機器認証トークンを保存することで、より安全性を高めることが可能となる。
【００７８】
次に、ＪａｖａＳｃｒｉｐｔ２０２は、制御部２０３から取得した機器認証トークンを指定して、認証・認可部１３１に対して機器認証チケットの取得要求を行う（Ｓ１９）。認証・認可部１３１は、画像形成装置１２から取得した機器認証トークンの検証を行う（Ｓ２０）。
【００７９】
Ｓ２０の処理では、認証・認可部１３１は、機器認証チケットを復号して、機器認証チケットに含まれる一時コードとシリアルＩＤとを抽出する。認証・認可部１３１は、一時コードテーブルで管理している一時コードとシリアルＩＤとの組み合わせと、機器認証チケットを復号して抽出した一時コードとシリアルＩＤとを照合し、一致しているか判断する（Ｓ２１）。
【００８０】
認証・認可部１３１は、Ｓ２１の処理で一時コードとシリアルＩＤとが一致していると判断すると、機器の正当性を表す機器認証チケットと機器認証パスワードとを発行する（Ｓ２２）。Ｓ２２の処理では、認証・認可部１３１は、シリアルＩＤと発行した機器認証チケットとを対応させた機器認証チケットテーブルと、シリアルＩＤと発行した機器認証パスワードを対応させた機器認証パスワードテーブルとを作成する。
【００８１】
なお、Ｓ２２の処理では、一時コード及びシリアルＩＤの組合わせが一致しているか判断することにより、一時コードを発行した画像形成装置１２に対してのみ機器認証チケットの発行を許可することが可能となる。
【００８２】
次に、認証・認可部１３１は、一時コードテーブルから使用した一時コードを破棄する（Ｓ２３）。このように、一度使用した一時コードを破棄することで、ある一時コードを利用して機器認証トークンを生成できる回数を制限することが可能となる。また、一時コードから生成される機器認証トークンが流出したとしても機器認証チケットを取得できないようにすることが可能となる。
【００８３】
次に、ＪａｖａＳｃｒｉｐｔ２０２は、サービスプラットフォーム提供システム４０から、Ｓ２２の処理で発行された機器認証チケット、機器認証パスワードを取得すると、制御部２０３に対して、例えば機器認証パスワードを保存するように要求する（Ｓ２４）。このように、機器認証パスワードを保存しておくことで、例えば次回以降において、機器認証パスワードを用いて機器認証チケットの発行することが可能となる。
【００８４】
次に、ＪａｖａＳｃｒｉｐｔ２０２は、サービスプラットフォーム提供システム４０から取得した機器認証チケットを用いて、認証エージェント１６０に対し、ＯＣＲ辞書のダウンロード要求（機器認証で保護されたリソースへのアクセス要求）を行う（Ｓ２５）。
【００８５】
認証エージェント１６０は、認証・認可部１３１にシリアルＩＤの取得要求を行うことで、機器認証チケットの正当性の確認を行う（Ｓ２６）。認証エージェント１６０は、認証・認可部１３１により、機器認証チケットテーブルを参照して機器認証チケットの正当性が確認され、シリアルＩＤを取得すると、シリアルＩＤを用いてアカウント登録部１２３にＯＣＲ辞書のダウンロード要求等を行う（Ｓ２７）。
【００８６】
アカウント登録部１２３は、Ｓ２７の要求に応じた処理を行う（Ｓ２８）。Ｓ２８の処理により、画像形成装置１２は、サービスプラットフォーム提供システム４０から、例えばＯＣＲ辞書等をダウンロードすることが可能となる。
【００８７】
図７に示すシーケンスでは、画像形成装置１２において一時コードを用いて毎回異なる機器認証トークンを生成して、機器認証チケットを取得するため、サービスプラットフォーム提供システム４０のアクセスに対して、セキュリティ強度を高めることが可能となる。
【００８８】
＜機器認証パスワードを用いた機器認証シーケンス＞
次に、上述した図７に示すシーケンスで、機器認証チケットの発行と合わせて発行された機器認証パスワードを用いた機器認証シーケンスについて説明する。図８は、機器認証パスワードを用いた機器認証シーケンスの一例を示す図である。
【００８９】
図８に示すシーケンスは、画像形成装置１２におけるブラウザ２０１と、ＪａｖａＳｃｒｉｐｔ２０２と、制御部２０３と、サービスプラットフォーム提供システム４０における認証エージェント１６０と、アカウント登録部１２３と、認証・認可部１３１とにより実行される。なお、図８に示すシーケンスのＳ３０〜Ｓ３２の処理は、図７に示すシーケンスのＳ１０〜Ｓ１２の処理と同様の処理であるため、ここでの説明は省略する。
【００９０】
図８の例では、画像形成装置１２は、ＪａｖａＳｃｒｉｐｔ２０２により、Ｓ３２の処理において、機器認証が必要であると判断すると、制御部２０３に対して機器認証パスワードの取得要求を行う（Ｓ３３）。上述した図７に示すシーケンス後であれば、機器認証パスワードが保存されているため、ＪａｖａＳｃｒｉｐｔ２０２は、制御部２０３から機器認証パスワードを取得する。なお、ＪａｖａＳｃｒｉｐｔ２０２は、機器認証パスワードが保存されていない場合には、図７に示すシーケンスのＳ１３の処理に進む。
【００９１】
次に、ＪａｖａＳｃｒｉｐｔ２０２は、画像形成装置１２のシリアルＩＤの取得要求を制御部２０３に行い（Ｓ３４）、シリアルＩＤを取得する。次に、ＪａｖａＳｃｒｉｐｔ２０２は、シリアルＩＤと、機器認証パスワードを指定して、認証・認可部１３１に対して機器認証チケットの取得要求を行う（Ｓ３５）。認証・認可部１３１は、画像形成装置１２から取得したシリアルＩＤにより、機器認証パスワードの検証を行う（Ｓ３６）。
【００９２】
Ｓ３６の処理では、図７に示すシーケンスのＳ２２の処理で発行した機器認証パスワードとシリアルＩＤとの組み合わせが機器認証パスワードテーブルに管理されているため、認証・認可部１３１は、画像形成装置１２から取得したシリアルＩＤと機器認証パスワードとの組み合わせと一致しているか判断する。
【００９３】
認証・認可部１３１は、Ｓ３６の処理でシリアルＩＤと機器認証パスワードとの組み合わせが一致していると判断すると、機器認証チケットと、新しい機器認証パスワードとを発行する（Ｓ３７）。Ｓ３７の処理では、認証・認可部１３１は、シリアルＩＤと発行した機器認証チケットとを対応させた機器認証チケットテーブルと、シリアルＩＤと発行した新しい機器認証パスワードとを対応させた機器認証パスワードテーブルを作成する。
【００９４】
次に、認証・認可部１３１は、機器認証パスワードテーブルから使用した機器認証パスワードを破棄する（Ｓ３８）。このように、一度使用した機器認証パスワードを破棄することで、ある機器認証パスワードからは、１つの機器認証チケットのみ発行を許可するように発行回数を制限することが可能となる。また、機器認証パスワードが流出したとしても機器認証チケットを取得できないようにすることが可能となる。
【００９５】
ＪａｖａＳｃｒｉｐｔ２０２は、サービスプラットフォーム提供システム４０から、Ｓ３７の処理で発行された機器認証チケット、新しい機器認証パスワードを取得すると、制御部２０３に対して、機器認証パスワードを保存するように要求する（Ｓ３９）。Ｓ３９の処理では、Ｓ３７の処理で発行された新しい機器認証パスワードが保存されることになる。
【００９６】
次に、ＪａｖａＳｃｒｉｐｔ２０２は、サービスプラットフォーム提供システム４０から取得した機器認証チケットとを用いて、認証エージェント１６０にＯＣＲ辞書のダウンロード要求等を行う（Ｓ４０）。なお、これ以降のＳ４１〜Ｓ４３の処理は、図７に示すＳ２６〜Ｓ２８の処理と同様の処理のため、ここでの説明は省略する。
【００９７】
図８に示すシーケンスでは、画像形成装置１２は、機器認証チケットの発行と合わせて発行された機器認証パスワードを用いて、サービスプラットフォーム提供システム４０から機器認証チケットを取得する。図８に示すシーケンスでは、画像形成装置１２における機器認証トークンを生成する際の暗号化処理や、サービスプラットフォーム提供システム４０における復号処理を行う必要がないため、サービスプラットフォーム提供システム４０のリソースにアクセスする際の応答性を向上させることが可能となる。
【００９８】
＜ブラウザで機器認証チケットを保持している場合＞
次に、上述した図７や図８に示すシーケンスにより得られた機器認証チケットを画像形成装置１２のブラウザ２０１が保持していた場合について説明する。図９は、機器認証チケットを保持している場合の機器認証シーケンスの一例を示す図である。
【００９９】
図９に示すシーケンスは、画像形成装置１２におけるブラウザ２０１と、ＪａｖａＳｃｒｉｐｔ２０２と、制御部２０３と、サービスプラットフォーム提供システム４０における認証エージェント１６０と、アカウント登録部１２３と、認証・認可部１３１とにより実行される。なお、図９に示すシーケンスのＳ５０〜Ｓ５２の処理は、図７に示すシーケンスのＳ１０〜Ｓ１２の処理と同様の処理であるため、ここでの説明は省略する。
【０１００】
図９の例では、画像形成装置１２は、ＪａｖａＳｃｒｉｐｔ２０２により、Ｓ５２の処理において、機器認証が必要であると判断すると、ブラウザ２０１に対して機器認証チケットの取得要求を行う（Ｓ５３）。上述した図７や図８に示すシーケンス後、ブラウザ２０１のクッキー（Ｃｏｏｋｉｅ）に機器認証チケットが保存されている場合には、ブラウザ２０１から機器認証チケットを取得する。
【０１０１】
次に、ＪａｖａＳｃｒｉｐｔ２０２は、機器認証チケットを用いて、認証エージェント１６０にＯＣＲ辞書のダウンロード要求等を行う（Ｓ５４）。なお、これ以降のＳ５５〜Ｓ５７の処理は、図７に示すＳ２６〜Ｓ２８の処理と同様の処理のため、ここでの説明は省略する。
【０１０２】
図９に示すシーケンスでは、画像形成装置１２は、サービスプラットフォーム提供システム４０から取得して保持していた機器認証チケットを用いるため、サービスプラットフォーム提供システム４０のリソースにアクセスする際の応答性を更に向上させることが可能となる。
【０１０３】
＜機器認証とテナント認証とを組み合わせたシーケンス＞
次に、上述した情報処理システム１において、画像形成装置１２が、サービスプラットフォーム提供システム４０のリソースにアクセスする場合に、上述した機器認証に加えてテナント認証を行う例について説明する。図１０は、機器認証とテナント認証を組み合わせたシーケンスの一例を示す図である。
【０１０４】
図１０に示すシーケンスは、画像形成装置１２におけるブラウザ２０１と、ＪａｖａＳｃｒｉｐｔ２０２と、制御部２０３と、サービスプラットフォーム提供システム４０における認証エージェント１６０と、アカウント登録部１２３と、認証・認可部１３１とにより実行される。なお、図１０の例では、画像形成装置１２が、例えば機器認証及びテナント認証が必要な例として、ユーザから翻訳サービスを利用しているユーザのユーザ一覧画面の表示要求を受け付けた例について説明する。
【０１０５】
図１０の例では、画像形成装置１２は、ユーザからユーザ一覧画面の表示要求を受け付けると、サービスプラットフォーム提供システム４０のアカウント登録部１２３に対してユーザ一覧画面の表示要求を行い（Ｓ７０）、ＨＴＭＬ／ＪａｖａＳｃｒｉｐｔデータを取得する。
【０１０６】
画像形成装置１２のブラウザ２０１は、上述した機器認証及びテナント認証が必要な操作を受け付け（Ｓ７１）、ＪａｖａＳｃｒｉｐｔ２０２に対してＪａｖａＳｃｒｉｐｔの実行要求を行う（Ｓ７２）。ＪａｖａＳｃｒｉｐｔ２０２は、ＡＰＩを利用したサービスプラットフォーム提供システム４０のリソースへのアクセスを保護する認証方式として、まず、機器認証が必要であると判断すると、シリアルＩＤの取得要求を制御部２０３に行い（Ｓ７３）、シリアルＩＤを取得する。
【０１０７】
次に、ＪａｖａＳｃｒｉｐｔ２０２は、シリアルＩＤを指定して、サービスプラットフォーム提供システム４０の認証・認可部１３１に対して一時コードの取得要求を行う（Ｓ７４）。これ以降、Ｓ７５〜Ｓ８０までの処理は、図７に示すＳ１５〜Ｓ２４の処理と同様の処理のため、ここでの説明は省略する。
【０１０８】
ＪａｖａＳｃｒｉｐｔ２０２は、ＡＰＩを利用したサービスプラットフォーム提供システム４０のリソースへのアクセスを保護する認証方式として、次に、テナント認証が必要であると判断すると、テナントＩＤの取得要求を制御部２０３に行い（Ｓ８１）、テナントＩＤを取得する。また、ＪａｖａＳｃｒｉｐｔ２０２は、テナント認証キーの取得要求を制御部２０３に行い（Ｓ８２）、テナント認証キーを取得する。
【０１０９】
上述したテナントＩＤ及びテナント認証キーは、画像形成装置１２が、翻訳サービス等を利用するため、サービスプラットフォーム提供システム４０への初回ログイン時等に、サービスプラットフォーム提供システム４０から取得して保存したものである。なお、サービスプラットフォーム提供システム４０は、画像形成装置１２が所属するテナントごとにテナントＩＤ及びテナント認証キーを発行し、テナントＩＤ及びテナント認証キーを用いて画像形成装置１２を管理する。
【０１１０】
次に、ＪａｖａＳｃｒｉｐｔ２０２は、機器認証チケット、テナントＩＤ、テナント認証キーを用いて、認証エージェント１６０にユーザ一覧画面の表示要求等（機器認証及びテナント認証で保護されたリソースへのアクセス要求）を行う（Ｓ８３）。
【０１１１】
認証エージェント１６０は、認証・認可部１３１にシリアルＩＤの取得要求を行うことで、機器認証チケットの正当性の確認を行う（Ｓ８４）。認証エージェント１６０は、認証・認可部１３１により、機器認証チケットテーブルを参照して機器認証チケットの正当性が確認され、シリアルＩＤを取得すると、シリアルＩＤ、テナントＩＤ、テナント認証キーを用いてアカウント登録部１２３にユーザ一覧画面の表示要求（テナント認証で保護されたリソースへのアクセス要求）等を行う（Ｓ８５）。
【０１１２】
アカウント登録部１２３は、認証・認可部１３１にテナント認証を要求する（Ｓ８６）。アカウント登録部１２３は、認証・認可部１３１により、テナント情報テーブルを参照して、テナントＩＤ、テナント認証キーの正当性が確認されると、Ｓ８５の要求に応じた処理を行う（Ｓ８７）。Ｓ８７の処理により、画像形成装置１２は、サービスプラットフォーム提供システム４０から、例えばユーザ一覧画面を表示するための情報を取得することが可能となる。
【０１１３】
上述した図１０のシーケンスでは、機器認証とテナント認証とを組み合わせているため、例えば流出するリソースをテナントごとにアクセス可能な範囲に限定することが可能となる。また、図１０の例では、テナントＩＤ及びテナント認証キーを用いているが、例えばテナントＩＤと対応させて画像形成装置１２の機種機番（例えば、シリアルＩＤ）を登録しておき、テナントＩＤと画像形成装置１２の機種機番を用いて、テナント認証を行っても良い。
【０１１４】
＜機器認証が必要か通知されるシーケンス＞
上述した図７〜図１０に示すシーケンスは、画像形成装置１２が、ＡＰＩを利用したサービスプラットフォーム提供システム４０のリソースへのアクセスを保護する認証方式を判断している。これに対し、画像形成装置１２の代わりに、サービスプラットフォーム提供システム４０において認証方式を判断し、その内容を通知することも可能である。図１１は、機器認証が必要か否かが通知されるシーケンスの一例を示す図である。
【０１１５】
図１１に示すシーケンスは、画像形成装置１２におけるブラウザ２０１と、ＪａｖａＳｃｒｉｐｔ２０２と、サービスプラットフォーム提供システム４０における認証エージェント１６０と、認証・認可部１３１とにより実行される。
【０１１６】
図１１の例では、画像形成装置１２のブラウザ２０１は、ＪａｖａＳｃｒｉｐｔ２０２に対してＪａｖａＳｃｒｉｐｔの実行要求を行う（Ｓ６０）。ＪａｖａＳｃｒｉｐｔ２０２は、サービスプラットフォーム提供システム４０に、例えば機器認証で保護されたＡＰＩを利用する要求を行う（Ｓ６１）。
【０１１７】
認証エージェント１６０は、認証・認可部１３１に対して、Ｓ６１の処理で受け付けた要求に含まれる認証の正当性を判断するように要求する（Ｓ６２）。認証・認可部１３１は、認証の正当性を判断する（Ｓ６３）。
【０１１８】
Ｓ６３の処理では、認証・認可部１３１は、ＯＣＲ辞書のダウンロード要求、ユーザ一覧の表示要求等、画像形成装置１２からサービスプラットフォーム提供システム４０のＡＰＩを利用する要求ごとに、機器認証、テナント認証、又はユーザ認証が必要か判断するための認証方式が設定されたテーブルを参照する。
【０１１９】
次に、認証・認可部１３１は、例えば機器認証が必要であると判断した場合には、画像形成装置１２から受け付けた要求に機器認証チケットが含まれているか、機器認証チケットの正当性等について判断する。更に、認証・認可部１３１は、例えばテナント認証が必要であると判断した場合には、画像形成装置１２から受け付けた要求にテナントＩＤやテナント認証キー等が含まれているか、テナントＩＤやテナント認証キーの正当性等について判断する。
【０１２０】
Ｓ６３の処理では、画像形成装置１２から受け付けた要求に機器認証チケット等が含まれないため、認証が失敗することになる。したがって、認証・認可部１３１は、エラーメッセージを作成する（Ｓ６４）。
【０１２１】
Ｓ６４の処理では、認証・認可部１３１は、例えば機器認証やテナント認証等が必要な場合には、その内容を通知するエラーメッセージを作成する。なお、認証・認可部１３１は、例えば、機器認証チケットやテナントＩＤやテナント認証キーの正当性等について通知するエラーメッセージを作成しても良い。
【０１２２】
上述した図１１に示すシーケンスにより、画像形成装置１２は、サービスプラットフォーム提供システム４０から通知された認証方式に基づき、ユーザに必要な認証方式を通知することが可能となる。
【０１２３】
＜各種テーブルの構造例＞
上述したサービスプラットフォーム提供システム４０において用いられる各種テーブルの構造例について説明する。図１２は、各種テーブルの構造例を示す図である。図１２（Ａ）は、一時コードテーブルの構造例を示し、図１２（Ｂ）は、機器認証チケットテーブルの構造例を示し、図１２（Ｃ）は、機器認証パスワードテーブルの構造例を示し、図１２（Ｄ）は、テナント情報テーブルの構造例を示している。
【０１２４】
図１２（Ａ）に示す一時コードテーブルは、例えば「機器認証用一時コード」、「機種機番」、「作成日時」等のデータ項目を有しているが、項目の内容や順序については、これに限定されるものではない。
【０１２５】
「機器認証用一時コード」には、サービスプラットフォーム提供システム４０の認証・認可部１３１において発行された一時コードが格納される。「機種機番」には、一時コードを発行した画像形成装置１２の機種を識別する情報（例えば、シリアルＩＤ）が格納される。「作成日時」には、一時コードを発行した日時が格納される。「作成日時」は、例えば、一時コードの有効期限の設定に用いられる。
【０１２６】
図１２（Ｂ）に示す機器認証チケットテーブルは、例えば「機器認証チケット」、「機種機番」、「作成日時」等のデータ項目を有しているが、項目の内容や順序については、これに限定されるものではない。
【０１２７】
「機器認証チケット」には、サービスプラットフォーム提供システム４０の認証・認可部１３１において発行された機器認証チケットが格納される。「機種機番」には、機器認証チケットを発行した画像形成装置１２の機種を識別する情報（例えば、シリアルＩＤ）が格納される。「作成日時」には、機器認証チケットを発行した日時が格納される。「作成日時」は、例えば、機器認証チケットの有効期限の設定に用いられる。
【０１２８】
図１２（Ｃ）に示す機器認証パスワードテーブルは、例えば「機器認証パスワード」、「機種機番」、「作成日時」等のデータ項目を有しているが、項目の内容や順序については、これに限定されるものではない。
【０１２９】
「機器認証パスワード」には、サービスプラットフォーム提供システム４０の認証・認可部１３１において機器認証チケットと合わせて発行された機器認証パスワードが格納される。「機種機番」には、機器認証パスワードを発行した画像形成装置１２の機種を識別する情報（例えば、シリアルＩＤ）が格納される。「作成日時」には、機器認証パスワードを発行した日時が格納される。「作成日時」は、例えば、機器認証パスワードの有効期限の設定に用いられる。
【０１３０】
図１２（Ｄ）に示すテナント情報テーブルは、例えば「テナントＩＤ」、「テナント認証キー」等のデータ項目を有しているが、項目の内容や順序については、これに限定されるものではない。
【０１３１】
「テナントＩＤ」には、企業、部署等のグループを特定する情報が格納される。なお、テナントという言語に限定されるものではなく、例えば契約を識別するテナント情報が格納されても良い。テナントＩＤは、例えば画像形成装置１２が所属するテナントごとに発行される。「テナント認証キー」には、テナントＩＤと合わせて発行されるテナントの認証キーが格納される。
【０１３２】
図１２に示すテーブルを参照することで、サービスプラットフォーム提供システム４０の認証・認可部１３１は、上述した各認証の検証において、一時コードや機器認証チケット等に対する正当性について判断することが可能となる。
【０１３３】
上述した実施形態によれば、例えばＡＰＩを利用するサービスプラットフォーム提供システム４０のリソースへのアクセスにおいて、ユーザに対するユーザ認証を要求することなく、画像形成装置１２の機器認証を行うことで、より簡便な方式により認証を行うことが可能となる。また、機器認証に加えてテナント認証を行うことで、更にセキュリティの強度を高めることが可能となる。
【０１３４】
本発明は、具体的に開示された上記の実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。なお、画像形成装置１２は、サービス利用装置の一例である。サービスプラットフォーム提供システム４０の認証・認可部１３１は、一時コード発行手段、機器認証チケット発行手段、機器認証パスワード発行手段、認証手段の一例である。画像形成装置１２の制御部２０３は、機器認証トークン生成手段の一例である。ＪａｖａＳｃｒｉｐｔ２０２は、アクセス手段、判断手段の一例である。
【符号の説明】
【０１３５】
１    情報処理システム
１０    ユーザシステム
１１    ユーザ端末
１２    画像形成装置
２０    アプリマーケット提供システム
２１    アプリマーケット提供サーバ
３０    サービス提供システム
３１  認証エージェント装置
３２  サービス提供装置
４０    サービスプラットフォーム提供システム
５０    業務プラットフォーム提供システム
５１    業務端末
５２    ライセンス管理サーバ
１０１    アプリケーション
１０２    共通サービス
１０３    データベース（ＤＢ）
１０４    プラットフォームＡＰＩ
１１１    ポータルサービスアプリ
１１２    スキャンサービスアプリ
１１３    プリントサービスアプリ
１１４    アカウント登録アプリ
１２１    スキャンサービス部
１２２    プリントサービス部
１２３    アカウント登録部
１３１    認証・認可部
１３２    テナント管理部
１３３    ユーザ管理部
１３４    ライセンス管理部
１３５    機器管理部
１３６    一時画像保存部
１３７    データ保管部
１３８    画像処理ワークフロー制御部
１３９    ログ収集部
１４１    メッセージキュー
１４２    ワーカー
１５１    ログ情報記憶部
１５２    テナント情報記憶部
１５３    ユーザ情報記憶部
１５４    ライセンス情報記憶部
１５５    機器情報記憶部
１５６    一時画像記憶部
１５７    ジョブ情報記憶部
１５８    アプリケーション固有の設定情報記憶部
２０１    ブラウザ
２０２    ＪａｖａＳｃｒｉｐｔ
２０３    制御部
５００    コンピュータ
５０１    入力装置
５０２    表示装置
５０３    外部Ｉ／Ｆ
５０３ａ    記録媒体
５０４    ＲＡＭ
５０５    ＲＯＭ
５０６    ＣＰＵ
５０７    通信Ｉ／Ｆ
５０８    ＨＤＤ
６０１    コントローラ
６０２    操作パネル
６０３    外部Ｉ／Ｆ
６０３ａ    記録媒体
６０４    通信Ｉ／Ｆ
６０５    プリンタ
６０６    スキャナ
６１１    ＣＰＵ
６１２    ＲＡＭ
６１３    ＲＯＭ
６１４    ＮＶＲＡＭ
６１５    ＨＤＤ
ＦＷ    ファイアウォール
Ｎ１〜Ｎ３    ネットワーク
【先行技術文献】
【特許文献】
【０１３６】
【特許文献１】特開２０１２−１９１２７０号公報
【図１】
0006380009.tif 000002
【図２】
0006380009.tif 000003
【図３】
0006380009.tif 000004
【図４】
0006380009.tif 000005
【図５】
0006380009.tif 000006
【図６】
0006380009.tif 000007
【図７】
0006380009.tif 000008
【図８】
0006380009.tif 000009
【図９】
0006380009.tif 000010
【図１０】
0006380009.tif 000011
【図１１】
0006380009.tif 000012
【図１２】
0006380009.tif 000013