JP2016143164A - システム - Google Patents

システム Download PDF

Info

Publication number
JP2016143164A
JP2016143164A JP2015017382A JP2015017382A JP2016143164A JP 2016143164 A JP2016143164 A JP 2016143164A JP 2015017382 A JP2015017382 A JP 2015017382A JP 2015017382 A JP2015017382 A JP 2015017382A JP 2016143164 A JP2016143164 A JP 2016143164A
Authority
JP
Japan
Prior art keywords
access token
token
user
user device
image data
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.)
Granted
Application number
JP2015017382A
Other languages
English (en)
Other versions
JP5956623B1 (ja
Inventor
修 宮川
Osamu Miyagawa
修 宮川
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.)
PFU Ltd
Original Assignee
PFU 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 PFU Ltd filed Critical PFU Ltd
Priority to JP2015017382A priority Critical patent/JP5956623B1/ja
Priority to US14/713,786 priority patent/US9646151B2/en
Priority to CN201510552677.0A priority patent/CN105847226B/zh
Application granted granted Critical
Publication of JP5956623B1 publication Critical patent/JP5956623B1/ja
Publication of JP2016143164A publication Critical patent/JP2016143164A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/45Structures or tools for the administration of authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • H04L63/0838Network architectures or network communication protocols for network security for authentication of entities using passwords using one-time-passwords
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/33User authentication using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • H04L63/0846Network architectures or network communication protocols for network security for authentication of entities using passwords using time-dependent-passwords, e.g. periodically changing passwords

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Facsimiles In General (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】処理の途中にアクセストークンが有効期限切れとなってしまうことを防止する。
【解決手段】画像データ処理サーバー1に、アクセストークンを用いてユーザー装置(スキャナー)3又はユーザー端末9のユーザーを認証するユーザー認証部21と、ユーザー装置3又はユーザー端末9からアクセストークンを受信するトークン受信部212と、アクセストークンが受信された場合に、アクセストークンの有効期限までの残時間が所定の閾値未満であるか否かを判定可能な判定用情報を、ユーザー装置3又はユーザー端末9に対して送信する判定用情報送信部213と、を備える。ユーザー認証部21は、判定用情報を受信したユーザー装置3又はユーザー端末9によって送信されたアクセストークンの発行要求が受信された場合に、有効期限が更新された新たなアクセストークンを発行する。
【選択図】図3

Description

本開示は、アクセストークンを管理する技術に関する。
従来、ネットワークを介して提供装置がユーザーに提供するサービスに関する中継処理を行う中継サービス装置と通信し、認証処理を行う認証サービス装置と通信する情報処理装置であって、前記中継サービス装置から認証要求を受け付けた時に、前記認証要求にアクセストークンが含まれていなかった場合は前記認証要求を前記認証サービス装置に送信し、認証に成功した前記認証サービス装置からアクセストークンを取得する取得手段と、前記認証要求を受け付けた時に前記認証要求に含まれるアクセストークンの有効時間が一定時間以上残っているか否かを判定する有効期限判定手段とを備え、前記有効期限判定手段が前記アクセストークンの有効時間が一定時間以上残っていると判定した場合、前記中継サービス装置が認証要求を行うときに用いるアクセストークンとして前記アクセストークンを再利用し、前記残有効時間が不十分であると判定した場合、前記取得手段により前記認証サービスからアクセストークンを取得することを特徴とする情報処理装置が提案されている(特許文献1を参照)。
また、センタサーバから認証を許可する認証OK信号を受信した際、認証トークンを生成するCPUと、CPUにより生成された認証トークンを記憶する不揮発性のEEPROMと、CPUにより生成された認証トークンを記憶する揮発性のRAMと、障害から復帰した際、RAMに認証トークンが記憶されている場合に、EEPROMにより記憶された認証トークンとRAMにより記憶された認証トークンとが一致するか否かを検証し、一致する場合に、センタサーバとの認証状態を継続させるCPUと、を備える電子機器が提案されている。(特許文献2を参照)。
特開2013−033437号公報 特開2009−059065号公報
従来、通信が認証されたユーザー装置によるものであることを確認するための手法として、サーバーが認証済みのユーザー装置に対してアクセストークンを発行し、ユーザー装置が、当該サーバーとの間での通信にアクセストークンを付して通信を行う手法が用いられている。しかし、アクセストークンには通常、有効期限が設定されているため、ユーザー装置とサーバーとが一連の処理のための通信を行っている途中でアクセストークンの有効期限が切れてしまうと、処理途中でエラーが発生してしまう可能性がある。
本開示は、上記した問題に鑑み、処理の途中にアクセストークンが有効期限切れとなってしまうことを防止することを課題とする。
本開示の一例は、アクセストークンを用いて、ネットワークを介して接続されたユーザー装置のユーザーを認証するユーザー認証手段と、前記ユーザー装置からアクセストークンを受信するトークン受信手段と、前記アクセストークンが受信された場合に、該アクセストークンの有効期限までの残時間が所定の閾値未満であるか否かを判定可能な判定用情
報を、前記ユーザー装置に対して送信する判定用情報送信手段と、を備え、前記ユーザー認証手段は、前記判定用情報を受信した前記ユーザー装置によって送信されたアクセストークンの発行要求が受信された場合に、有効期限が更新された新たなアクセストークンを発行する、サーバーである。
本開示は、情報処理装置、システム、コンピューターによって実行される方法またはコンピューターに実行させるプログラムとして把握することが可能である。また、本開示は、そのようなプログラムをコンピューターその他の装置、機械等が読み取り可能な記録媒体に記録したものとしても把握できる。ここで、コンピューター等が読み取り可能な記録媒体とは、データやプログラム等の情報を電気的、磁気的、光学的、機械的または化学的作用によって蓄積し、コンピューター等から読み取ることができる記録媒体をいう。
本開示によれば、処理の途中にアクセストークンが有効期限切れとなってしまうことを防止することが可能となる。
実施形態に係るシステムの構成を示す概略図である。 実施形態に係るスキャナーのハードウェア構成を示す図である。 実施形態に係るシステムの機能構成の概略を示す図である。 実施形態に係るアカウント作成/ユーザー認証処理の流れの概要を示すシーケンス図である。 実施形態に係る許可取得処理の流れの概要を示すシーケンス図である。 実施形態に係る画像データ処理の流れの概要を示すシーケンス図である。 実施形態に係るアクセストークン更新処理の流れの概要を示すシーケンス図である。 実施形態において用いられるトークン管理において、A面カウンターおよびB面カウンターの夫々が取りうる値の遷移と、各時点において有効化される面と、を時系列で示す図である。 実施形態に係るシステムの機能構成のバリエーションを示す図である。 実施形態に係るアクセストークン更新処理のバリエーションの概要を示すシーケンス図である。
以下、本開示に係るサーバー、システム、方法およびプログラムの実施の形態を、図面に基づいて説明する。但し、以下に説明する実施の形態は、実施形態を例示するものであって、本開示に係るサーバー、システム、方法およびプログラムを以下に説明する具体的構成に限定するものではない。実施にあたっては、実施の態様に応じた具体的構成が適宜採用され、また、種々の改良や変形が行われてよい。
本実施形態では、本開示に係るサーバー、システム、方法およびプログラムを、スキャナーと連動するシステムとして実施した場合の実施の形態について説明する。但し、本開示に係るサーバー、システム、方法およびプログラムは、アクセストークンの管理について広く用いることが可能であり、スキャナーではないユーザー装置によって用いられるアクセストークンを管理する目的で用いられてもよい。本開示の適用対象は、本実施形態において示した例に限定されない。
<システムの構成>
図1は、本実施形態に係るシステム1の構成を示す概略図である。本実施形態に係るシステム1は、インターネットや広域ネットワーク等のネットワークを介して接続されたス
キャナー3および画像データ処理サーバー1を備える。
画像データ処理サーバー1は、CPU(Central Processing Unit)11、ROM(Read Only Memory)12、RAM(Random
Access Memory)13、EEPROM(Electrically Erasable and Programmable Read Only Memory)やHDD(Hard Disk Drive)等の記憶装置14、および通信ユニット15、等を備えるコンピューターである。なお、説明の簡略化のため、図では画像データ処理サーバー1を単一筐体のコンピューターとして示しているが、本実施形態において、画像データ処理サーバー1は、その機能の一部または全部が、クラウド技術等を用いて、遠隔値に設置された装置や、分散設置された複数の装置によって実行されることで、ユーザーに対して画像データ処理サービスを提供する。但し、画像データ処理サーバー1の構成は、本実施形態における例示に限定されない。
図2は、本実施形態に係るスキャナー3のハードウェア構成を示す図である。スキャナー3は、ユーザーがセットした、文書、名刺、レシートまたは写真/イラスト等の原稿を撮像することで、画像データを取得する装置であり、原稿を撮像部37に送るシートフィーダー36、撮像部37、スキャンボタン38、CPU31、ROM32、RAM33、記憶装置34および通信ユニット35等を備える撮像装置である。なお、本実施形態では、スキャナー3の撮像方式として、シートフィーダー36にセットされた原稿を自動送りしながら撮像する撮像方式を採用したスキャナー3を例示したが、スキャナーの撮像方式は限定されない。例えば、スキャナーは、ユーザーによって読取位置にセットされた原稿を撮像するタイプのものであってもよい。また、本実施形態では、本システムにおいて用いる撮像装置として、スキャナー3を用いる例について説明したが、本システムにおいて用いられる撮像装置は、スキャナーに限定されない。例えば、撮像装置としてカメラが採用されてもよい。
本実施形態に係るスキャナー3は、無線通信機能を備えることで無線LANに接続する機能を有したスキャナーである。また、本実施形態に係るスキャナー3は、スキャナー3に撮像を指示するためにユーザーが押下またはタッチするスキャンボタン38を有しているが、タッチパネルディスプレイやキーボード等の、文字入出力や項目選択を可能とするためのユーザーインターフェースを有しておらず、Webブラウザ機能やサーバー機能を有していない。但し、本実施形態に係る方法を採用可能なスキャナーの通信手段およびハードウェア構成等は、本実施形態における例示に限定されない。
また、本実施形態に係るシステムには、所謂スマートフォンやタブレット、パーソナルコンピューター等の、ユーザー端末9が接続される。ユーザー端末9は、CPU91、ROM92、RAM93、記憶装置94、入出力装置95および通信ユニット96等を備えるコンピューターである。ユーザー端末9は、図1に示されているように、スキャナー3が接続されているローカルネットワークに接続されることで、スキャナー3や画像データ処理サーバー1と通信してもよいし、携帯電話網に接続されることで、スキャナー3や画像データ処理サーバー1と通信してもよい。
また、ユーザー端末9には、本実施形態に係るシステムを利用するためのアプリケーションが予めダウンロードされ、インストールされている。アプリケーションは、スキャナー3に対して、ネットワーク経由で設定等を行うことが出来る。このため、本実施形態に係るスキャナー3は、タッチパネルディスプレイやキーボード等の、文字入出力や項目選択を可能とするためのユーザーインターフェースを省略することが出来る。また、アプリケーションは、画像データ処理サーバー1に対して、ネットワーク経由でアカウント作成、ログイン、ログアウトおよび設定等を行うことが出来る。このため、本実施形態に係る
システムに依れば、ユーザーは、ユーザー端末9を操作することによってシステム全体に係る準備を完了させ、スキャナー3に原稿をセットしてスキャンボタン38を操作するのみで、原稿から得られたデータを適切なクラウドサービスに送信することが出来る。
また、画像データ処理サーバー1およびユーザー端末9は、ユーザーに対して様々なサービスを提供するインターネット上の複数のクラウドサービス(サードパーティーによって提供されるサービスを含む)と通信可能である。なお、図1においては、画像データ処理サーバー1以外のクラウドサービスのハードウェア構成については、図示を省略しているが、クラウドサービスは、夫々、画像データ処理サーバー1と同様のハードウェア構成を有するコンピューターがクラウド技術を用いて分散配置されたものである。これらのクラウドサービスとしては、例えば、文書管理サービス、名刺管理サービス、レシート管理サービスおよび写真/イラスト管理サービス等が挙げられるが、本実施形態に係るシステム1と連携可能なクラウドサービスは、本開示において例示されたクラウドサービスに限定されない。
図3は、本実施形態に係るシステムの機能構成の概略を示す図である。画像データ処理サーバー1は、記憶装置14に記録されているプログラムが、RAM13に読み出され、CPU11によって実行されて、画像データ処理サーバー1に備えられた各ハードウェアが制御されることで、ユーザー認証部21、サービス設定部22、許可取得部23、画像受信部24、種別判定部25、文字認識部26、名称生成部27、データ送信部28および結果通知部29を備える装置として機能する。なお、本実施形態では、画像データ処理サーバー1の備える各機能は、汎用プロセッサであるCPU11によって実行されるが、これらの機能の一部または全部は、1または複数の専用プロセッサによって実行されてもよい。
ユーザー認証部21は、ユーザー端末9またはスキャナー3から送信された認証要求を受けて、ユーザー端末9またはスキャナー3のユーザーを認証する。認証要求は、認証のために必要な認証情報を含む。本実施形態では、認証情報としてユーザーIDおよびパスワードが用いられるが、認証情報には、その他の情報が用いられてもよい。なお、本実施形態に係るスキャナー3は、先述の通り、文字入出力や項目選択を可能とするためのユーザーインターフェースを有していないため、ユーザー端末9からスキャナー3に対して通知された認証情報を用いて、画像データ処理サーバー1に対して認証要求を送信する。
本実施形態では、ユーザーを認証するために、アクセストークン(以下、後述するクラウドサービス用アクセストークンと区別するために、「画像データ処理サーバー用アクセストークン」と称する)が用いられる。ユーザー認証部21は、ユーザー端末9またはスキャナー3から認証要求を受信すると、認証要求に含まれる認証情報を検証し、適切な認証情報であった場合に、認証要求の送信元(ユーザー端末9またはスキャナー3)に対して、画像データ処理サーバー用アクセストークンを送信する。画像データ処理サーバー用アクセストークンを受信したユーザー端末9またはスキャナー3は、以降、この画像データ処理サーバー用アクセストークンを用いて、画像データ処理サーバー1と通信を行う。
なお、本実施形態において、ユーザー認証部21は、スキャナー3のユーザーを認証するために、以下に説明するトークン生成部211、トークン受信部212および判定用情報送信部213を備える。
トークン生成部211は、スキャナー3の識別情報およびアクセストークンの有効期限に係る有効期限関連情報を用いて、画像データ処理サーバー用アクセストークンを生成する。具体的には、トークン生成部211は、スキャナー3のシリアル番号(識別情報)、およびアクセストークン生成日時を示すタイムスタンプ(有効期限関連情報)を含むデー
タを暗号化することで、アクセストークンを生成する。このため、本実施形態では、ユーザー認証部21は、スキャナー3からアクセストークンを受信した場合、当該アクセストークンを復号してシリアル番号およびタイムスタンプを抽出し、抽出されたシリアル番号がユーザーアカウントに関連付けられたシリアル番号と一致すること、および、抽出されたタイムスタンプに所定の有効期間(例えば、30日間)を加算することで算出された有効期限が徒過していないこと、を確認することで、認証を行う。なお、本実施形態では、有効期限関連情報として、アクセストークン生成日時を示すタイムスタンプが用いられる例について説明しているが、有効期限関連情報として画像データ処理サーバー用アクセストークンの生成に用いられる情報は、本実施形態における例示に限定されない。例えば、画像データ処理サーバー1は、有効期限関連情報として、画像データ処理サーバー用アクセストークンの有効期限を用いてもよい。
トークン受信部212は、スキャナー3から画像データ処理サーバー用アクセストークンを受信する。
判定用情報送信部213は、画像データ処理サーバー用アクセストークンが受信された場合に、画像データ処理サーバー用アクセストークンの有効期限までの残時間が所定の閾値(例えば、7日)未満であるか否かを判定可能な判定用情報(本実施形態では、有効期限までの残時間)を、スキャナー3に対して送信する。
サービス設定部22は、画像データが所定の種別の画像データであった場合の画像データ等の送信先としてユーザーに指定されたクラウドサービスを、所定のクラウドサービスとして設定する。即ち、本実施形態に係る画像データ処理サーバー1では、画像データが所定の種別の画像データであった場合のデータ送信先クラウドサービスを、ユーザー所望のクラウドサービスに設定することができる。例えば、文書管理サービスが複数ある場合(例えば、図1に示された文書管理サービスAおよび文書管理サービスB)、ユーザーは、所望の文書管理用クラウドサービスを、ユーザー端末9で動作するアプリケーションを介して画像データ処理サーバー1に指定することで、画像データが文書の画像データであった場合にデータの送信先となるクラウドサービスを、ユーザー指定の文書管理サービスとすることが出来る。これは、その他の種別の画像データに係るデータを管理するクラウドサービス、即ち、名刺管理サービス、レシート管理サービス、写真/イラスト管理サービスについても同様である。
許可取得部23は、ユーザー認証されたユーザー端末9から送信された要求に従って、所定のクラウドサービスに対してアクセス許可要求を送信し、当該所定のクラウドサービスから、当該所定のクラウドサービスのユーザーアカウントへのアクセス許可を取得する。
本実施形態では、クラウドサービスからアクセス許可を受けるための手段としてOAuth2.0認証が用いられ、アクセス許可として、アクセストークン(以下、上述した画像データ処理サーバー用アクセストークンと区別するために、「クラウドサービス用アクセストークン」と称する)が用いられる。画像データ処理サーバー1は、本システムと連携するクラウドサービスのうち、サービス設定部22によって設定されたクラウドサービス毎に、アクセス許可要求を送信することで、各クラウドサービスから発行されるアクセストークンを受信する。受信されたクラウドサービス毎のアクセストークンは、画像データ処理サーバー1における当該ユーザーのアカウントに紐付けて、画像データ処理サーバー1に保存される。
画像受信部24は、ユーザー認証されたスキャナー3によって取得され、送信された画像データを、ネットワークを介して受信する。
種別判定部25は、受信された画像データの種別を判定する。なお、本実施形態において、種別判定部25によって判定される種別には、文書、名刺、レシートおよび写真/イラストの少なくとも何れかが含まれる。但し、種別判定部25によって判定可能な画像データの種別は、本実施形態における例示に限定されない。
文字認識部26は、画像データに対して光学文字認識(Optical Character Recognition:OCR)を行う。
名称生成部27は、光学文字認識の結果取得された文字列を用いて、画像データまたは当該画像データに基づいて生成されたデータの名称を生成する。名称生成部27は、例えば、種別判定部25による判定の結果、画像データの種別が文書であった場合には、文書のタイトルおよび作成日付を含む文字列を、画像データの種別が名刺であった場合には、氏名および所属組織名を含む文字列を、画像データの種別がレシートであった場合には、店舗名および領収日付を含む文字列を、データの名称とする。
データ送信部28は、種別判定部25によって、画像データが所定の種別の画像データであると判定された場合に、当該画像データまたは当該画像データに基づいて生成されたデータ(以下、単に「データ」と称する)を、所定のクラウドサービスのユーザーアカウントへ送信する。クラウドサービスのユーザーアカウントへのデータ送信に際しては、許可取得部23によって各クラウドサービスから取得された各クラウドサービス用アクセストークンのうち、画像データを送信したスキャナー3のユーザーとしてユーザー認証部21に認証されたユーザーのアカウントに紐付けて画像データ処理サーバー1に保存されているアクセストークンが用いられる。
このようにすることで、データ送信部28は、種別判定部25によって、画像データが文書の画像データであると判定された場合に、当該画像データまたは当該画像データに基づいて生成されたデータを、当該画像データを送信したスキャナー3のユーザーとして認証されたユーザーについて文書管理サービスから取得されたアクセストークンを用いて、当該ユーザー指定の文書管理サービスのユーザーアカウントへ送信することが出来る。
結果通知部29は、リリース結果通知を行うことで、データ送信部28によるデータ送信の結果(完了/失敗等)をユーザーに通知する。
スキャナー3は、記憶装置34に記録されているプログラムが、RAM33に読み出され、CPU31によって実行されて、スキャナー3に備えられた各ハードウェアが制御されることで、認証要求送信部41、ユーザー操作受付部42、画像データ取得部43、画像送信部44、トークン送信部45、判定用情報受信部46、残時間確認部47、発行要求送信部48およびトークン管理部49を備える装置として機能する。なお、本実施形態では、スキャナー3の備える各機能は、汎用プロセッサであるCPU31によって制御されるが、これらの機能の一部または全部は、1または複数の専用プロセッサによって制御されてもよい。
認証要求送信部41は、ユーザー端末9から当該スキャナー3に対して通知された認証情報を含む認証要求を、画像データ処理サーバー1に対して送信する。
ユーザー操作受付部42は、所定のユーザー操作を受け付ける。本実施形態では、所定のユーザー操作として、スキャナー3に備えられたスキャンボタン38の押下またはタッチが、スキャン開始から適切なクラウドサービスへのデータ送信までの一連の処理を一括して指示するためのユーザー操作として受け付けられる。但し、スキャン開始の契機とな
る所定のユーザー操作は、本開示における例示に限定されない。
画像データ取得部43は、ユーザー操作受付部42によって所定のユーザー操作が受け付けられると、対象を撮像することによって画像データを取得する。具体的には、本実施形態に係るスキャナー3の画像データ取得部43は、は、ユーザー操作受付部42によってスキャンボタン38の操作が受け付けられると、シートフィーダー36を制御して原稿を撮像部37に送り、撮像部37を制御して原稿を撮像することで、原稿の画像データを取得する。
画像送信部44は、画像データ取得部43によって取得された画像データを、ネットワークを介して画像データ処理サーバー1に送信する。また、画像送信部44による画像データの送信は、所定のユーザー操作(本実施形態では、スキャンボタン38の操作)以外の操作を介させることなく、画像データの取得に続けて実行される。
トークン送信部45は、画像データ処理サーバー1に対して画像データ処理サーバー用アクセストークンを送信する。
判定用情報受信部46は、判定用情報として、画像データ処理サーバー用アクセストークンの有効期限までの残時間を、画像データ処理サーバー1から受信する。
残時間確認部47は、判定用情報が受信された場合に、画像データ処理サーバー用アクセストークンの有効期限までの残時間が所定の閾値未満であるか否かを判定する。
発行要求送信部48は、画像データ処理サーバー用アクセストークンの有効期限までの残時間が所定の閾値未満であると判定された場合に、画像データ処理サーバー用アクセストークンの発行要求を送信する。
トークン管理部49は、画像データ処理サーバー用の新たなアクセストークン(以下、「新アクセストークン」と称する)を受信した場合に、当該新アクセストークンを有効化し、画像データ処理サーバー用の旧いアクセストークン(以下、「旧アクセストークン」と称する)を無効化する。
<処理の流れ>
次に、本実施形態に係るシステム1によって実行される処理の流れを説明する。なお、以下に説明する処理の具体的な内容および処理順序は、本開示を実施するための一例である。具体的な処理内容および処理順序は、本開示の実施の形態に応じて適宜選択されてよい。
図4は、本実施形態に係るアカウント作成/ユーザー認証処理の流れの概要を示すシーケンス図である。
ステップS101では、ユーザーアカウントが作成される。ユーザーは、スマートフォン等のユーザー端末9においてアプリケーションを起動させる。起動したアプリケーションは、ユーザーに対して、アカウント作成に必要な情報(例えば、ユーザーIDおよびパスワード等)の入力を促し、ユーザーによって入力された情報を、画像データ処理サーバー1に送信する。画像データ処理サーバー1は、ユーザー端末9から受信した情報が適切なものであるか否かを判定し、適切であると判定された場合、当該ユーザーのアカウントを生成する。また、アプリケーションは、作成されたユーザーアカウントにログインするための認証情報(本実施形態では、ユーザーIDおよびパスワード)を、ユーザー端末9に保存する。
ステップS102およびステップS103では、ユーザー端末9による、画像データ処理サーバー1へのログイン処理が行われる。ユーザー認証部21は、ユーザー端末9から送信された認証要求を受けて、ユーザー端末9のユーザーを認証する。具体的には、ユーザー認証部21は、ユーザー端末9から認証要求を受信すると(ステップS102)、認証要求に含まれる認証情報を検証し、ステップS101で作成されたアカウント情報と一致する場合に、認証要求の送信元のユーザー端末9に対して、画像データ処理サーバー用アクセストークンを送信する(ステップS103)。画像データ処理サーバー用アクセストークンを受信したユーザー端末9は、以降、受信されたアクセストークンを用いて、画像データ処理サーバー1と通信を行う。
また、ユーザーは、画像データ処理サーバー1にアカウントを作成した後、ユーザー端末9のアプリケーションを起動して、無線ネットワークを介してユーザー端末9をスキャナー3に接続させる。そして、アプリケーションは、ステップS101で作成され、ユーザー端末9に保存されている、画像データ処理サーバー1にログインするための認証情報を、スキャナー3に対して通知する。認証情報の通知を受けたスキャナー3の認証要求送信部41は、当該認証情報を含む認証要求を画像データ処理サーバー1に送信する。
ステップS104およびステップS105では、スキャナー3による、画像データ処理サーバー1へのログイン処理が行われる。スキャナー3から送信された認証要求が画像データ処理サーバー1に受信されると(ステップS104)、画像データ処理サーバー1のユーザー認証部21は、スキャナー3のユーザーを認証する。ユーザー認証部21は、スキャナー3から受信された認証要求に含まれる認証情報を検証し、ステップS101で作成されたアカウント情報と一致する場合に、認証要求の送信元のスキャナー3に対して、画像データ処理サーバー用アクセストークンを送信する(ステップS105)。画像データ処理サーバー用アクセストークンを受信したスキャナー3は、以降、受信されたアクセストークンを用いて、画像データ処理サーバー1と通信を行う。
図5は、本実施形態に係る許可取得処理の流れの概要を示すシーケンス図である。本実施形態に係る許可取得処理は、ユーザーによって、本実施形態にかかるシステムを利用するためのアプリケーションが起動されたことを契機として実行される。なお、本実施形態では、クラウドサービスからアクセス許可を受けるための手段としてOAuth2.0認証が用いられるが、認証にはその他の手段が用いられてもよい。
ステップS201およびステップS202では、クラウドサービスに対するアクセス許可要求が行われる。ユーザーは、ユーザー端末9においてアプリケーションを起動させ、アプリケーションのエージェントを操作することで、ユーザー端末9を、画像データ処理サーバー1が提供するWebサイトに接続する。なお、本実施形態では、アプリケーションに実装されたWebブラウザがエージェントとして用いられるが、画像データ処理サーバー1が提供するWebサイトへの接続には、ユーザー端末9にインストールされたその他のWebブラウザが用いられてもよい。
そして、画像データ処理サーバー1のWebサイトによって、Webブラウザを介してユーザーがおこなった、クラウドサービスへの接続指示が受信されると(ステップS201)、画像データ処理サーバー1の許可取得部23は、クラウドサービスに対して、アクセス許可要求を送信する(ステップS202)。このアクセス許可要求は、画像データ処理サーバー1が、各クラウドサービスの当該ユーザーのアカウントを利用することの許可を求めるものである。なお、各クラウドサービスのユーザーアカウントは、ユーザーによって予め設定されたものであってもよいし、アプリケーションを介して新たに作成されたものであってもよい。なお、画像データの種別毎に、ユーザーが所望のクラウドサービス
を指定可能であり、許可取得部23が、ユーザーに指定されたクラウドサービスに対してアクセス許可要求を送信することは、サービス設定部22および許可取得部23の説明において上述した通りである。
アクセス許可要求を受けたクラウドサービスは、ユーザー端末9に、認可確認のためのポップアップを表示する。その後、表示されたポップアップを確認したユーザーによって、画像データ処理サーバー1がポップアップに係るクラウドサービスの当該ユーザーのアカウントを利用することを承認(許諾)する操作が行われると、ユーザーに承認されたことが、Webブラウザから当該クラウドサービスに通知される。
ステップS203では、ユーザーに承認された旨の通知を受けたクラウドサービスによって、認可コードがユーザー端末9のWebブラウザ経由で画像データ処理サーバー1に渡される。画像データ処理サーバー1の許可取得部23は、クラウドサービスから送信された認可コードを、ユーザー端末9経由で受信する。その後、処理はステップS204へ進む。
ステップS204およびステップS205では、クラウドサービス用アクセストークンが取得される。画像データ処理サーバー1の許可取得部23は、クラウドサービスに対して認可コードを含むアクセストークン要求を送信し(ステップS204)、認可コードと引き換えに、クラウドサービスからアクセストークンを取得する(ステップS205)。取得されたクラウドサービス毎のアクセストークンは、画像データ処理サーバー1におけるユーザーアカウントに紐付けて、画像データ処理サーバー1に保存される。その後、本シーケンス図に示された処理は終了する。
上記説明した、図4および図5に示された処理によって、画像データ処理サーバー1のアクセストークンがスキャナー3によって取得され、クラウドサービスのアクセストークンが画像データ処理サーバー1によって取得され、且つこれらのユーザーアカウントが紐付けられた状態となる。このため、本実施形態に係るシステムによれば、図6を用いて後述する、画像データ処理サーバー1を経由したスキャナー3からクラウドサービスへのスキャンデータの送信(リリース)が可能となる。
図6は、本実施形態に係る画像データ処理の流れの概要を示すシーケンス図である。本実施形態に係る画像データ処理は、スキャナー3に原稿が搭載され、ユーザーによってスキャナー3のスキャンボタン38が操作されたことを契機として実行される。
ステップS301では、スキャンされた画像データが、画像データ処理サーバー1にアップロードされる。スキャナー3のユーザー操作受付部42によってスキャンボタン38の操作が受け付けられると、画像データ取得部43は、原稿をシートフィーダー36によって撮像部37に送り、撮像部37に原稿を撮像させることで、原稿の画像データを取得する。そして、スキャナー3の画像送信部44は、取得された画像データを、画像データ処理サーバー1に送信する。この際、送信には、ステップS105において予め取得された、画像データ処理サーバー用アクセストークンが用いられる。
また、本実施形態において、画像送信部44による画像データの送信は、スキャンボタン38の操作以外のユーザー操作を介させることなく、画像データの取得に続けて実行される。画像データ処理サーバー1の画像受信部24は、スキャナー3から送信された画像データを受信する。また、画像受信部24は、画像データとともに受診されたアクセストークンを検査することで、受信された画像データが、ユーザー認証されたスキャナー3から送信されたものであるか否かを確認する。受信された画像データが、ユーザー認証されたスキャナー3から送信されたものでない場合、本シーケンス図に示された処理は終了す
る(図示は省略する)。一方、受信された画像データが、ユーザー認証されたスキャナー3から送信されたものである場合、処理はステップS302へ進む。
ステップS302では、原稿種別の自動判別が行われる。種別判定部25は、受信された画像データが、文書、名刺、レシートおよび写真/イラストの何れの種別に係る画像データであるかを判定する。種別の判定には、レイアウト認識や文字認識、色彩認識等の、画像の特徴に基づいた判定方式を用いることが出来るが、種別判定には、周知の技術または将来開発される技術を含めて様々な技術を採用可能であり、本開示における例示に限定されない。
また、文字認識部26は、画像データに対して光学文字認識(Optical Character Recognition:OCR)を行う。そして、名称生成部27は、光学文字認識の結果取得された文字列を用いて、画像データまたは当該画像データに基づいて生成されたデータの名称を生成する。具体的な名称生成の方法は、上述した通りである。また、画像データは、スキャナーから受信されたデータフォーマットに拘らず、PDF(Portable Document Format)等の、判定された原稿種別に適したフォーマットに変換されてもよい。その後、処理はステップS303へ進む。
ステップS303では、原稿種別に対応したクラウドサービスが特定され、該当するクラウドサービスに対してデータが送信される。データ送信部28は、ステップS302で判定された原稿種別に従って、当該画像データまたは当該画像データに基づいて生成されたデータおよび生成された名称を、当該原稿種別に対応するクラウドサービスのユーザーアカウントへ送信する。クラウドサービスのユーザーアカウントへのデータ送信に際しては、ステップS205で取得され、画像データ処理サーバー1のユーザーアカウントに紐付けて保存された、各クラウドサービス用アクセストークンが用いられる。その後、処理はステップS304へ進む。
ステップS304およびステップS305では、リリース結果が送信される。画像データ処理サーバー1の結果通知部29は、データ送信部28によるデータ送信が完了し、送信先のクラウドサービスから結果通知を受け取ると(ステップS304)、リリース結果通知を行うことで、データ送信の完了または失敗等をユーザーに通知する(ステップS305)。具体的には、結果通知部29は、ユーザー端末9に対してプッシュ通知を行うことが可能な所定の通知ハブサービス(例えば、Azure通知ハブ)を介して、ユーザー端末9が標準装備する通知機能やアプリケーションに対して、データが所定のクラウドサービスに送信され、当該クラウドサービスに保存されたことを通知する。但し、結果通知には、その他の技術が採用されてもよい。その後、本シーケンス図に示された処理は終了する。
図7は、本実施形態に係るアクセストークン更新処理の流れの概要を示すシーケンス図である。本シーケンス図に示されたアクセストークン更新処理(ステップS401以降の処理)は、図4を用いて説明したアカウント作成/ユーザー認証処理のステップS104およびステップS105において画像データ処理サーバー1からスキャナー3に対して画像データ処理サーバー用アクセストークンが発行された後、スキャナー3が起動し、ネットワークに接続される毎に、または定期的に実行される。
ステップS401およびステップS402では、アクセストークンが送受信される。スキャナー3が起動し、ネットワークに接続されると、スキャナー3のトークン送信部45は、画像データ処理サーバー1に対して画像データ処理サーバー用アクセストークンを送信する(ステップS401)。ここで、トークン送信部45は、複数の画像データ処理サーバー用アクセストークンがスキャナー3に保持されている場合、当該複数の画像データ
処理サーバー用アクセストークンの夫々に関連付けられているデータ(後述するA面カウンターおよびB面カウンター)を比較し、優先度が最も高い画像データ処理サーバー用アクセストークンを画像データ処理サーバー1に送信する。有効なトークンを判定する処理の詳細については、後述する。
画像データ処理サーバー1のトークン受信部212は、スキャナー3によって送信された画像データ処理サーバー用アクセストークンを受信する(ステップS402)。アクセストークンが受信されると、ユーザー認証部21は、受信されたアクセストークンが、スキャナー3の識別情報および有効期限関連情報を用いて生成された画像データ処理サーバー用アクセストークンであるか否かを判定することで、ユーザーを認証する。
具体的には、ユーザー認証部21は、受信されたアクセストークンを復号して抽出されたシリアル番号がユーザーアカウントに関連付けられたシリアル番号と一致すること、および、アクセストークンを復号して抽出されたタイムスタンプに所定の有効期間を加算することで算出された有効期限が徒過していないこと、を確認することで、認証を行う。その後、処理はステップS403へ進む。
ステップS403およびステップS404では、アクセストークンの有効期限の判定用情報が生成および送信される。画像データ処理サーバー1の判定用情報送信部213は、受信された画像データ処理サーバー用アクセストークンの有効期限までの残時間が所定の閾値未満であるか否かを判定可能な判定用情報を、スキャナー3に対して送信する。本実施形態では、判定用情報として、有効期限までの残時間が算出され(ステップS403)、スキャナー3に対して送信される(ステップS404)。残時間は、アクセストークン生成日時を示すタイムスタンプに所定の有効期間を加算することで算出された有効期限と、現在日時とを比較することで算出される。但し、画像データ処理サーバー1からスキャナー3に送信される判定用情報は、本実施形態において示した例に限定されない。例えば、判定用情報送信部213は、判定用情報として、有効期限までの残時間が所定の閾値未満であるか否かを示す情報を送信してもよい。その後、処理はステップS405へ進む。
ステップS405では、アクセストークンの有効期限の判定用情報が受信される。スキャナー3の判定用情報受信部46は、画像データ処理サーバー1から判定用情報を受信する。上述の通り、本実施形態では、判定用情報は、画像データ処理サーバー用アクセストークンの有効期限までの残時間である。
即ち、本実施形態において、スキャナー3は、スキャナー3の起動時またはネットワークへの接続時に、画像データ処理サーバー1に対して画像データ処理サーバー用アクセストークンを送信することで、画像データ処理サーバー1から判定用情報を受信する。そして、この判定用情報は、アクセストークンの有効期限までの残時間等、少なくともスキャナー3がアクセストークンの有効期限自体を把握しなくても、アクセストークンの有効期限までの残時間がどの程度であるかを判定可能な情報である。このため、本開示に係るアクセストークン更新の仕組みを採用すれば、スキャナー3は、アクセストークンの期限を自ら管理したり算出したりする機能や、内部時計の日時を正確に保つための機能等を省略することが出来る。その後、処理はステップS406へ進む。
ステップS406では、アクセストークンの有効期限までの残時間が確認される。残時間確認部47は、画像データ処理サーバー用アクセストークンの有効期限までの残時間が所定の閾値未満であるか否かを判定する。具体的には、残時間確認部47は、ステップS405で受信された残時間と、所定の閾値とを比較することで、残時間の確認を行う。残時間確認の結果、残時間が閾値以上であると判定された場合、スキャナー3は、アクセストークン更新処理を終了する。一方、残時間が閾値未満であると判定された場合、処理は
ステップS407へ進む。
ステップS407からステップS410では、アクセストークンの再発行(リフレッシュ)が行われる。発行要求送信部48は、ステップS406においてアクセストークンの有効期限までの残時間が所定の閾値未満であると判定された場合に、アクセストークンの発行要求(リフレッシュトークン)を送信する(ステップS407)。判定用情報を受信したスキャナー3によって送信された画像データ処理サーバー用アクセストークンの発行要求(リフレッシュトークン)が受信されると(ステップS408)、画像データ処理サーバー1のユーザー認証部21は、有効期限が更新された新アクセストークンを発行する(ステップS409)。新アクセストークンの具体的な生成方法は、トークン生成部211の説明において上述した通りである。その後、処理はステップS410へ進む。
ステップS411からステップS413では、新アクセストークンの保存および有効化が行われる。新アクセストークンが受信されると(ステップS411)、スキャナー3のトークン管理部49は、当該新アクセストークンを不揮発性の記憶装置34に保存し(ステップS412)、新アクセストークンの有効化および旧アクセストークンの無効化を行う(ステップS413)。具体的には、本実施形態において、トークン管理部49は、スキャナー3に保持される複数の画像データ処理サーバー用アクセストークンに、アクセストークン間の優先度を比較可能なデータを関連付けて保存している。そして、トークン管理部49は、新アクセストークンを受信した場合、当該新アクセストークンに、他の画像データ処理サーバー用アクセストークンよりも優先される値を有するデータを関連付けることで、当該新アクセストークンを有効化すると同時に、他の画像データ処理サーバー用アクセストークンを無効化する。新アクセストークンの有効化および旧アクセストークンの無効化が完了すると、本シーケンス図に示された処理は終了する。
図8は、本実施形態において用いられるトークン管理において、A面に保存されたアクセストークンに関連付けられたカウンター(以下、「A面カウンター」と称する)およびB面に保存されたアクセストークンに関連付けられたカウンター(以下、「B面カウンター」と称する)の夫々が取りうる値の遷移と、各時点において有効化される面と、を時系列で示す図である。
トークン管理部49は、無効状態から有効化したいアクセストークンに係る面のカウンターのみを書き換える。ここで、トークン管理部49は、有効化したいアクセストークンに係る面のカウンターに、「現在有効なアクセストークンに係る面のカウンターの値+1」(但し、現在有効なアクセストークンに係る面のカウンターの値が0xFFまたは3である場合には、「1」)を設定する。即ち、初期値の0xFFを除いて、A面カウンターの値とB面カウンターの値は同じにはならない。そして、A面カウンターの値とB面カウンターの値が、以下に示す数列において隣り合う数値の関係である場合、右側の値を有していた面のアクセストークンが、有効なアクセストークンとして扱われる。
0xFF, 1, 2, 3, 1
即ち、2つのカウンターの値が「0xFF」と「1」である場合、「1」が設定されている面のアクセストークンが有効であり、「1」と「2」である場合、「2」が設定されている面のアクセストークンが有効であり、「2」と「3」である場合、「3」が設定されている面のアクセストークンが有効であり、「3」と「1」である場合、「1」が設定されている面のアクセストークンが有効である(図8を参照)。このようなカウンター制御を行うことで、ある面のアクセストークンを有効化すると同時に、他の面のアクセストークンを無効化することが出来る。
例えば、旧アクセストークンAがA面に保存されていた場合に(図7のステップS40
8まで)、リフレッシュトークンによって新アクセストークンBが取得されると(ステップS409からステップS410まで)、スキャナー3は、新アクセストークンBを不揮発性の記憶装置34のB面へ保存し(ステップS411からステップS412まで)、B面のカウンターに、「現在有効なA面のカウンターの値+1」(但し、現在有効なA面のカウンターの値が3である場合、1)を設定する(ステップS413)。先述の通り、トークン送信部45は、複数の画像データ処理サーバー用アクセストークンがスキャナー3に保持されている場合、当該複数の画像データ処理サーバー用アクセストークンの夫々に関連付けられているデータ(後述するA面カウンターおよびB面カウンター)を比較し、優先度が最も高い画像データ処理サーバー用アクセストークンを画像データ処理サーバー1に送信する。このため、B面のカウンターが書き換えられた後は、A面のカウンターを書き換えることなく、A面とB面のカウンターの比較によって新アクセストークンBが有効なトークンであると判断される。
なお、新アクセストークンがサーバーから送信されてからカウンター更新が完了するまでの期間に、スキャナー3の強制電源断等の何らかの異常が発生した場合、スキャナー3は、次の起動時に、上記説明した比較ルールに基づいてA面カウンターの値とB面カウンターの値とを比較し、有効と判断された面のアクセストークンを用いて画像データ処理サーバー1との通信を継続する。本実施形態において、画像データ処理サーバー1は、正規に発行されたトークンを、有効期限が切れるまで有効として扱い(新アクセストークンを発行した場合にも、旧アクセストークンは無効化されない)、ユーザーを認証するため、スキャナー3は、旧アクセストークンを用いて、中断された処理をリカバリすることが可能である。本実施形態では、このようにすることで、スキャナー3と画像データ処理サーバー1との間で、アクセストークン管理の状態不一致が発生することを防止している。なお、スキャナー3が新アクセストークンの保存に失敗し、且つ旧アクセストークンが期限切れになった場合、スキャナー3は、改めてトークンリフレッシュを発行することでリカバリを行う。
<アクセストークン更新処理のバリエーション>
以下、アクセストークン更新処理のバリエーションについて説明する。図1から図8を用いて説明したアクセストークン更新処理を「第一のアクセストークン更新処理」と称し、図9および図10を用いて以下に説明するものを「第二のアクセストークン更新処理」と称する。第二のアクセストークン更新処理を実施するにあたってのシステムの構成、ハードウェア構成、アカウント作成/ユーザー認証処理の流れ、許可取得処理の流れ、および画像データ処理の流れは、第一のアクセストークン更新処理に係る実施形態と同様であるため、説明を省略する。また、図1から図8を用いて説明した実施形態と同様の構成および処理については、同一の符号を用いて図示し、説明を省略する。
図9は、本実施形態に係るシステムの機能構成のバリエーションを示す図である。画像データ処理サーバー1は、図3を用いて説明した例と同様、記憶装置14に記録されているプログラムが、RAM13に読み出され、CPU11によって実行されて、画像データ処理サーバー1に備えられた各ハードウェアが制御されることで、ユーザー認証部21、サービス設定部22、許可取得部23、画像受信部24、種別判定部25、文字認識部26、名称生成部27、データ送信部28および結果通知部29を備える装置として機能する。
ユーザー認証部21は、図3を用いて説明した例と同様、スキャナー3のユーザーを認証するために、トークン生成部211、トークン受信部212および判定用情報送信部213を備える。但し、図9に示した例では、ユーザー認証部21は、更に無効化要求受信部214、トークン無効化部215および無効化通知部216を備える。
無効化要求受信部214は、新アクセストークンを受信し、当該新アクセストークンを有効化したスキャナー3から、旧アクセストークンの無効化の要求を受信する。
トークン無効化部215は、無効化要求が受信された場合に、旧アクセストークンを無効化する。なお、本実施形態におけるトークンの無効化には、フラグ処理等による無効化のみならず、画像データ処理サーバー1の記憶装置14または外部データベースから旧アクセストークンを削除することも含まれる。なお、図7のシーケンス図を用いて説明した第一のアクセストークン更新処理では、画像データ処理サーバー1は、スキャナー3から受信したアクセストークンを復号してシリアル番号やタイムスタンプ情報等を検証することでユーザー認証を行っていたため、サーバー1側はアクセストークンを保存しなかったが、本バリエーションでは、画像データ処理サーバー1においても明示的にアクセストークンが無効化されるため、サーバー1によるアクセストークンの保存が行われてもよい。
無効化通知部216は、画像データ処理サーバー1において旧アクセストークンが無効化された場合に、スキャナー3に対して当該無効化を通知する。
スキャナー3は、記憶装置34に記録されているプログラムが、RAM33に読み出され、CPU31によって実行されて、スキャナー3に備えられた各ハードウェアが制御されることで、図3を用いて説明した例と同様、認証要求送信部41、ユーザー操作受付部42、画像データ取得部43、画像送信部44、トークン送信部45、判定用情報受信部46、残時間確認部47、発行要求送信部48およびトークン管理部49を備える装置として機能する。但し、図9に示した例では、スキャナー3は、更に無効化要求送信部50を備える。
無効化要求送信部50は、スキャナー3における新アクセストークンの有効化が完了した場合に、画像データ処理サーバー1に対して当該旧アクセストークンの無効化要求を送信する。
図10は、本実施形態に係るアクセストークン更新処理のバリエーションの概要を示すシーケンス図である。本シーケンス図に示されたアクセストークン更新処理(ステップS501以降の処理)は、図4を用いて説明したアカウント作成/ユーザー認証処理のステップS104およびステップS105において画像データ処理サーバー1からスキャナー3に対して画像データ処理サーバー用アクセストークンが発行された後、スキャナー3が起動し、ネットワークに接続される毎に、または定期的に実行される。
ステップS501からステップS512の処理は、図7を用いて説明したステップS401からステップS412の処理と概略同様であるため、説明を省略する。但し、カウンターを用いてアクセストークンの有効/無効を制御していた第一のアクセストークン更新処理と異なり、第二のアクセストークン更新処理では、フラグを用いてアクセストークンの有効/無効が制御される。このため、ステップS501において、トークン送信部45は、画像データ処理サーバー用アクセストークンに関連付けられているフラグを参照し、有効状態に設定されている画像データ処理サーバー用アクセストークンを画像データ処理サーバー1に送信する。その後、ステップS502からステップS512の処理が実行されて、画像データ処理サーバー1から受信された新アクセストークンが、スキャナー3の不揮発性の記憶装置34に保存されると、処理はステップS513へ進む。
ステップS513では、スキャナー3において新アクセストークンが有効化される。トークン管理部49は、新アクセストークンに関連付けられたフラグを「有効(Valid)」に設定することで、新アクセストークンを有効化する。但し、第二のアクセストークン更新処理では、フラグを用いてアクセストークンの有効/無効を制御しているため、新
アクセストークンの有効化と旧アクセストークンの無効化とを同時に行うことは出来ず、この時点で、スキャナー3において新アクセストークンおよび旧アクセストークンの両方が有効状態である。その後、処理はステップS514へ進む。
ステップS514からステップS517では、画像データ処理サーバー1において旧アクセストークンが無効化される。ステップS513においてスキャナー3における新アクセストークンの有効化が完了したことを受けて、無効化要求送信部50は、画像データ処理サーバー1に対して旧アクセストークンの無効化要求を送信する(ステップS514)。画像データ処理サーバー1の無効化要求受信部214は、スキャナー3から、旧アクセストークンの無効化要求を受信する(ステップS515)。無効化要求が受信されると、トークン無効化部215は、画像データ処理サーバー1において旧アクセストークンを無効化し(ステップS516)、無効化通知部216は、スキャナー3に対して当該無効化の通知を送信する(ステップS517)。その後、処理はステップS518へ進む。
ステップS518およびステップS519では、スキャナー3において旧アクセストークンが無効化される。画像データ処理サーバー1において旧アクセストークンが無効化されたことを通知する無効化通知が受信されると(ステップS518)、トークン管理部49は、旧アクセストークンに関連付けられたフラグを「無効(Invalid)」に設定することで、旧アクセストークンを無効化する(ステップS519)。その後、本シーケンス図に示された処理は終了する。
なお、新アクセストークンがサーバーにおいて発行されてから旧アクセストークンの無効化が完了するまでの期間に、スキャナー3の強制電源断等の何らかの異常が発生した場合、スキャナー3は、次の起動時に、記憶装置34に保存されているアクセストークンの有効/無効の設定を参照し、有効と判断されたアクセストークンを用いて画像データ処理サーバー1との通信を継続する。本実施形態において、画像データ処理サーバー1のユーザー認証部21は、新アクセストークンの発行以降、旧アクセストークンが画像データ処理サーバー1において無効化されるまでの期間、新アクセストークンおよび旧アクセストークンの双方を有効なものとして扱い、ユーザーを認証するため、スキャナー3は、新アクセストークンおよび旧アクセストークンの何れを用いても、中断された処理をリカバリすることが可能である。本実施形態では、このようにすることで、スキャナー3と画像データ処理サーバー1との間で、アクセストークン管理の状態不一致が発生することを防止している。なお、スキャナー3が新アクセストークンの保存に失敗し、且つ旧アクセストークンが期限切れになった場合、スキャナー3は、改めてトークンリフレッシュを発行することでリカバリを行う。
なお、本バリエーションでは、図8を用いて説明したようなカウンターによるトークン管理が行われず、夫々のトークンに対して有効/無効を示すフラグが設定されるため、短時間ではあるが、スキャナー3において、新アクセストークンと旧アクセストークンの両方が有効である期間が生じる。この期間にスキャナー3の強制電源断等の何らかの異常が発生した場合、トークン送信部45は、トークンに含まれる値の大小等に基づいて何れが新アクセストークンであるかを判断し、新アクセストークンを優先的に画像データ処理サーバー1に送信する。
<効果>
上記したアクセストークン更新処理によれば、スキャナーの起動時や画像データ処理サーバー1への接続時に、アクセストークンの有効期限の残時間確認が実施される。アクセストークンの期限切れが発生した場合、従来であれば、通常の通信処理中(例えば、画像データのアップロード中)に期限切れエラーが発生し、ユーザーが是正手続きを行う必要があったところ、本開示に係るアクセストークン更新処理を採用することで、アクセスト
ークンの期限切れの発生を事前に検知し、スキャナーファームウェアが内部的にリフレッシュトークンを発行して、処理中の期限切れエラーを防止することが出来る。
また、スキャナー等の、駆動部を有するユーザー装置においては、アクセストークンの期限切れを事前に確認し、駆動部制御中にトークンリフレッシュ処理が行われることを避けることで、トークンリフレッシュ処理が駆動部の制御に影響を及ぼして装置が故障するような事態を抑止することができる。
1 画像データ処理サーバー
3 スキャナー

Claims (16)

  1. アクセストークンを用いて、ネットワークを介して接続されたユーザー装置のユーザーを認証するユーザー認証手段と、
    前記ユーザー装置からアクセストークンを受信するトークン受信手段と、
    前記アクセストークンが受信された場合に、該アクセストークンの有効期限までの残時間が所定の閾値未満であるか否かを判定可能な判定用情報を、前記ユーザー装置に対して送信する判定用情報送信手段と、を備え、
    前記ユーザー認証手段は、前記判定用情報を受信した前記ユーザー装置によって送信されたアクセストークンの発行要求が受信された場合に、有効期限が更新された新たなアクセストークンを発行する、
    サーバー。
  2. 前記ユーザー装置の識別情報およびアクセストークンの有効期限に係る有効期限関連情報を用いてアクセストークンを生成するトークン生成手段を更に備え、
    前記ユーザー認証手段は、前記ユーザー装置から受信されたアクセストークンが、前記ユーザー装置の識別情報および前記有効期限関連情報を用いて生成されたアクセストークンであるか否かを判定することで、前記ユーザーを認証する、
    請求項1に記載のサーバー。
  3. 前記ユーザー認証手段は、前記新たなアクセストークンの発行以降、旧アクセストークンの有効期限が徒過するまでの期間、新たなアクセストークンおよび旧アクセストークンの双方を有効なものとしてユーザーを認証する、
    請求項1または2に記載のサーバー。
  4. 新たなアクセストークンを受信した前記ユーザー装置から、旧アクセストークンの無効化要求を受信する無効化要求受信手段と、
    前記無効化要求が受信された場合に、前記旧アクセストークンを無効化するトークン無効化手段と、
    を更に備える、請求項1に記載のサーバー。
  5. 前記ユーザー認証手段は、前記新たなアクセストークンの発行以降、旧アクセストークンが該サーバーにおいて無効化されるまでの期間、新たなアクセストークンおよび旧アクセストークンの双方を有効なものとしてユーザーを認証する、
    請求項4に記載のサーバー。
  6. 前記無効化要求受信手段は、新たなアクセストークンを受信し、該新たなアクセストークンを有効化した前記ユーザー装置から、旧アクセストークンの無効化の要求を受信する
    請求項4または5に記載のサーバー。
  7. 該サーバーにおいて前記旧アクセストークンが無効化された場合に、前記ユーザー装置に対して当該無効化を通知する無効化通知手段を更に備える、
    請求項4から6の何れか一項に記載のサーバー。
  8. ネットワークを介して互いに接続されたサーバーおよびユーザー装置を備えるシステムであって、
    前記サーバーは、
    アクセストークンを用いて、ネットワークを介して接続されたユーザー装置のユーザーを認証するユーザー認証手段と、
    前記ユーザー装置からアクセストークンを受信するトークン受信手段と、
    前記アクセストークンが受信された場合に、該アクセストークンの有効期限までの残時間が所定の閾値未満であるか否かを判定可能な判定用情報を、前記ユーザー装置に対して送信する判定用情報送信手段と、を備え、
    前記ユーザー装置は、
    前記サーバーに対して認証要求を送信する認証要求送信手段と、
    前記サーバーに対して前記アクセストークンを送信するトークン送信手段と、
    前記サーバーから前記判定用情報を受信する判定用情報受信手段と、
    前記判定用情報が受信された場合に、前記アクセストークンの有効期限までの残時間が所定の閾値未満であるか否かを判定する残時間確認手段と、
    前記アクセストークンの有効期限までの残時間が所定の閾値未満であると判定された場合に、アクセストークンの発行要求を送信する発行要求送信手段と、を備え、
    前記ユーザー認証手段は、前記判定用情報を受信した前記ユーザー装置によって送信されたアクセストークンの発行要求が受信された場合に、有効期限が更新された新たなアクセストークンを発行する、
    システム。
  9. 前記判定用情報受信手段は、前記判定用情報として、前記アクセストークンの有効期限までの残時間を、前記サーバーから受信する、
    請求項8に記載のシステム。
  10. 前記ユーザー装置は、新たなアクセストークンを受信した場合に、該新たなアクセストークンを有効化し、旧アクセストークンを無効化するトークン管理手段を更に備える、
    請求項8または9に記載のシステム。
  11. 前記トークン管理手段は、該ユーザー装置に保持される複数のアクセストークンに、アクセストークン間の優先度を比較可能なデータを関連付け、前記新たなアクセストークンを受信した場合に、該新たなアクセストークンに、他のアクセストークンよりも優先される値を有する前記データを関連付けることで、該新たなアクセストークンを有効化すると同時に他のアクセストークンを無効化し、
    前記トークン送信手段は、複数のアクセストークンがユーザー装置に保持されている場合、該複数のアクセストークンの夫々に関連付けられている前記データを比較し、優先度が最も高いアクセストークンを前記サーバーに送信する、
    請求項10に記載のシステム。
  12. 前記トークン送信手段は、前記新たなアクセストークンおよび旧アクセストークンの双方が有効である場合には、該新たなアクセストークンを優先的に前記サーバーに送信する、
    請求項10に記載のシステム。
  13. 該ユーザー装置における前記新たなアクセストークンの有効化が完了した場合に、前記サーバーに対して該旧アクセストークンの無効化要求を送信する無効化要求送信手段を更に備える、
    請求項10から12の何れか一項に記載のシステム。
  14. 前記トークン管理手段は、前記サーバーにおいて前記旧アクセストークンが無効化されたことが、該サーバーから通知された場合に、前記旧アクセストークンを無効化する、
    請求項10から13の何れか一項に記載のシステム。
  15. コンピューターが、
    アクセストークンを用いて、ネットワークを介して接続されたユーザー装置のユーザー
    を認証するユーザー認証ステップと、
    前記ユーザー装置からアクセストークンを受信するトークン受信ステップと、
    前記アクセストークンが受信された場合に、該アクセストークンの有効期限までの残時間が所定の閾値未満であるか否かを判定可能な判定用情報を、前記ユーザー装置に対して送信する判定用情報送信ステップと、が実行され、
    前記ユーザー認証ステップでは、前記判定用情報を受信した前記ユーザー装置によって送信されたアクセストークンの発行要求が受信された場合に、有効期限が更新された新たなアクセストークンが発行される、
    アクセストークン管理方法。
  16. コンピューターを、
    アクセストークンを用いて、ネットワークを介して接続されたユーザー装置のユーザーを認証するユーザー認証手段と、
    前記ユーザー装置からアクセストークンを受信するトークン受信手段と、
    前記アクセストークンが受信された場合に、該アクセストークンの有効期限までの残時間が所定の閾値未満であるか否かを判定可能な判定用情報を、前記ユーザー装置に対して送信する判定用情報送信手段と、として機能させ、
    前記ユーザー認証手段は、前記判定用情報を受信した前記ユーザー装置によって送信されたアクセストークンの発行要求が受信された場合に、有効期限が更新された新たなアクセストークンを発行する、
    プログラム。
JP2015017382A 2015-01-30 2015-01-30 システム Active JP5956623B1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2015017382A JP5956623B1 (ja) 2015-01-30 2015-01-30 システム
US14/713,786 US9646151B2 (en) 2015-01-30 2015-05-15 Access token management
CN201510552677.0A CN105847226B (zh) 2015-01-30 2015-09-01 访问令牌管理系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015017382A JP5956623B1 (ja) 2015-01-30 2015-01-30 システム

Publications (2)

Publication Number Publication Date
JP5956623B1 JP5956623B1 (ja) 2016-07-27
JP2016143164A true JP2016143164A (ja) 2016-08-08

Family

ID=56513727

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015017382A Active JP5956623B1 (ja) 2015-01-30 2015-01-30 システム

Country Status (3)

Country Link
US (1) US9646151B2 (ja)
JP (1) JP5956623B1 (ja)
CN (1) CN105847226B (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018144296A (ja) * 2017-03-02 2018-09-20 キヤノン株式会社 画像形成装置、方法、プログラム、並びにシステム
KR20190045201A (ko) * 2016-09-02 2019-05-02 아싸 아브로이 에이비 접근 객체로의 접근을 제어하기
JP2019185788A (ja) * 2018-04-17 2019-10-24 大日本印刷株式会社 処理プログラム、携帯端末及びサービス処理システム
JP2022518275A (ja) * 2019-01-24 2022-03-14 キヤノン オイローパ エヌ.ヴェー. 印刷システム、及び印刷方法

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6610082B2 (ja) * 2015-08-24 2019-11-27 富士ゼロックス株式会社 中継装置及び中継処理プログラム
JP6714337B2 (ja) 2015-10-16 2020-06-24 キヤノン株式会社 情報処理装置、情報処理方法およびプログラム
KR102424055B1 (ko) * 2015-12-08 2022-07-25 한국전자통신연구원 두 개의 api 토큰을 이용한 api 인증 장치 및 방법
US10817593B1 (en) * 2015-12-29 2020-10-27 Wells Fargo Bank, N.A. User information gathering and distribution system
US9985785B2 (en) * 2016-02-25 2018-05-29 International Business Machines Corporation Align session security for connected systems
US10951421B2 (en) 2016-11-28 2021-03-16 Ssh Communications Security Oyj Accessing hosts in a computer network
US10318957B2 (en) * 2017-10-23 2019-06-11 Capital One Services, Llc Customer identification verification process
JP6983685B2 (ja) * 2018-01-31 2021-12-17 キヤノン株式会社 情報処理システム、クライアント装置、認証認可サーバー、制御方法とそのプログラム
US11343260B2 (en) * 2018-03-01 2022-05-24 Google Llc Gradual credential disablement
EP3783495B1 (en) * 2018-04-19 2023-10-18 Murata Machinery, Ltd. Exclusive control system and exclusive control method
US11432149B1 (en) 2019-10-10 2022-08-30 Wells Fargo Bank, N.A. Self-sovereign identification via digital credentials for selected identity attributes
CN111147572B (zh) * 2019-12-24 2022-04-15 中国建设银行股份有限公司 云客服平台管理系统及方法
US11374917B2 (en) * 2020-01-24 2022-06-28 Visa International Service Association Prevention of token authentication replay attacks system and method
US11438328B2 (en) * 2020-04-30 2022-09-06 Vmware, Inc. Methods and apparatus to refresh a token
CN112836235A (zh) * 2021-02-01 2021-05-25 长沙市到家悠享网络科技有限公司 信息的同步方法、系统、装置、设备及存储介质
CN112836204A (zh) * 2021-02-03 2021-05-25 中国人民财产保险股份有限公司 一种令牌更新方法和装置
JP2024012911A (ja) * 2022-07-19 2024-01-31 キヤノン株式会社 画像処理装置、画像処理装置の制御方法及びプログラム

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007286883A (ja) * 2006-04-17 2007-11-01 Kawamura Electric Inc セッション管理プログラム及びwebサーバー機能搭載機器
JP2009031967A (ja) * 2007-07-26 2009-02-12 Fuji Xerox Co Ltd 情報処理装置及びプログラム
JP2012098839A (ja) * 2010-10-29 2012-05-24 Toshiba Corp アクセス認可装置
JP2013238965A (ja) * 2012-05-14 2013-11-28 Ntt Data Corp 認証システム、認証装置、認証方法、及びプログラム
JP2014010486A (ja) * 2012-06-27 2014-01-20 Ntt Docomo Inc 情報処理装置及び認可情報管理方法
JP2015005222A (ja) * 2013-06-21 2015-01-08 キヤノン株式会社 認可サーバーシステムおよびその制御方法、並びにプログラム

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8411562B2 (en) * 2004-05-26 2013-04-02 Panasonic Corporation Network system and method for providing an ad-hoc access environment
US20060282386A1 (en) * 2005-03-14 2006-12-14 Szeto Christopher T Method and system for premium access
US7669054B2 (en) * 2005-08-17 2010-02-23 Common Credential Systems, L.L.C. Legacy access control security system modernization apparatus
KR100847999B1 (ko) * 2006-06-30 2008-07-23 포스데이타 주식회사 네트워크 기반의 dvr 시스템에 있어서 dvr 서버 및모니터링 대상 단말 접근 제어 방법
US7996421B2 (en) * 2007-01-03 2011-08-09 International Business Machines Corporation Method, computer program product, and system for coordinating access to locally and remotely exported file systems
CN101217367B (zh) * 2007-01-04 2010-12-29 中国移动通信集团公司 引入鉴权客户端实现业务鉴权的系统及方法
JP5092629B2 (ja) 2007-08-30 2012-12-05 カシオ計算機株式会社 電子機器、決済システム及びプログラム
CN101562621B (zh) * 2009-05-25 2013-05-22 阿里巴巴集团控股有限公司 一种用户授权的方法、系统和装置
US8898453B2 (en) * 2010-04-29 2014-11-25 Blackberry Limited Authentication server and method for granting tokens
CN103119975B (zh) * 2010-09-27 2015-12-09 诺基亚通信公司 用户账户恢复
JP5843605B2 (ja) 2011-06-29 2016-01-13 キヤノン株式会社 印刷制御装置、印刷制御方法、情報処理システム、情報処理装置、情報処理方法およびコンピュータプログラム
EP2575315A1 (en) * 2011-09-30 2013-04-03 British Telecommunications Public Limited Company Controlled access
KR20130046155A (ko) * 2011-10-27 2013-05-07 인텔렉추얼디스커버리 주식회사 클라우드 컴퓨팅 서비스에서의 접근제어 시스템
WO2015047033A1 (en) * 2013-09-30 2015-04-02 Samsung Electronics Co., Ltd. System and method for providing cloud printing service
US9306939B2 (en) * 2014-05-30 2016-04-05 Oracle International Corporation Authorization token cache system and method

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007286883A (ja) * 2006-04-17 2007-11-01 Kawamura Electric Inc セッション管理プログラム及びwebサーバー機能搭載機器
JP2009031967A (ja) * 2007-07-26 2009-02-12 Fuji Xerox Co Ltd 情報処理装置及びプログラム
JP2012098839A (ja) * 2010-10-29 2012-05-24 Toshiba Corp アクセス認可装置
JP2013238965A (ja) * 2012-05-14 2013-11-28 Ntt Data Corp 認証システム、認証装置、認証方法、及びプログラム
JP2014010486A (ja) * 2012-06-27 2014-01-20 Ntt Docomo Inc 情報処理装置及び認可情報管理方法
JP2015005222A (ja) * 2013-06-21 2015-01-08 キヤノン株式会社 認可サーバーシステムおよびその制御方法、並びにプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
川崎 克巳 KATSUMI KAWASAKI: "2−6 サーブレットで処理をする / 3−5 セッション管理", サーブレット&JSP入門 第1版, vol. 第1版, JPN6016005820, 4 July 2011 (2011-07-04), JP, pages 156 - 160, ISSN: 0003258074 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190045201A (ko) * 2016-09-02 2019-05-02 아싸 아브로이 에이비 접근 객체로의 접근을 제어하기
KR102481761B1 (ko) * 2016-09-02 2022-12-27 아싸 아브로이 에이비 접근 객체로의 접근을 제어하기
JP2018144296A (ja) * 2017-03-02 2018-09-20 キヤノン株式会社 画像形成装置、方法、プログラム、並びにシステム
JP2019185788A (ja) * 2018-04-17 2019-10-24 大日本印刷株式会社 処理プログラム、携帯端末及びサービス処理システム
JP7243404B2 (ja) 2018-04-17 2023-03-22 大日本印刷株式会社 処理プログラム、携帯端末及びサービス処理システム
JP2022518275A (ja) * 2019-01-24 2022-03-14 キヤノン オイローパ エヌ.ヴェー. 印刷システム、及び印刷方法
JP7168790B2 (ja) 2019-01-24 2022-11-09 キヤノン オイローパ エヌ.ヴェー. 印刷システム、及び印刷方法

Also Published As

Publication number Publication date
JP5956623B1 (ja) 2016-07-27
US20160224782A1 (en) 2016-08-04
CN105847226A (zh) 2016-08-10
US9646151B2 (en) 2017-05-09
CN105847226B (zh) 2019-07-16

Similar Documents

Publication Publication Date Title
JP5956623B1 (ja) システム
US10375069B2 (en) Authorization delegation system, information processing apparatus, authorization server, control method, and storage medium
US9390247B2 (en) Information processing system, information processing apparatus and information processing method
JP5013975B2 (ja) 文書情報処理装置にアクセスするための方法、マシン読取可能な媒体及び装置
JP6031543B2 (ja) 画像データ処理サーバー、システム、方法およびプログラム
KR102357559B1 (ko) 시스템, 디바이스 관리 시스템 및 그 방법
US10554855B2 (en) Login and logout system, electronic device and recording medium
JP2007306365A (ja) 情報処理システム
US9924345B2 (en) Information processing apparatus, information processing system, and information processing method for transmitting display information in response to a user switching from a first terminal to a second terminal
CN109428725B (zh) 信息处理设备、控制方法和存储介质
US9240982B2 (en) Method for associating an image-forming device, a mobile device, and a user
JP2014026560A (ja) 印刷システム
JP2018124653A (ja) システムおよびログインシステム
JP6104956B2 (ja) 画像データ処理サーバー、システム、方法およびプログラム
JP2011192061A (ja) 電子機器およびその制御方法
US20230084993A1 (en) Mobile terminal, control method, and storage medium
JP4855063B2 (ja) 画像処理装置及びネットワーク端末装置
US9041964B2 (en) Image forming apparatus, computer-readable non-transitory storage medium with uploading program stored thereon, and uploading system
JP2010176197A (ja) 情報収集システム、サーバ装置および情報収集方法
JP5445476B2 (ja) 情報処理装置とその処理方法及びプログラム
JP6079147B2 (ja) ログイン処理システム、ログイン認証処理装置、ログイン認証処理装置の制御プログラム、ログイン処理方法
JP7077826B2 (ja) 情報処理システム
JP5610051B2 (ja) 認証制御装置、認証制御方法、プログラム、及び記録媒体
JP2013015887A (ja) 認証装置、認証方法、及びコンピュータプログラム
JP5692120B2 (ja) 画像形成装置、制御方法、プログラム

Legal Events

Date Code Title Description
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: 20160524

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160616

R150 Certificate of patent or registration of utility model

Ref document number: 5956623

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150