JP6707924B2 - 情報処理システム、情報処理装置、情報処理方法、及びプログラム - Google Patents

情報処理システム、情報処理装置、情報処理方法、及びプログラム Download PDF

Info

Publication number
JP6707924B2
JP6707924B2 JP2016051514A JP2016051514A JP6707924B2 JP 6707924 B2 JP6707924 B2 JP 6707924B2 JP 2016051514 A JP2016051514 A JP 2016051514A JP 2016051514 A JP2016051514 A JP 2016051514A JP 6707924 B2 JP6707924 B2 JP 6707924B2
Authority
JP
Japan
Prior art keywords
function
application
authentication token
development
execution
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2016051514A
Other languages
English (en)
Other versions
JP2017167755A (ja
Inventor
洋之 井上
洋之 井上
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2016051514A priority Critical patent/JP6707924B2/ja
Priority to US15/447,352 priority patent/US10162958B2/en
Publication of JP2017167755A publication Critical patent/JP2017167755A/ja
Application granted granted Critical
Publication of JP6707924B2 publication Critical patent/JP6707924B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)
  • Facsimiles In General (AREA)

Description

本発明は、情報処理システム、情報処理装置、情報処理方法、及びプログラムに関する。
近年、画像形成装置の各種機能を利用するためのWebAPI(Application Programming Interface)を公開することで、画像形成装置に搭載されるアプリケーションをサードベンダー等で開発することが行われている。このような場合、サードベンダー等には、画像形成装置の製造元ベンダー等により、開発中のアプリケーションがWebAPIを利用するための認証用のトークン(開発用トークン)が発行される。また、アプリケーションの開発が完了した場合には、当該アプリケーションがWebAPIを利用するための認証用のトークン(製品用トークン)が発行される。
また、認証用のトークンを用いて、画像形成装置に搭載されたアプリケーションを利用する技術が知られている(例えば特許文献1参照)。
ここで、製品用トークンが発行された以降は、当該製品用トークンを用いて、例えば、開発中の他のアプリケーションがWebAPIを利用することができる場合があった。このため、画像形成装置の製造元ベンダー等が把握していないアプリケーションがサードベンダー等により開発される可能性があった。
本発明の実施の形態は、上記の点に鑑みてなされたもので、トークンの不正利用を防止することを目的とする。
上記目的を達成するため、本発明の実施の形態は、所定の機能を実行する機器と、該機能を利用した所定のサービスを提供するアプリケーションとを有する情報処理システムであって、前記アプリケーションから送信される前記機能の実行要求を受信する受信手段と、前記受信手段により前記実行要求を受信すると、該実行要求に含まれる認証トークンの種別を特定する第1の特定手段と、前記機能を実行する機器の種別を特定する第2の特定手段と、前記第1の特定手段により特定された前記認証トークンの種別と、前記第2の特定手段により特定された前記機器の種別とに基づいて、前記認証トークンが有効であるか否かを判定する判定手段と、前記判定手段により前記認証トークンが有効であると判定された場合、前記実行要求に対応する機能を実行する実行手段と、を有する。
本発明の実施の形態によれば、トークンの不正利用を防止することができる。
本実施形態に係る情報処理システムの一例のシステム構成を示す図である。 本実施形態に係る端末装置及びサーバ装置の一例のハードウェア構成を示す図である。 本実施形態に係る画像形成装置の一例のハードウェア構成を示す図である。 本実施形態に係る情報処理システムの一例の機能構成を示す図である。 トークンの一例を示す図である。 機器情報の一例を示す図である。 開発アプリケーションの実行処理の一例を示すシーケンス図である。 トークンの有効性判定処理の一例を示すフローチャートである。 判定テーブルの一例を示す図である。
以下、本発明の実施形態について、図面を参照しながら詳細に説明する。
<システム構成>
まず、本実施形態に係る情報処理システム1のシステム構成について、図1を参照しながら説明する。図1は、本実施形態に係る情報処理システムの一例のシステム構成を示す図である。
図1に示す情報処理システム1は、後述する画像形成装置30の各種機能を利用するアプリケーションの開発を行うサードベンダー等におけるシステム環境E1と、画像形成装置30の製造元ベンダー等におけるシステム環境E2とが含まれる。また、システム環境E1及びシステム環境E2は、インターネット等の広域的なネットワークN1を介して通信可能に接続されている。
システム環境E1は、1台以上の端末装置10と、1台以上のサーバ装置20とが、例えばLAN(Local Area Network)等のネットワークN2に接続されている。
端末装置10は、サードベンダー等におけるアプリケーションの開発者(ユーザ)等が利用するPC(パーソナルコンピュータ)、スマートフォン、タブレット端末等の情報処理装置ある。開発者等は、端末装置10を用いて、画像形成装置30の各種機能を利用するアプリケーションの開発作業や開発中のアプリケーションの動作確認作業等を行うことができる。
サーバ装置20は、サードベンダー等が開発中のアプリケーションを管理するPC等の情報処理装置である。サーバ装置20は、端末装置10からの要求に応じて、開発中のアプリケーションを実行することで、画像形成装置30の各種機能を利用したサービスを提供する。これにより、開発者等は、端末装置10を用いて、開発中のアプリケーションの動作確認等を行うことができる。
システム環境E2は、1台以上の画像形成装置30が、LAN等のネットワークN3に接続されている。
画像形成装置30は、プリント機能やスキャン機能、コピー機能、FAX通信機能等の各種機能を有するMFP(Multifunction Peripheral)等の機器である。画像形成装置30は、WebAPIを介して、アプリケーションから要求を受け付けることで、これらの各種機能を当該アプリケーションに提供することができる。
なお、システム環境E2には、例えば、プロジェクタ、電子黒板、デジタルカメラ、ゲーム機器、カーナビゲーション装置等の各種機器が含まれていても良い。すなわち、本実施形態では、これらの各種機器が、WebAPIを介して、アプリケーションから要求を受け付ける場合にも同様に適用することができる。
また、本実施形態では、システム環境E1に含まれるサーバ装置20がアプリケーションを実行するものとして説明するが、これに限られない。すなわち、本実施形態は、例えば、端末装置10にアプリケーションをインストールすること等により、当該端末装置10上でアプリケーションが実行される場合にも同様に適用することができる。また、本実施形態は、例えば、クラウドサービスやASP(Application Service Provider)等の外部サービス上でアプリケーションが実行される場合にも同様に適用することができる。
<ハードウェア構成>
次に、本実施形態に係る端末装置10及びサーバ装置20のハードウェア構成について、図2を参照しながら説明する。図2は、本実施形態に係る端末装置及びサーバ装置の一例のハードウェア構成を示す図である。なお、端末装置10及びサーバ装置20は、同様のハードウェア構成を有しているため、以降では、主に、端末装置10のハードウェア構成について説明する。
図2に示す端末装置10は、入力装置101と、表示装置102と、外部I/F103と、RAM(Random Access Memory)104とを有する。また、端末装置10は、ROM(Read Only Memory)105と、CPU(Central Processing Unit)106と、通信I/F107と、HDD(Hard Disk Drive)108とを有する。これらの各ハードウェアは、それぞれがバスBで接続されている。
入力装置101は、キーボードやマウス、タッチパネル等を含み、ユーザが各種の操作信号を入力するのに用いられる。表示装置102は、ディスプレイ等を含み、端末装置10による処理結果を表示する。なお、サーバ装置20は、入力装置101及び表示装置102の少なくとも一方を、必要なときにバスBに接続して利用する形態であっても良い。
通信I/F107は、端末装置10をネットワークN2に接続するためのインタフェースである。これにより、端末装置10は、通信I/F107を介して、通信を行うことができる。
HDD108は、プログラムやデータを格納している不揮発性の記憶装置である。HDD108に格納されるプログラムやデータには、端末装置10全体を制御する基本ソフトウェアであるOS(Operating System)、OS上において各種機能を提供するプログラム等がある。
なお、端末装置10は、HDD108に代え、記憶媒体としてフラッシュメモリを用いるドライブ装置(例えばソリッドステートドライブ:SSD)を利用するものであっても良い。また、HDD108は、格納しているプログラムやデータを所定のファイルシステム及び/又はDBにより管理している。
外部I/F103は、外部装置とのインタフェースである。外部装置には、記録媒体103a等がある。これにより、端末装置10は、外部I/F103を介して、記録媒体103aの読み取りや書き込みを行うことができる。記録媒体103aには、例えば、フレキシブルディスク、CD、DVD、SDメモリカード、USBメモリ等がある。
ROM105は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリ(記憶装置)である。ROM105には、端末装置10の起動時に実行されるBIOS(Basic Input/Output System)、OS設定、及びネットワーク設定等のプログラムやデータが格納されている。RAM104は、プログラムやデータを一時保持する揮発性の半導体メモリ(記憶装置)である。
CPU106は、ROM105やHDD108等の記憶装置からプログラムやデータをRAM104上に読み出し、処理を実行することで、端末装置10全体の制御や機能を実現する演算装置である。
本実施形態に係る端末装置10及びサーバ装置20は、図2に示すハードウェア構成を有することにより、後述する各種処理を実現することができる。
次に、本実施形態に係る画像形成装置30のハードウェア構成について、図3を参照しながら説明する。図3は、本実施形態に係る画像形成装置の一例のハードウェア構成を示す図である。
図3に示す画像形成装置30は、コントローラ201と、操作パネル202と、外部I/F203と、通信I/F204と、画像処理エンジン205とを有する。また、コントローラ201は、CPU211と、RAM212と、ROM213と、NVRAM214と、HDD215とを有する。
ROM213は、各種プログラムやデータを格納している不揮発性の半導体メモリ(記憶装置)である。RAM212は、プログラムやデータを一時保持する揮発性の半導体メモリ(記憶装置)である。NVRAM214は、例えば設定情報等を格納している半導体メモリ(記憶装置)である。また、HDD215は、各種プログラムやデータを格納している不揮発性の記憶装置である。
CPU211は、ROM213やNVRAM214、HDD215等からプログラムやデータ、設定情報等をRAM212上に読み出し、処理を実行することで、画像形成装置30全体の制御や機能を実現する演算装置である。
操作パネル202は、画像形成装置30の利用者からの入力を受け付ける入力部と、表示を行う表示部とを備えている。外部I/F203は、外部装置とのインタフェースである。外部装置には、記録媒体203a等がある。これにより、画像形成装置30は、外部I/F203を介して、記録媒体203aの読み取りや書き込みを行うことができる。記録媒体203aには、例えば、ICカード、フレキシブルディスク、CD、DVD、SDメモリカード、USBメモリ等がある。
通信I/F204は、画像形成装置30をネットワークN3に接続するためのインタフェースである。これにより、画像形成装置30は、通信I/F204を介して、通信を行うことができる。
画像処理エンジン205は、プリント機能やスキャン機能、コピー機能、FAX通信機能等の各種機能を実現するための画像処理を行うハードウェアである。
画像処理エンジン205には、例えば、原稿を光学的に読み取って画像データを生成するスキャナ、用紙等のシート材への印刷を行うプロッタ、及びFAX通信を行うFAX通信装置等が含まれる。また、画像処理エンジン205には、例えば、印刷済みのシート材を仕分けるフィニッシャや原稿を自動給送するADF(自動原稿給送装置)等が含まれていても良い。
本実施形態に係る画像形成装置30は、図3に示すハードウェア構成を有することにより、後述する各種処理を実現することができる。
<機能構成>
次に、本実施形態に係る情報処理システム1の機能構成について、図4を参照しながら説明する。図4は、本実施形態に係る情報処理システムの一例の機能構成を示す図である。
図4に示す端末装置10は、例えばCPU106等により実行されるブラウザ11を有する。端末装置10のユーザは、ブラウザ11を用いて、後述する開発アプリケーション21の実行(すなわち、例えば、開発アプリケーション21の動作確認等)を行うことができる。
また、端末装置10は、トークン記憶部12を有する。トークン記憶部12は、例えばHDD108を用いて実現可能である。トークン記憶部12には、画像形成装置30の製造元ベンダー等により発行された開発用又は製品用のトークン12Dが記憶されている。端末装置10のユーザは、ブラウザ11を介して、トークン12Dを含む要求をアプリケーションに送信することで、当該アプリケーションが画像形成装置30の各種機能を利用したサービスの提供を受けることができる。
ここで、トークン記憶部12に記憶されているトークン12Dについて、図5を参照しながら説明する。図5は、トークンの一例を示す図である。
図5に示すように、トークン12Dは、トークン値、有効期限、及び種別フラグ等を有する。トークン値には、認証に用いられる文字列等を示す値が設定される。有効期限には、トークン値を認証に用いることが可能な期限を示す値が設定される。種別フラグには、トークン12Dの種別が開発用又は製品用のいずれであるかを示す値が設定される。
ここで、開発用のトークンとは、開発中のアプリケーション(すなわち、開発アプリケーション21)が画像形成装置30の各種機能を利用するための認証用のトークンである。一方、製品用のトークンとは、開発が完了したアプリケーション(すなわち、例えば、製品としてリリースされた製品アプリケーション)が画像形成装置30の各種機能を利用するための認証用のトークンである。
図4に示すサーバ装置20は、例えばCPU106等により実行される開発アプリケーション21を有する。開発アプリケーション21は、画像形成装置30の各種機能を利用したサービスを提供するアプリケーションプログラムであり、サードベンダー等により開発中のものである。
図4に示す画像形成装置30は、当該画像形成装置30の各種機能を利用したサービスを提供するアプリケーション群31を有する。開発アプリケーション21の開発が完了した場合、例えば、サーバ装置20から画像形成装置30にダウンロードされて、製品アプリケーション41がインストールされる。なお、アプリケーション群31には、例えば、画像形成装置30のコピー機能を利用したコピーサービスを提供するコピーアプリケーション、プリント機能を利用したプリントサービスを提供するプリントアプリケーション等、各種のアプリケーションが含まれる。ただし、アプリケーション群31は、複数のアプリケーションが含まれている場合に限られず、1以上のアプリケーションが含まれていれば良い。
また、画像形成装置30は、WebAPI32と、判定処理部33と、機能実行部34とを有する。これら各部は、画像形成装置30にインストールされた1以上のプログラムが、CPU211により実行させる処理により実現される。
さらに、画像形成装置30は、判定テーブル記憶部35と、機器情報記憶部36とを有する。これら各記憶部は、例えばHDD215を用いて実現可能である。なお、判定テーブル記憶部35及び機器情報記憶部36の少なくとも一方が、画像形成装置30とネットワークを介して接続される記憶装置等により実現されていても良い。
WebAPI32は、開発アプリケーション21やアプリケーション群31に含まれる各アプリケーションが画像形成装置30の各種機能を利用するためのAPIである。開発アプリケーション21等は、HTTP(Hypertext Transfer Protocol)リクエストの形式でWebAPI32に各種の要求を行うことにより、画像形成装置30の各種機能(例えば、スキャン機能やFAX通信機能等)を利用することができる。
すなわち、例えば、開発アプリケーション21は、ブラウザ11から受信したHTTPリクエストに含まれるトークン12Dを用いて、WebAPI32にHTTPリクエストを送信する。これにより、後述する判定処理部33により当該トークン12Dが有効であると判定された場合、開発アプリケーション21は、画像形成装置30の各種機能を利用することができる。
判定処理部33は、開発アプリケーション21等からWebAPI32を介して受信した要求に含まれるトークン12Dの有効性を判定する。ここで、判定処理部33は、機器特定部51と、トークン特定部52と、有効性判定部53とを有する。
機器特定部51は、機器情報記憶部36から機器情報36Dを取得して、当該機器情報36Dから画像形成装置30の種別を特定する。画像形成装置30の種別には、開発アプリケーション21の動作確認等に用いられる機器(すなわち、例えば、テスト用の機器)であることを示す「開発版」と、製品として販売やリース等される機器であることを示す「製品版」とがある。
トークン特定部52は、トークン12Dの種別を特定する。トークン12Dの種別には、上述したように、開発アプリケーション21が用いるトークンであることを示す「開発用」と、製品アプリケーション41が用いるトークンであることを示す「製品用」とがある。
有効性判定部53は、判定テーブル記憶部35から判定テーブル35Dの情報を取得する。そして、有効性判定部53は、取得した判定テーブル35Dの情報と、機器特定部51により特定された画像形成装置30の種別と、トークン特定部52により特定されたトークン12Dの種別とに基づいて、当該トークン12Dの有効性を判定する。
例えば、有効性判定部53は、開発アプリケーション21が製品用のトークン12Dを用いて、開発版の画像形成装置30の各種機能の利用を要求した場合、当該トークン12Dを無効であると判定する。また、例えば、有効性判定部53は、開発アプリケーション21が開発用のトークン12Dを用いて、製品版の画像形成装置30の各種機能の利用を要求した場合、当該トークン12Dを無効であると判定する。
このように、有効性判定部53によりトークン12Dの有効性が判定されることで、例えば、製品用のトークン12Dを用いて、開発版の画像形成装置30の各種機能が利用されてしまう事態を防止することができる。同様に、例えば、開発用のトークン12Dを用いて、製品版の画像形成装置30の各種機能が利用されてしまう事態を防止することができる。
機能実行部34は、有効性判定部53の判定結果に応じて、画像形成装置30の各種機能を実行する。
判定テーブル記憶部35は、判定テーブル35Dを記憶する。判定テーブル35Dは、画像形成装置30の種別と、トークン12Dの種別とに基づいて、当該トークン12Dが有効であるか中を判定するためのテーブルである。なお、判定テーブル35Dの詳細については後述する。
機器情報記憶部36は、画像形成装置30に関する各種の情報が含まれる機器情報36Dを記憶する。
ここで、機器情報記憶部36に記憶されている機器情報36Dについて、図6を参照しながら説明する。図6は、機器情報の一例を示す図である。
図6に示すように、機器情報36Dは、シリアル番号、及びバージョン等を有する。シリアル番号には、画像形成装置30を一意に識別する識別情報(例えば、製造固有番号等)を示す値が設定される。バージョンには、画像形成装置30のバージョン番号を示す値が設定される。なお、機器情報36Dには、これら以外にも、例えば、画像形成装置30の性能情報等の各種の情報が含まれていても良い。
<処理の詳細>
次に、本実施形態に係る情報処理システム1の処理の詳細について説明する。以降では、端末装置10のユーザが開発アプリケーション21を実行させることで、画像形成装置30の各種機能を利用したサービスを提供する開発アプリケーション21の動作確認をする場合について、図7を参照しながら説明する。図7は、開発アプリケーションの実行処理の一例を示すシーケンス図である。
まず、ユーザは、端末装置10のブラウザ11を操作して、開発アプリケーション21を実行させるための操作を行う。すると、端末装置10のブラウザ11は、サーバ装置20の開発アプリケーション21にアプリの実行要求を送信する(ステップS701)。ここで、当該実行要求には、トークン12Dが含まれる。なお、ブラウザ11は、HTTPリクエストの形式でアプリの実行要求を送信する。
サーバ装置20の開発アプリケーション21は、アプリの実行要求を受信すると、画像形成装置30のWebAPI32にリクエストAPIを送信する(ステップS702)。ここで、リクエストAPIは、画像形成装置30の所定の機能を利用するための要求であり、トークン12Dが含まれる。なお、開発アプリケーション21は、HTTPリクエストの形式でリクエストAPIを送信する。
画像形成装置30のWebAPI32は、リクエストAPIを受信すると、当該リクエストAPIに含まれるトークン12Dの有効性の判定要求を判定処理部33に送信する(ステップS703)。
画像形成装置30の判定処理部33は、判定要求を受信すると、トークンの有効性判定処理を実行する(ステップS704)。すなわち、判定処理部33は、リクエストAPIに含まれるトークン12Dが有効であるか否かを判定する。なお、トークンの有効性判定処理の詳細については後述する。
ここで、上記のステップS704において、トークン12Dが無効であると判定された場合、ステップS705〜ステップS707の処理が実行される。すなわち、まず、画像形成装置30の判定処理部33は、リクエストAPIに含まれるトークン12Dが無効であることを示す判定結果をWebAPI32に送信する(ステップS705)。
次に、画像形成装置30のWebAPI32は、トークン12Dが無効であることを示す判定結果を受信すると、トークン12Dが無効であることを示すレスポンスAPIを開発アプリケーション21に送信する(ステップS706)。
最後に、サーバ装置20の開発アプリケーション21は、トークン12Dが無効であることを示すレスポンスAPIを受信すると、トークン12Dが無効であることを示すアプリの実行応答をブラウザ11に送信する(ステップS707)。これにより、端末装置10の表示装置102には、ブラウザ11により、例えば、画像形成装置30にアクセスできないことを示す通知等が表示される。
一方で、上記のステップS704において、トークン12Dが有効であると判定された場合、ステップS708〜ステップS712の処理が実行される。すなわち、まず、画像形成装置30の判定処理部33は、リクエストAPIに対応する機能の実行要求を機能実行部34に送信する(ステップS708)。
次に、画像形成装置30の機能実行部34は、機能の実行要求を受信すると、当該実行要求に応じた機能を実行する(ステップS709)。すなわち、機能実行部34は、機能の実行要求に応じて、例えば、スキャン機能やコピー機能、FAX通信機能等の画像形成装置30の各種機能を実行する。
次に、画像形成装置30の機能実行部34は、上記のステップS709で実行された機能の実行結果をWebAPI32に送信する(ステップS710)。なお、機能の実行結果とは、例えば、上記のステップS709でスキャン機能が実行された場合、当該スキャン機能により原稿を読み取ることで生成された画像データである。
次に、画像形成装置30のWebAPI32は、機能の実行結果を含むレスポンスAPIを開発アプリケーション21に送信する(ステップS711)。
最後に、サーバ装置20の開発アプリケーション21は、機能の実行結果を含むレスポンスAPIを受信すると、例えば、当該実行結果に基づく処理を実行した上で、当該処理の処理結果を含むアプリの実行応答をブラウザ11に送信する(ステップS712)。なお、ここで実行される処理は、開発アプリケーション21の固有の処理であり、例えば、スキャン機能により生成された画像データの加工処理等である。
これにより、端末装置10の表示装置102には、ブラウザ11により、例えば、開発アプリケーション21による処理結果等が表示される。すなわち、端末装置10のユーザには、開発アプリケーション21により、画像形成装置30の各種機能を利用したサービスが提供される。
なお、図7では、開発アプリケーション21が画像形成装置30の各種機能を利用する場合について説明したが、これに限られず、例えば、製品アプリケーション41が画像形成装置30の各種機能を利用する場合についても同様に適用することができる。すなわち、例えば、画像形成装置30又は端末装置10にインストールされた製品アプリケーション41がリクエストAPIを送信する場合についても同様に適用することができる。
ここで、以降では、上記のステップS704におけるトークンの有効性判定処理の詳細について、図6を参照しながら説明する。図6は、トークンの有効性判定処理の一例を示すフローチャートである。以降では、トークン12Dに含まれるトークン値及び有効期限の値は、それぞれ有効(正当)であるものとして説明する。なお、トークン12Dに含まれるトークン値及び有効期限の少なくとも一方の値が無効(不正)である場合には、判定処理部33は、当該トークン12Dを無効であると判定すれば良い。
まず、判定処理部33の機器特定部51は、機器情報記憶部36から機器情報36Dを取得する(ステップS801)。
次に、判定処理部33の機器特定部51は、ステップS801で取得した機器情報36Dから画像形成装置30の種別を特定する(ステップS802)。
ここで、機器特定部51は、機器情報36Dに含まれるシリアル番号やバージョンに基づいて、画像形成装置30の種別を特定(すなわち、当該画像形成装置30が「開発版」又は「製品版」のいずれであるかを特定)する。
すなわち、機器特定部51は、例えば、機器情報36Dのシリアル番号に値が設定されていない場合や空値(NULL値)が設定されている場合、画像形成装置30を「開発版」と特定する。一方で、機器特定部51は、例えば、機器情報36Dのシリアル番号に、空値以外の値が設定されている場合、画像形成装置30を「製品版」と特定する。
また、機器特定部51は、例えば、機器情報36Dのシリアル番号に設定されている値に応じて、画像形成装置30が「開発版」又は「製品版」のいずれであるかを特定しても良い。具体的には、機器情報36Dのシリアル番号に設定されている値の最上位桁に所定の文字(例えば、「Z」)が指定されている場合には、画像形成装置30を「開発版」と特定する。一方で、機器情報36Dのシリアル番号に設定されている値の最上位桁に当該所定の文字以外の文字が指定されている場合には、画像形成装置30を「製品版」と特定する。
また、機器特定部51は、例えば、機器情報36Dのバージョンに設定されている値に応じて、画像形成装置30が「開発版」又は「製品版」のいずれであるかを特定しても良い。具体的には、機器情報36Dのバージョンに設定されている値が1未満(すなわち、例えば、「0.12」等)である場合には、画像形成装置30を「開発版」と特定する。一方で、機器情報36Dのバージョンに設定されている値が1以上(すなわち、例えば、「1.00」等)である場合には、画像形成装置30を「製品版」と特定する。
このように、機器特定部51は、機器情報36Dに含まれるシリアル番号やバージョン等の種々の情報に基づいて、画像形成装置30の種別を特定する。
次に、判定処理部33のトークン特定部52は、WebAPI32が受信したリクエストAPIに含まれるトークン12Dの種別を特定する(ステップS803)。すなわち、トークン特定部52は、例えば、トークン12Dの種別フラグに設定されている値が「1」の場合、トークン12Dを「製品用」と特定する。一方で、トークン特定部52は、例えば、トークン12Dの種別フラグに設定されている値が「0」の場合、トークン12Dを「開発用」と特定する。
また、トークン特定部52は、例えば、製品用のトークン12Dにのみ含まれる所定の情報が、該当のトークン12Dに含まれるか否かにより、トークン12Dの種別を特定しても良い。
このように、トークン特定部52は、トークン12Dに含まれる種別フラグ等の種々の情報に基づいて、トークン12Dの種別を特定する。
次に、判定処理部33の有効性判定部53は、判定テーブル記憶部35から判定テーブル35Dの情報を取得する(ステップS804)。
ここで、判定テーブル記憶部35に記憶されている判定テーブル35Dの詳細について、図9を参照しながら説明する。図9は、判定テーブルの一例を示す図である。
図9に示すように、判定テーブル35Dは、画像形成装置30の種別と、トークン12Dの種別との組み合わせに応じて、トークン12Dの有効又は無効を示す情報(値)が関連付けられている。
例えば、図9に示す判定テーブル35Dでは、画像形成装置30の種別が「開発版」、トークン12Dの種別が「開発用」である場合には、トークン12Dが有効と判定されることを示す「有効」が関連付けられている。同様に、例えば、図9に示す判定テーブル35Dでは、画像形成装置30の種別が「製品版」、トークン12Dの種別が「開発用」である場合には、トークン12Dが無効と判定されることを示す「無効」が関連付けられている。
続いて、判定処理部33の有効性判定部53は、ステップS804で取得した判定テーブル35Dの情報を参照して、画像形成装置30の種別及びトークン12Dの種別の組み合わせに応じて、当該トークン12Dの有効性を判定する(ステップS805)。
すなわち、有効性判定部53は、判定テーブル35Dの情報(値)のうち、ステップS802で特定した画像形成装置30の種別と、ステップS803で特定したトークン12Dの種別との組み合わせに対応する値(「有効」又は「無効」)を参照する。そして、有効性判定部53は、当該値(「有効」又は「無効」)を判定結果とする。これにより、リクエストAPIに含まれるトークン12Dの有効性(「有効」又は「無効」のいずれであるか)が判定される。
以上のように、本実施形態に係る情報処理システム1では、画像形成装置30の種別と、トークン12Dの種別との組み合わせに応じて、当該トークン12Dが有効性を判定する。
このため、本実施形態に係る情報処理システム1では、例えば、開発アプリケーション21が製品用のトークン12Dを用いて、開発版の画像形成装置30の各種機能を利用するような事態を防止できる。同様に、本実施形態に係る情報処理システム1では、例えば、開発アプリケーション21が開発用のトークン12Dを用いて、製品版の画像形成装置30の各種機能を利用するような事態を防止できる。
また、本実施形態に係る情報処理システム1では、例えば、製品アプリケーション41が開発用のトークン12Dを用いて、製品版の画像形成装置30の各種機能を利用するような事態を防止できる。同様に、本実施形態に係る情報処理システム1では、例えば、製品アプリケーション41が製品用のトークン12Dを用いて、開発版の画像形成装置30の各種機能を利用するような事態を防止できる。
このように、本実施形態に係る情報処理システム1によれば、製品用又は開発用のトークン12Dが不正に利用されるような事態を防止できる。
以上、本発明の実施形態について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
1 情報処理システム
10 端末装置
11 ブラウザ
12 トークン記憶部
12D トークン
20 サーバ装置
21 開発アプリケーション
30 画像形成装置
31 アプリケーション群
32 WebAPI
33 判定処理部
34 機能実行部
35 判定テーブル記憶部
35D 判定テーブル
36 機器情報記憶部
36D 機器情報
41 製品アプリケーション
51 機器特定部
52 トークン特定部
53 有効性判定部
特開2013−134655号公報

Claims (7)

  1. 所定の機能を実行する機器と、該機能を利用した所定のサービスを提供するアプリケーションとを有する情報処理システムであって、
    前記アプリケーションから送信される前記機能の実行要求を受信する受信手段と、
    前記受信手段により前記実行要求を受信すると、該実行要求に含まれる認証トークンの種別が、開発中の前記アプリケーションが前記機能を利用するために用いられる認証トークンであることを示す開発用、又は、製品となった前記アプリケーションが前記機能を利用するために用いられる認証トークンであることを示す製品用のいずれであるかを特定する第1の特定手段と、
    前記機能を実行する機器の種別が、開発中の前記アプリケーションに前記機能の実行を提供するための機器を示す開発版、又は、製品となった前記アプリケーションに前記機能の実行を提供するための機器を示す製品版のいずれであるかを特定する第2の特定手段と、
    前記第1の特定手段により特定された前記認証トークンの種別と、前記第2の特定手段により特定された前記機器の種別とに基づいて、前記認証トークンが有効であるか否かを判定する判定手段と、
    前記判定手段により前記認証トークンが有効であると判定された場合、前記実行要求に対応する機能を実行する実行手段と、
    を有する情報処理システム。
  2. 前記第1の特定手段は、
    前記認証トークンに含まれる所定の情報に基づいて、該認証トークンの種別が前記開発用又は前記製品用のいずれであるかを特定する、請求項に記載の情報処理システム。
  3. 前記第2の特定手段は、
    前記機器に関する情報に基づいて、前記機器の種別が前記開発版又は前記製品版のいずれであるかを特定する、請求項1又は2に記載の情報処理システム。
  4. 前記判定手段は、
    前記認証トークンの種別及び前記機器の種別の組み合わせと、前記認証トークンの有効又は無効を示す情報とが関連付けられた判定情報に基づいて、前記認証トークンが有効であるか否かを判定する、請求項1乃至の何れか一項に記載の情報処理システム。
  5. アプリケーションからの要求に応じて所定の機能を実行する情報処理装置であって、
    前記アプリケーションから送信される前記機能の実行要求を受信する受信手段と、
    前記受信手段により前記実行要求を受信すると、該実行要求に含まれる認証トークンの種別が、開発中の前記アプリケーションが前記機能を利用するために用いられる認証トークンであることを示す開発用、又は、製品となった前記アプリケーションが前記機能を利用するために用いられる認証トークンであることを示す製品用のいずれであるかを特定する第1の特定手段と、
    前記機能を実行する機器の種別が、開発中の前記アプリケーションに前記機能の実行を提供するための機器を示す開発版、又は、製品となった前記アプリケーションに前記機能の実行を提供するための機器を示す製品版のいずれであるかを特定する第2の特定手段と、
    前記第1の特定手段により特定された前記認証トークンの種別と、前記第2の特定手段により特定された前記機器の種別とに基づいて、前記認証トークンが有効であるか否かを判定する判定手段と、
    前記判定手段により前記認証トークンが有効であると判定された場合、前記実行要求に対応する機能を実行する実行手段と、
    を有する情報処理装置。
  6. 所定の機能を実行する機器と、該機能を利用した所定のサービスを提供するアプリケーションとを有する情報処理システムに用いられる情報処理方法であって、
    前記アプリケーションから送信される前記機能の実行要求を受信する受信手順と、
    前記受信手順により前記実行要求を受信すると、該実行要求に含まれる認証トークンの種別が、開発中の前記アプリケーションが前記機能を利用するために用いられる認証トークンであることを示す開発用、又は、製品となった前記アプリケーションが前記機能を利用するために用いられる認証トークンであることを示す製品用のいずれであるかを特定する第1の特定手順と、
    前記機能を実行する機器の種別が、開発中の前記アプリケーションに前記機能の実行を提供するための機器を示す開発版、又は、製品となった前記アプリケーションに前記機能の実行を提供するための機器を示す製品版のいずれであるかを特定する第2の特定手順と、
    前記第1の特定手順により特定された前記認証トークンの種別と、前記第2の特定手順により特定された前記機器の種別とに基づいて、前記認証トークンが有効であるか否かを判定する判定手順と、
    前記判定手順により前記認証トークンが有効であると判定された場合、前記実行要求に対応する機能を実行する実行手順と、
    を有する情報処理方法。
  7. アプリケーションからの要求に応じて所定の機能を実行する情報処理装置を、
    前記アプリケーションから送信される前記機能の実行要求を受信する受信手段、
    前記受信手段により前記実行要求を受信すると、該実行要求に含まれる認証トークンの種別が、開発中の前記アプリケーションが前記機能を利用するために用いられる認証トークンであることを示す開発用、又は、製品となった前記アプリケーションが前記機能を利用するために用いられる認証トークンであることを示す製品用のいずれであるかを特定する第1の特定手段、
    前記機能を実行する機器の種別が、開発中の前記アプリケーションに前記機能の実行を提供するための機器を示す開発版、又は、製品となった前記アプリケーションに前記機能の実行を提供するための機器を示す製品版のいずれであるかを特定する第2の特定手段、
    前記第1の特定手段により特定された前記認証トークンの種別と、前記第2の特定手段により特定された前記機器の種別とに基づいて、前記認証トークンが有効であるか否かを判定する判定手段、
    前記判定手段により前記認証トークンが有効であると判定された場合、前記実行要求に対応する機能を実行する実行手段、
    として機能させるためのプログラム。
JP2016051514A 2016-03-15 2016-03-15 情報処理システム、情報処理装置、情報処理方法、及びプログラム Expired - Fee Related JP6707924B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2016051514A JP6707924B2 (ja) 2016-03-15 2016-03-15 情報処理システム、情報処理装置、情報処理方法、及びプログラム
US15/447,352 US10162958B2 (en) 2016-03-15 2017-03-02 Information processing system, information processing method, and non-transitory computer program product

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016051514A JP6707924B2 (ja) 2016-03-15 2016-03-15 情報処理システム、情報処理装置、情報処理方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2017167755A JP2017167755A (ja) 2017-09-21
JP6707924B2 true JP6707924B2 (ja) 2020-06-10

Family

ID=59909066

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016051514A Expired - Fee Related JP6707924B2 (ja) 2016-03-15 2016-03-15 情報処理システム、情報処理装置、情報処理方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP6707924B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10365868B2 (en) 2017-09-28 2019-07-30 Ricoh Company, Ltd. Image processing apparatus, image processing system, image processing method, and non-transitory recording medium that verifies validity of an access token of a web application
JP7234849B2 (ja) * 2019-08-05 2023-03-08 富士通株式会社 情報処理装置、アクセス制御システム及びアクセス制御プログラム

Also Published As

Publication number Publication date
JP2017167755A (ja) 2017-09-21

Similar Documents

Publication Publication Date Title
US10545708B2 (en) Information processing system and method of processing information
US10122870B2 (en) Information processing system, information processing apparatus, and information processing method
JP6507486B2 (ja) 情報処理装置、プログラム、情報管理方法及び情報処理システム
US9794447B2 (en) Service providing system, cooperation processing method, and information processing system
US10162958B2 (en) Information processing system, information processing method, and non-transitory computer program product
JP5268694B2 (ja) ライセンス管理システム、画像形成装置およびライセンス管理方法
US20190188362A1 (en) Information processing apparatus, information processing system, and method of processing information
JP6064592B2 (ja) 印刷システム、印刷方法、画像形成装置及び制御デバイス
JP2017107307A (ja) 機器、情報処理システム、情報処理方法、及びプログラム
US20170255763A1 (en) Information processing system, information processing apparatus, and information processing method
JP5819203B2 (ja) 多機能装置に接続する大容量記憶装置にネットワークアクセスを可能にするシステム及び方法
US20170111531A1 (en) Scan processing system, information processing system, and cooperative processing method
JP6707924B2 (ja) 情報処理システム、情報処理装置、情報処理方法、及びプログラム
JP6176020B2 (ja) 機器、情報処理システム、情報処理方法、情報処理プログラム、および情報処理プログラムが記憶された記憶媒体
JP6716899B2 (ja) 情報処理システム、情報処理装置及びプログラム
JP2014059697A (ja) 出力制御装置、プログラム及び出力システム
JP6428169B2 (ja) 情報処理システムおよび情報処理方法
JP6303667B2 (ja) プログラム、情報処理装置および情報処理システム
JP2015056167A (ja) 処理管理システム、処理管理装置、プログラム、情報処理システム及び処理管理方法
JP6743536B2 (ja) 情報処理システム、情報処理装置、情報処理方法、及びプログラム
JP6651895B2 (ja) 機器、制御方法及びプログラム
US20170039077A1 (en) Information processing system and information processing method
JP6999534B2 (ja) 情報処理装置、プログラム及び情報管理方法
JP2017047567A (ja) 画像形成装置及びその運用方法
JP6024314B2 (ja) 情報処理装置、プログラム及びシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190122

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191029

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191105

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191218

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200421

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200504

R151 Written notification of patent or utility model registration

Ref document number: 6707924

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees