JP6237868B2 - Cloud service providing system and cloud service providing method - Google Patents
Cloud service providing system and cloud service providing method Download PDFInfo
- Publication number
- JP6237868B2 JP6237868B2 JP2016237278A JP2016237278A JP6237868B2 JP 6237868 B2 JP6237868 B2 JP 6237868B2 JP 2016237278 A JP2016237278 A JP 2016237278A JP 2016237278 A JP2016237278 A JP 2016237278A JP 6237868 B2 JP6237868 B2 JP 6237868B2
- Authority
- JP
- Japan
- Prior art keywords
- information
- authorization
- external service
- user
- service
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Description
本発明は、クラウドサービス提供システム及びクラウドサービス提供方法に関する。 The present invention relates to a cloud service providing system and a cloud service providing method .
或る装置がユーザから委譲された権限で他の装置を代理アクセスする場合に、装置間で交換される情報を減らすことを目的とし、アクセス制御や権限委譲に関する設定を一箇所で集中管理するアクセス権限管理システムは、従来から知られている(例えば特許文献1参照)。 Access to centrally manage settings related to access control and authority delegation for the purpose of reducing information exchanged between devices when a device performs proxy access to another device with authority delegated by the user An authority management system is conventionally known (see, for example, Patent Document 1).
従来のアクセス権限管理システムは、権限を委譲する条件を管理する認証装置と、サービス要求に応じてサービスを提供するサービス提供装置と、サービス提供装置へのアクセスを代行するサービス代理アクセス装置とを備えていた。 A conventional access authority management system includes an authentication apparatus that manages conditions for delegating authority, a service providing apparatus that provides a service in response to a service request, and a service proxy access apparatus that performs access to the service providing apparatus. It was.
近年、クラウドサービスに代表されるようなWebアプリケーションやサーバ側のアプリケーションの機能をサービスとして提供する利用形態が注目されている。このような利用形態において、ユーザは自身の権限に応じたサービスの提供を受ける為に、認証が必要となる。 2. Description of the Related Art In recent years, attention has been focused on usage forms that provide functions of Web applications and server-side applications represented by cloud services as services. In such a usage mode, the user needs to be authenticated in order to receive provision of a service according to his / her authority.
また、マッシュアップに代表されるような複数のサービスを連携させる利用形態も注目されている。このような利用形態においては、一のサービスがユーザから委譲された権限に応じて他のサービスの提供を受ける際に、認可が必要となる。 In addition, a usage form in which a plurality of services such as mashups are linked is also attracting attention. In such a usage mode, authorization is required when one service is provided with another service according to the authority delegated by the user.
このような、複数のサービスを連携させる利用形態において、ユーザは一のサービスがユーザから委譲された権限に応じて他のサービスの提供を受ける際に、他のサービスそれぞれについて認可手続きを行わなければならなかった。 In such a usage mode in which a plurality of services are linked, a user must perform an authorization procedure for each of the other services when the other service is provided according to the authority delegated by the user. did not become.
本発明の実施の形態は、上記の点に鑑みなされたもので、サービス利用のためのユーザによる認可手続きの回数を減らすことができるクラウドサービス提供システム及びクラウドサービス提供方法を提供することを目的とする。 Embodiments of the present invention have been made in view of the above points, and an object of the present invention is to provide a cloud service providing system and a cloud service providing method capable of reducing the number of authorization procedures by a user for using a service. To do.
上記目的を達成するため、本願請求項1は、クラウドサービスを提供するアプリケーションを搭載する1以上の情報処理装置を含むクラウドサービス提供システムであって、該クラウドサービス提供システムと認証基盤が異なる外部サービスと接続する前記クラウドサービス提供システムにおいて、第一のユーザが操作する第一の機器から、第二のユーザが前記外部サービスを利用するための認可要求を受け付けると、前記第一の機器の接続先を前記外部サービスに変更させる接続先変更手段と、前記接続先変更手段により接続先が前記外部サービスに変更された前記第一の機器から、前記外部サービスにおける前記第二のユーザの認可が認められたことを示す認可情報を受信すると、該認可情報を前記外部サービスに送信して、前記外部サービスを利用するための認可後の権限情報を前記外部サービスから取得する権限情報取得手段と、前記第二のユーザが操作する第二の機器から前記外部サービスを利用する処理の要求を前記アプリケーションが受信したことに基づいて前記アプリケーションから送信される要求を受信すると、前記第二のユーザに紐付く前記認可後の権限情報を前記アプリケーションに提供する権限情報提供手段と、を有することを特徴とする。
To achieve the above object, the
本発明の実施の形態によれば、サービス利用のためのユーザによる認可手続きの回数を減らすことができる。 According to the embodiment of the present invention, the number of authorization procedures by a user for using a service can be reduced.
次に、本発明の実施の形態について、詳細に説明する。
[第1の実施形態]
<システム構成>
図1は本実施形態に係るシステムの一例の構成図である。図1のシステム1は、例えばオフィス内ネットワーク等のネットワークN1と、クラウドサービスに代表されるようなサービス提供システムのネットワークN2と、クラウドサービスに代表されるような外部サービスのネットワークN3と、インターネットなどのネットワークN4とを有する。
Next, embodiments of the present invention will be described in detail.
[First Embodiment]
<System configuration>
FIG. 1 is a configuration diagram of an example of a system according to the present embodiment. 1 includes, for example, a network N1 such as an intra-office network, a network N2 of a service providing system typified by a cloud service, a network N3 of an external service typified by a cloud service, the Internet, etc. Network N4.
ネットワークN1は、ファイアウォールFWの内側にあるプライベートなネットワークである。ファイアウォールFWはネットワークN1とネットワークN4との接点に設置され、不正なアクセスを検出及び遮断する。ネットワークN1にはクライアント端末11、携帯端末12、複合機などの画像形成装置14、プロジェクタ15、電子黒板等のその他の機器16が接続されている。
The network N1 is a private network inside the firewall FW. The firewall FW is installed at the contact point between the network N1 and the network N4, and detects and blocks unauthorized access. The network N1 is connected to a
クライアント端末11は端末装置の一例である。クライアント端末11は一般的なOSなどが搭載された情報処理装置(コンピュータシステム)によって実現できる。クライアント端末11は無線による通信の手段または有線による通信の手段を有する。クライアント端末11は、タブレットPC、ノートPCなど、ユーザが操作可能な端末である。
The
携帯端末12は端末装置の一例である。携帯端末12は、無線による通信の手段または有線による通信の手段を有している。携帯端末12は、スマートフォンや携帯電話、タブレットPC、ノートPCなど、ユーザが携帯可能な端末である。
The
画像形成装置14は複合機などの画像形成機能を有する装置である。画像形成装置14は無線による通信の手段または有線による通信の手段を有する。画像形成装置14は複合機、コピー機、スキャナ、プリンタ、レーザプリンタなど、画像形成に係る処理を行う装置である。プロジェクタ15は画像を投影する装置である。プロジェクタ15は無線による通信の手段または有線による通信の手段を有する。
The
図1では、一例としてクライアント端末11、携帯端末12、画像形成装置14、プロジェクタ15、その他の機器16がそれぞれ一台である例を示しているが複数台であってもよい。
FIG. 1 shows an example in which the
ネットワークN2はアクセス制御装置21によってインターネット等のネットワークN4に接続されている。ネットワークN2はアクセス制御装置21によってセキュリティが保護されている。ネットワークN2にはプリントサービス提供装置22、スキャンサービス提供装置23、管理設定サービス提供装置24、他サービス提供装置25が接続されている。図1のシステム1は、アクセス制御装置21、プリントサービス提供装置22、スキャンサービス提供装置23、管理設定サービス提供装置24、他サービス提供装置25がサービス提供システムを実現している。
The network N2 is connected to a network N4 such as the Internet by an
アクセス制御装置21はプリントサービス提供装置22が提供するプリントサービスやスキャンサービス提供装置23が提供するスキャンサービス、管理設定サービス提供装置24が提供する管理設定サービスなど、各サービスへのログインを制御する。
The
アクセス制御装置21、プリントサービス提供装置22、スキャンサービス提供装置23、管理設定サービス提供装置24、他サービス提供装置25は、一台以上の情報処理装置(コンピュータシステム)によって実現される。
The
なお、図1のシステム1のプリントサービス提供装置22、スキャンサービス提供装置23、管理設定サービス提供装置24、他サービス提供装置25は一台のコンピュータに統合して実現してもよいし、複数のコンピュータに分散して実現してもよい。
Note that the print
ネットワークN3はアクセス制御装置31によってインターネット等のネットワークN4に接続されている。ネットワークN3はアクセス制御装置31によってセキュリティが保護されている。ネットワークN3には1つ以上の外部サービス提供装置32が接続されている。図1のシステム1は、アクセス制御装置31、外部サービス提供装置32が外部サービスシステムを実現している。
The network N3 is connected to a network N4 such as the Internet by an
アクセス制御装置31は、外部サービス提供装置32が提供する外部サービスへのログインを制御する。アクセス制御装置31、外部サービス提供装置32は、一台以上の情報処理装置(コンピュータシステム)によって実現される。なお、図1のシステム1の外部サービス提供装置32は、一台のコンピュータに統合して実現してもよいし、複数のコンピュータに分散して実現してもよい。
The
ネットワークN2側のサービスの一部はネットワークN2以外にあってもよい。携帯端末12は、オフィス内ネットワーク等のネットワークN1以外にあってもよい。図1のシステム1では携帯端末12がネットワークN1と、インターネットなどのネットワークN4とにある例を示している。また、図1のシステム1では外部サービスシステムが1つの例を示しているが複数であってもよい。
Some of the services on the network N2 side may be outside the network N2. The
図1のシステム1では、OAuthと呼ばれるAPI認可の標準的技術を利用しているものとする。サービス提供システムはOAuthのコンシューマ(Consumer)に相当する。外部サービスシステムはOAuthのサービスプロバイダ(Service Provider :SP)に相当する。
In the
外部サービスシステムがWebAPI(Application Programming Interface)を公開しているものとする。ユーザはWebAPIを通じて自身の権限の範囲内で、外部サービスシステムに保存されているリソースや、そのリソースを扱うサービスへのアクセスが可能である。 Assume that the external service system publishes a Web API (Application Programming Interface). A user can access a resource stored in an external service system and a service handling the resource within a range of his / her authority through the Web API.
また、サービス提供システムのプリントサービス提供装置22などは、ユーザから委譲された権限に基づく認可トークンを利用することで、ユーザから委譲された権限の範囲内で外部サービスシステムに保存されているリソースや、そのリソースを扱うサービスへのアクセスが可能となる。
Further, the print
<ハードウェア構成>
クライアント端末11、携帯端末12、アクセス制御装置21、プリントサービス提供装置22、スキャンサービス提供装置23、管理設定サービス提供装置24、他サービス提供装置25は、例えば図2に示すハードウェア構成のコンピュータシステムにより実現される。また、アクセス制御装置31、外部サービス提供装置32も、例えば図2に示すハードウェア構成のコンピュータシステムにより実現される。
<Hardware configuration>
The
図2は本実施形態に係るコンピュータシステムの一例のハードウェア構成図である。図2に示したコンピュータシステム500は、入力装置501、表示装置502、外部I/F503、RAM(Random Access Memory)504、ROM(Read Only Memory)505、CPU(Central Processing Unit)506、通信I/F507、及びHDD(Hard Disk Drive)508などを備え、それぞれがバスBで相互に接続されている。
FIG. 2 is a hardware configuration diagram of an example of a computer system according to the present embodiment. The
入力装置501はキーボードやマウス、タッチパネルなどを含み、ユーザが各操作信号を入力するのに用いられる。表示装置502はディスプレイなどを含み、コンピュータシステム500による処理結果を表示する。
The
通信I/F507はコンピュータシステム500をネットワークN1〜N4に接続するインタフェースである。これにより、コンピュータシステム500は通信I/F507を介してデータ通信を行うことができる。
The communication I /
HDD508はプログラムやデータを格納している不揮発性の記憶装置である。格納されるプログラムやデータには、例えばコンピュータシステム500全体を制御する基本ソフトウェアであるOS(Operating System)や、OS上において各種機能を提供するアプリケーションソフトウェアなどがある。HDD508は格納しているプログラムやデータを所定のファイルシステム及び/又はDB(データベース)により管理している。
The
外部I/F503は、外部装置とのインタフェースである。外部装置には、記録媒体503aなどがある。これにより、コンピュータシステム500は外部I/F503を介して記録媒体503aの読み取り及び/又は書き込みを行うことができる。記録媒体503aにはフレキシブルディスク、CD(Compact Disk)、DVD(Digital Versatile Disk)、SDメモリカード(SD Memory card)、USBメモリ(Universal Serial Bus memory)などがある。
The external I /
ROM505は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリ(記憶装置)である。ROM505には、コンピュータシステム500の起動時に実行されるBIOS(Basic Input/Output System)、OS設定、及びネットワーク設定などのプログラムやデータが格納されている。RAM504は、プログラムやデータを一時保持する揮発性の半導体メモリ(記憶装置)である。
The
CPU506は、ROM505やHDD508などの記憶装置からプログラムやデータをRAM504上に読み出し、処理を実行することで、コンピュータシステム500全体の制御や機能を実現する演算装置である。
The
クライアント端末11、携帯端末12、アクセス制御装置21、プリントサービス提供装置22、スキャンサービス提供装置23、管理設定サービス提供装置24、他サービス提供装置25は、コンピュータシステム500のハードウェア構成により、後述するような各種処理を実現できる。また、アクセス制御装置31、外部サービス提供装置32も、コンピュータシステム500のハードウェア構成により、後述するような各種処理を実現できる。
The
<ソフトウェア構成>
《サービス提供システム》
本実施形態に係るサービス提供システムは例えば図3に示す処理ブロックにより実現される。図3は本実施形態に係るサービス提供システムの一例の処理ブロック図である。図3のサービス提供システム50は、プログラムを実行することにより、サービスアプリ51、プラットフォーム52、管理データ記憶部53及びプラットフォームAPI(Application Programming Interface)54を実現している。
<Software configuration>
《Service provision system》
The service providing system according to the present embodiment is realized by, for example, the processing blocks shown in FIG. FIG. 3 is a processing block diagram of an example of the service providing system according to the present embodiment. The
図3のサービスアプリ51は、プリントサービスアプリ61、スキャンサービスアプリ62、管理設定サービスアプリ63、1つ以上のその他のサービスアプリ64を一例として有する。プリントサービスアプリ61はプリントサービスを提供するアプリケーションである。スキャンサービスアプリ62はスキャンサービスを提供するアプリケーションである。管理設定サービスアプリ63は管理設定サービスを提供するアプリケーションである。また、その他のサービスアプリ64は何らかのサービスを提供するアプリケーションである。
The
プラットフォームAPI54はプリントサービスアプリ61、スキャンサービスアプリ62、管理設定サービスアプリ63、その他のサービスアプリ64などのサービスアプリ51が、プラットフォーム52を利用するためのインタフェースである。プラットフォームAPI54はサービスアプリ51からの要求をプラットフォーム52が受信するために設けられた予め定義されたインタフェースであり、例えば関数やクラス等により構成される。なお、サービス提供システム50を複数の情報処理装置に分散して構成する場合、プラットフォームAPI54にはネットワーク経由で利用可能な例えばWeb APIを利用できる。
The
図3のプラットフォーム52は、認証処理部71、機器通信部72、セッション管理部73、データ処理部74を一例として有する。認証処理部71はクライアント端末11や画像形成装置14などのオフィス機器からのログイン要求に基づいて認証を実行する。オフィス機器は、クライアント端末11、携帯端末12、画像形成装置14、プロジェクタ15、その他の機器16などの総称である。機器通信部72はオフィス機器や外部サービスシステムとの通信を実行する。セッション管理部73は、オフィス機器や外部サービスシステムとのセッションを管理する。データ処理部74はサービスアプリ51からの要求に基づいてデータ処理を実行する。
3 includes an
管理データ記憶部53は組織管理情報記憶部81、ユーザ管理情報記憶部82、機器管理情報記憶部83、認可設定情報記憶部84、外部サービス情報記憶部85、認可トークン情報記憶部86、データ管理情報記憶部87、データストレージ88を一例として有する。
The management
組織管理情報記憶部81は、後述の組織管理情報を記憶する。ユーザ管理情報記憶部82は後述のユーザ管理情報を記憶する。機器管理情報記憶部83は後述の機器管理情報を記憶する。認可設定情報記憶部84は後述の認可設定情報を記憶する。外部サービス情報記憶部85は後述の外部サービス情報を記憶する。認可トークン情報記憶部86は後述の認可トークン情報を記憶する。データ管理情報記憶部87はデータ管理情報を記憶する。データストレージ88はその他のデータ等を記憶する。
The organization management
サービス提供システム50は、例えば認証や非同期変換といった機能を有するクラウド基盤と、クラウド基盤の機能を利用してプリントサービス等のサービス提供を行うサービス群と、各サービスの管理設定を行う管理設定サービスとして機能する。
The
クラウド基盤は、例えばプラットフォーム52、管理データ記憶部53、プラットフォームAPI54によって構成される。サービス群は例えばサービスアプリ51によって構成される。管理設定サービスは例えば管理設定サービスアプリ63によって構成される。
The cloud platform is configured by, for example, a
サービス提供システム50のクラウド基盤が有する認証の機能は、例えば認証処理部71と、認証用データベースにより構成される。認証用データベースは組織管理情報記憶部81、ユーザ管理情報記憶部82、機器管理情報記憶部83、認可設定情報記憶部84、外部サービス情報記憶部85、認可トークン情報記憶部86などにより構成される。
The authentication function of the cloud platform of the
また、サービス提供システム50のクラウド基盤が有する非同期変換の機能は、例えばデータ処理部74と、データ管理情報記憶部87と、データストレージ88により構成される。
The asynchronous conversion function of the cloud platform of the
サービスアプリ51などのサービス群はサービス提供システム50のクラウド基盤が有する認証や非同期変換といった機能を利用し、サービスの提供を行う。また、サービス群は外部サービスシステムの機能と連携してサービスを提供する場合、クラウド基盤が有する認証の機能を介して、外部サービスシステムにアクセスするための認可トークンを取得する。
A service group such as the
管理設定サービスアプリ63が行う管理設定には認可処理の管理設定が含まれる。管理設定サービスアプリ63は認可手続きを行う為のUIを備える。管理設定サービスアプリ63は認証処理部71と連携し、後述の認可設定情報を登録する。
The management settings performed by the management
なお、外部サービスシステムはサービス提供システム50以外のシステムであり、クラウドサービスなどのサービスを提供する。本実施例では外部サービスシステムが提供するサービス(機能)を外部サービスと呼んでいる。外部サービスにはクラウドサービスとして提供されているオンラインストレージサービス、スキャン文書の保管・管理サービスなどが含まれる。
The external service system is a system other than the
外部サービスシステムはサービス提供システム50の認証処理部71からの要求に応じて認可トークンを発行する認可サーバとしての機能を有する。また、外部サービスシステムはWebAPIが整備されている。外部サービスシステムのWebAPIは認可トークンを利用した処理の要求を受け付け、サービス提供システム50のサービスアプリ51にサービスを提供するために利用される。
The external service system has a function as an authorization server that issues an authorization token in response to a request from the
図3のサービス提供システム50は認可クライアントとしての機能を認証処理部71が有することで、複数のサービスアプリ51が共通に利用する組織管理情報、ユーザ管理情報、機器管理情報、認可設定情報、外部サービス情報、認可トークン情報を一元管理することができ、セキュリティ性の向上と共に管理コストを低減できる。
The
また、サービス提供システム50は認可設定情報、外部サービス情報、認可トークンなどの認可情報の管理処理と、認可処理とを認証処理部71に一元化することで、ユーザによる一度の認可手続きにより、サービスアプリ51によらず、複数のサービスを連携させる様々なマッシュアップサービスを提供できる。
In addition, the
なお、図3のサービス提供システム50は組織管理情報、ユーザ管理情報、機器管理情報、認可設定情報、外部サービス情報など、永続的に保存が必要となる情報を例えばHDD508に保存する。また、図3のサービス提供システム50は認可トークン情報など有効期限が決まっており、組織管理情報、ユーザ管理情報、機器管理情報、認可設定情報、外部サービス情報などの他の情報よりライフサイクルが短い情報を、HDD508に替えて例えばRAM504に(オンメモリ上に)保存してもよい。オンメモリ上に保存することで、認可トークン情報の読み出し/書き込みは高速になり、レスポンスが高速化する。
Note that the
《管理設定サービスアプリ63》
管理設定サービスアプリ63は、例えば図4に示す処理ブロックにより実現される。図4は本実施形態に係る管理設定サービスアプリの一例の処理ブロック図である。管理設定サービスアプリ63はコンピュータシステム500を、画面処理部101、情報登録要求部102として機能させる。
<< Management
The management
画面処理部101は管理設定情報を設定させる管理者向けの設定画面の生成など、画面に関する処理を行う。情報登録要求部102は画面処理部101が生成した設定画面などの画面に入力された情報の登録を認証処理部71に要求する。
The
《認証処理部71》
認証処理部71は例えば図5に示す処理ブロックにより実現される。図5は本実施形態に係る認証処理部の一例の処理ブロック図である。認証処理部71は、認証部111、情報登録部112、リダイレクト要求部113、認可トークン取得部114、認可トークン保存部115、認可トークン提供部116を有する。
<<
The
認証部111は認証の要求を受け付け、認証チケットを発行する。情報登録部112は情報登録の要求を受け付け、情報を登録する。リダイレクト要求部113は管理者が操作するクライアント端末11などのオフィス機器に所定の画面に対するリダイレクトを要求する。認可トークン取得部114は認可設定情報記憶部84に記憶されている認可設定情報及び外部サービス情報記憶部85に記憶されている外部サービス情報を利用して、外部サービスシステムから認可トークンを取得する。認証トークン保存部115は外部サービスシステムから取得した認可トークンを、認可トークン情報記憶部86に保存する。
The
認可トークン提供部116は認可トークン取得の要求を受け付け、認可トークン情報記憶部86に提供できる認可トークンがあれば提供する。なお、認可トークン提供部116は提供できる認可トークンが無ければ、認可トークンの取得を認可トークン取得部114に要求し、取得した認可トークンを提供する。
The authorization
《サービスアプリ51》
サービスアプリ51は、例えば図6に示す処理ブロックにより実現される。図6は本実施形態に係るサービスアプリの一例の処理ブロック図である。サービスアプリ51はコンピュータシステム500を、認証要求部121、画面処理部122、認可トークン取得要求部123、処理要求部124として機能させる。
<<
The
認証要求部121は認証処理部71に認証を要求する。画面処理部122はログイン画面の生成など、画面に関する処理を行う。認可トークン取得要求部123は外部サービスシステムのWebAPIを利用するために必要となる認可トークンの取得を、認証処理部71に要求する。処理要求部124は認可トークンを利用し、外部サービスシステムのWebAPIに処理を要求する。処理要求部124はデータ処理部74に非同期変換などの非同期処理を要求することもできる。
The
《データ処理部74》
データ処理部74は例えば図7に示す処理ブロックにより実現される。図7は本実施形態に係るデータ処理部の一例の処理ブロック図である。データ処理部74は、非同期Front(フロント)部131、非同期Worker(ワーカ)部132を有する。
<<
The
非同期Front部131はサービスアプリ51から非同期処理の要求をジョブとして受け付け、データ管理情報記憶部87にジョブとして保存する。データ管理情報記憶部87はメッセージキューとして機能する。
The asynchronous
非同期Worker部132はデータ管理情報記憶部87から順次、ジョブを取得して非同期処理を実行する。外部サービスシステムを利用する場合、非同期Worker部132は認証処理部71に外部サービスシステムの認可トークンを要求し、認可トークンを取得する。
The
《管理データ》
図8は組織管理情報の一例の構成図である。図8の組織管理情報はデータ項目としてid、組織ID、組織名などを有する。idは組織管理情報のレコードを一意に特定する情報である。組織IDは、企業、部署などの組織を一意に特定する情報である。組織IDは組織という言語に限定されるものでなく、例えば契約を識別する情報であってもよい。サービス提供システム50は提供する各種サービスを組織ID単位で管理する。よって組織が利用する各サービスは組織IDに紐付けて登録され、組織のユーザは組織IDに紐付けて登録されたサービスを利用することが出来る。従って組織IDは、サービス提供システム50がサービスを提供するサービス提供対象を管理するサービス提供対象管理情報としての役割を持つ。組織名は組織の名称である。
<Management data>
FIG. 8 is a configuration diagram of an example of organization management information. The organization management information in FIG. 8 has id, organization ID, organization name, etc. as data items. id is information that uniquely identifies a record of organization management information. The organization ID is information that uniquely identifies an organization such as a company or a department. The organization ID is not limited to the language of organization, and may be information for identifying a contract, for example. The
図9はユーザ管理情報の一例の構成図である。図9のユーザ管理情報はデータ項目としてid、組織ID、ユーザID、パスワード、ユーザ名などを有する。idはユーザ管理情報のレコードを一意に特定する情報である。ユーザID、パスワードはサービス提供システム50の認証基盤においてユーザを特定する情報である。ユーザ名はユーザの名前である。パスワードは必須でない。
FIG. 9 is a configuration diagram of an example of user management information. The user management information in FIG. 9 has id, organization ID, user ID, password, user name, etc. as data items. id is information for uniquely identifying a record of user management information. The user ID and password are information for identifying the user in the authentication infrastructure of the
さらに、ユーザIDはユーザが所持する電子媒体(例えばICカード)の識別番号などを代わりに用いてもよい。組織IDと対応付けられたユーザID、パスワードは一意であるが、組織IDが異なれば重複していてもよい。 Further, as the user ID, an identification number of an electronic medium (for example, an IC card) possessed by the user may be used instead. The user ID and password associated with the organization ID are unique, but may be duplicated if the organization ID is different.
図10は機器管理情報の一例の構成図である。図10の機器管理情報はデータ項目としてid、組織ID、デバイス認証情報、事業所情報、ケーパビリティなどを有する。idは機器管理情報のレコードを一意に特定する情報である。デバイス認証情報はオフィス機器が特定の条件を備えたものであることを判別するデバイス認証のための情報である。デバイス認証情報は特定のアプリケーションが搭載されていることを示すIDや、特定の機器であることを示す機器番号などであってもよい。事業所情報は例えばオフィス機器が設置されている事業所を表している。また、ケーパビリティは例えばオフィス機器の能力を表している。 FIG. 10 is a configuration diagram of an example of the device management information. The device management information in FIG. 10 has data items such as id, organization ID, device authentication information, business office information, and capabilities. id is information for uniquely identifying a record of device management information. The device authentication information is information for device authentication that determines that the office device has a specific condition. The device authentication information may be an ID indicating that a specific application is installed, a device number indicating a specific device, or the like. The office information represents, for example, an office where office equipment is installed. The capability represents, for example, the capability of office equipment.
図11は認可設定情報の一例の構成図である。図11の認可設定情報は、データ項目として認可設定情報ID、外部サービスID(SP_ID)、スコープ、クライアントID、リフレッシュトークン、組織ID、ユーザIDなどを有する。 FIG. 11 is a configuration diagram of an example of the authorization setting information. The authorization setting information in FIG. 11 includes an authorization setting information ID, an external service ID (SP_ID), a scope, a client ID, a refresh token, an organization ID, a user ID, and the like as data items.
認可設定情報IDは、認可設定情報のレコードを一意に特定する情報である。外部サービスIDは外部サービスシステムを一意に特定する情報である。スコープは外部サービスシステムのサービス範囲を特定する情報である。クライアントIDはサービス提供システム50のサービス群を特定する情報である。クライアントIDは事前に外部サービスシステムによって発行される。リフレッシュトークンは認可トークンを再発行する為に必要なトークンである。
The authorization setting information ID is information that uniquely identifies a record of authorization setting information. The external service ID is information that uniquely identifies the external service system. The scope is information for specifying the service range of the external service system. The client ID is information that identifies a service group of the
図12は外部サービス情報の一例の構成図である。図12の外部サービス情報は、データ項目として外部サービスID、クライアントID、クライアントシークレット、プロダクト名、認可サーバURL、リダイレクト先URLなどを有する。 FIG. 12 is a configuration diagram of an example of external service information. The external service information in FIG. 12 includes data items such as an external service ID, a client ID, a client secret, a product name, an authorization server URL, and a redirect destination URL.
クライアントシークレットはクライアントIDの本人性を保証する為のパスワード的な存在としての秘密情報である。プロダクト名はクライアントIDと紐付ける形で事前に登録された、サービスアプリ51を特定する情報である。認可サーバURLは管理者による認可判断前にリダイレクトされる先のURL(外部サービスシステムの認可サーバとしての機能のURL)である。リダイレクト先URLは認可判断後にリダイレクトされる先のURL(認証処理部71の認可クライアントとしての機能のURL)である。
The client secret is secret information as a password existence for guaranteeing the identity of the client ID. The product name is information specifying the
図13は認可トークン情報の一例の構成図である。図13の認可トークン情報はデータ項目としてid、組織ID、ユーザID、外部サービスID、スコープ、認可トークン、有効期限などを有する。idは、認可トークン情報のレコードを一意に特定する情報である。認可トークンは外部サービスシステムから取得したアクセストークンである。有効期限は認可トークンの有効期限である。 FIG. 13 is a configuration diagram of an example of authorization token information. The authorization token information in FIG. 13 includes data items such as id, organization ID, user ID, external service ID, scope, authorization token, and expiration date. id is information that uniquely identifies a record of authorization token information. The authorization token is an access token acquired from the external service system. The expiration date is the expiration date of the authorization token.
<処理の詳細>
以下では、本実施形態に係るシステム1の処理の詳細について説明する。
<Details of processing>
Below, the detail of the process of the
《認可設定情報の登録及び認可トークン情報の保存》
図14は認可設定情報の登録及び認可トークン情報の保存の処理手順の一例を表したシーケンス図である。ステップS1において、認証処理部71は管理者の操作するクライアント端末11などのオフィス機器から組織ID、ユーザID、パスワードなどのアカウント情報を用いたログイン要求を受け付ける。
<< Registration of authorization setting information and storage of authorization token information >>
FIG. 14 is a sequence diagram illustrating an example of a processing procedure for registering authorization setting information and storing authorization token information. In step S1, the
認証処理部71は組織ID、ユーザID、パスワードなどのアカウント情報を用いた認証の要求を受け付けると、ユーザ管理情報記憶部82に記憶されているユーザ管理情報を参照し、そのアカウント情報の認証を行う。アカウント情報の認証に成功すると認証処理部71は管理者の認証チケット(管理者チケット)を生成する。
When the
ステップS2において、認証処理部71はログイン要求元であるオフィス機器に管理者チケットを返す。以後、オフィス機器は認証チケットを用いることでサービス提供システム50の機能が利用可能となる。なお、認証処理部71は管理者チケットとアカウント情報とを紐付けて管理する。
In step S2, the
ステップS3において、管理設定サービスアプリ63は管理者の操作するオフィス機器から管理者チケットを用いた設定画面の表示要求を受け付ける。管理設定サービスアプリ63は管理者チケットから設定画面の表示要求元が管理者であることを識別する。管理設定サービスアプリ63はステップS4において、管理者向けの設定画面を、管理者の操作するオフィス機器に表示させる。管理者向けの設定画面には、登録が可能な認可設定情報が表示される。
In step S3, the management
ステップS5において、管理者はオフィス機器を操作し、管理者向けの設定画面から認可設定を適用させたいユーザのユーザID、利用したい外部サービスの外部サービスID及びスコープを選択する。ステップS6において、管理設定サービスアプリ63は管理者によって選択された認可設定情報の登録要求を認証処理部71に対して行う。
In step S5, the administrator operates the office device and selects the user ID of the user to whom the authorization setting is to be applied, the external service ID of the external service to be used, and the scope from the setting screen for the administrator. In step S <b> 6, the management
ステップS7において、認証処理部71は登録要求のあった認可設定情報に認可設定情報IDを採番し、認可設定情報を認可設定情報記憶部84に登録する。ステップS8及びS9において、管理者の操作するオフィス機器にはリターンとして認可設定情報IDが返される。なお、管理設定サービスアプリ63は認証処理部71に問い合わせることで認可設定情報IDを取得し、オフィス機器に提供するようにしてもよい。
In step S <b> 7, the
ステップS10において、管理者はオフィス機器を操作し、管理者チケット、対象とするユーザのユーザID、認可設定情報IDを用いて、認証処理部71に認可手続きの要求を行う。
In step S10, the administrator operates the office device and requests an authentication procedure from the
ステップS11において、認証処理部71は認可手続きの要求に含まれるユーザID及び認可設定情報IDをキーとし、認可設定情報記憶部84に記憶されている認可設定情報及び外部サービス情報記憶部85に記憶されている外部サービス情報から認可に必要なパラメータの少なくとも一部を取得する。
In step S11, the
認可に必要なパラメータとしては、外部サービスID、スコープ、サービスアプリ51を一意に識別するクライアントID、管理者による認可判断後にリダイレクトされる先のリダイレクト先URL、セッションを維持する為の任意のセッションキーなどがある。ステップS12において、認証処理部71は外部サービス情報記憶部85に記憶されている外部サービス情報から認可サーバURLを取得し、認可に必要なパラメータをGETリクエストのクエリとして認可サーバURLにリダイレクトさせる。
Parameters required for authorization include an external service ID, a scope, a client ID that uniquely identifies the
なお、セッションを維持する為の任意のセッションキーは以下の理由により必要なものである。管理者が認可を下す認可画面は外部サービスシステムによって表示される。認証処理部71は管理者による認可判断後にリダイレクトされるため、HTTPレベルでのセッションが途切れることになる。認証処理部71は認可コードを取得するための一連の流れを同一セッション内で実施するため、任意のセッションキーを利用している。
An arbitrary session key for maintaining a session is necessary for the following reason. An authorization screen for authorization by the administrator is displayed by the external service system. Since the
なお、OAuthは仕組み上、任意のセッションキーを指定可能なプロトコルとなっている。本実施形態のシステム1では、セッションキーに認可設定情報IDを指定することでリダイレクトされた際に認可設定情報IDが渡されるため、管理者が認可したユーザ及び認可内容が分かるようになっている。
Note that OAuth is a protocol that allows an arbitrary session key to be specified because of its mechanism. In the
リダイレクトされた外部サービスシステムは、要求元の管理者が登録済みのユーザであることを検証するため、cookie情報などから管理者チケットを確認する。例えば管理者が既に外部サービスシステムにログイン済みの場合は、ブラウザに管理者チケットがキャッシュされているため、管理者チケットが存在する。一方、管理者が外部サービスシステムに未ログインの場合、管理者チケットは存在しない。この場合、外部サービスシステムは図15に示すようなログイン画面1000を、管理者の操作するオフィス機器に表示してログインを促す。
The redirected external service system confirms the administrator ticket from the cookie information or the like in order to verify that the requesting administrator is a registered user. For example, when the administrator has already logged in to the external service system, the administrator ticket exists because the administrator ticket is cached in the browser. On the other hand, when the administrator has not logged in to the external service system, there is no administrator ticket. In this case, the external service system prompts login by displaying a
図15はログイン画面の一例のイメージ図である。図15のログイン画面1000は外部サービスのユーザIDの一例としてのメールアドレス、外部サービスのパスワードを入力させる欄1001と、ログインボタン1002とを有する。管理者はオフィス機器を操作し、ログイン画面1000の欄1001を入力した後でログインボタン1002を押下する。
FIG. 15 is an image diagram of an example of a login screen. The
ログインボタン1002が押下されると、管理者の操作するオフィス機器はステップS13において、外部サービスのユーザID、パスワードを用いて外部サービスシステムにログインを要求する。ログインに成功すると、外部サービスシステムはステップS14において、ログイン済みの管理者が操作するオフィス機器に、図16に示すような認可画面1010を表示して認可判断を促す。なお、ステップS13の処理は管理者がログイン済みの場合に省略される。
When the
管理者はクライアントIDに紐付ける形で事前に認可設定情報又は外部サービス情報の一部として登録されたプロダクト名及びスコープから、認可する対象が何かを確認し、認可の判定を行う。認可する場合、管理者は認可画面1010の認可ボタン1011を押下する。
The administrator confirms what is to be authorized from the product name and scope registered in advance as a part of the authorization setting information or external service information in a form associated with the client ID, and determines authorization. In the case of authorization, the administrator presses the authorization button 1011 on the
認可ボタン1011が押下されると、管理者の操作するオフィス機器はステップS15において、クライアントID、スコープ、リダイレクト先URL、ユーザID、認可設定情報IDを用いて外部サービスシステムに認可の決定を通知する。認可の決定が通知されると、外部サービスシステムはステップS16において、認可が認められたことを示す認可コードと、セッションキーの一例としての認可設定情報IDとをクエリに付けてリダイレクト先URLにリダイレクトさせる。 When the authorization button 1011 is pressed, the office device operated by the administrator notifies the external service system of authorization determination using the client ID, scope, redirect destination URL, user ID, and authorization setting information ID in step S15. . When the authorization decision is notified, the external service system redirects to the redirect destination URL in step S16 by attaching an authorization code indicating that authorization is authorized and an authorization setting information ID as an example of a session key to the query. Let
ステップS17において、管理者の操作するオフィス機器は認可判断後のリダイレクト先であるリダイレクト先URLに対して、管理者チケット、認可コード、認可設定情報IDを送信する。なお、図14ではリダイレクト先URLが認証処理部71である例を示している。
In step S17, the office device operated by the administrator transmits the administrator ticket, the authorization code, and the authorization setting information ID to the redirect destination URL that is the redirect destination after the authorization determination. FIG. 14 shows an example in which the redirect destination URL is the
ステップS18において、認証処理部71は認可設定情報IDをキーとし、認可設定情報記憶部84に記憶されている認可設定情報及び外部サービス情報記憶部85に記憶されている外部サービス情報から認可トークン(図14中のアクセストークン)の取得に必要なパラメータの少なくとも一部を取得する。例えばステップS18において、認証処理部71はユーザID、外部サービスID、クライアントID、クライアントシークレットを取得する。なお、認可トークンの取得に必要なパラメータとしては、例えばクライアントID、クライアントシークレット、認可コードなどがある。
In step S18, the
ステップS19において、認証処理部71は外部サービスシステムのWebAPIにアクセスする為に必要な認可トークンを外部サービスシステムから取得するため、クライアントID、クライアントシークレット、クエリとして付与された認可コードを、リクエスト情報として外部サービスシステムに送信する。ステップS20において、外部サービスシステムは認可コードを検証し、認可トークン、リフレッシュトークン、有効期限を認証処理部71に対して発行し、認証処理部71に提供する。
In step S19, the
なお、認可トークンはWebAPIにアクセスするために必要なトークンである。一般的に認可トークンは有効期限が設定されており、有効期限が切れるとWebAPIにアクセスできなくなる。リフレッシュトークンは認可トークンを再発行するために必要なトークンである。 The authorization token is a token necessary for accessing the WebAPI. Generally, an authorization token has an expiration date, and when the expiration date expires, the Web API cannot be accessed. The refresh token is a token necessary for reissuing the authorization token.
ステップS21において、認証処理部71は外部サービスシステムから提供された認可トークン及び有効期限をユーザ情報(組織ID、ユーザID)及び外部サービスIDと紐付ける形で、認可トークン情報記憶部86に認可トークン情報として保存する。また、認証処理部71はリフレッシュトークンをユーザ情報及び外部サービスIDと紐付ける形で認可設定情報記憶部84に記憶されている認可設定情報に保存する。そして、ステップS22において、認証処理部71は管理設定サービスアプリ63のURLに対し、ユーザIDと認可結果を表す値とをクエリとしてリダイレクトさせる。
In step S21, the
ステップS23において、管理者の操作するオフィス機器は管理設定サービスアプリ63のURLに対し、管理者チケット、企業ID、ユーザID、認可結果を表す値を送信して結果画面の表示を要求する。ステップS24において、管理設定サービスアプリ63は管理者の操作するオフィス機器に結果画面を表示させる。
In step S23, the office device operated by the administrator sends a value representing the administrator ticket, company ID, user ID, and authorization result to the URL of the management
《外部サービスの利用》
図17は外部サービスを利用する処理手順の一例を表したシーケンス図である。図17のシーケンス図は、サービスアプリ51が認可トークンを取得して、外部サービスを利用する処理を示している。
<< Use of external services >>
FIG. 17 is a sequence diagram illustrating an example of a processing procedure using an external service. The sequence diagram of FIG. 17 illustrates a process in which the
サービスアプリ51はユーザの操作するクライアント端末11などのオフィス機器から組織ID、ユーザID、パスワードなどのアカウント情報を用いたログイン要求を受け付ける。ステップS31において、サービスアプリ51は受け付けたログイン要求に含まれる組織ID、ユーザID、パスワードを用いて認証処理部71に認証を要求する。
The
認証処理部71は組織ID、ユーザID、パスワードなどのアカウント情報を用いた認証の要求を受け付けると、ユーザ管理情報記憶部82に記憶されているユーザ管理情報を参照し、そのアカウント情報の認証を行う。アカウント情報の認証に成功すると認証処理部71はユーザの認証チケットを生成する。ステップS32において、認証処理部71はサービスアプリ51に認証チケットを返す。サービスアプリ51はログイン要求元のオフィス機器に認証チケットを返す。
When the
以後、オフィス機器は認証チケットを用いることでサービス提供システム50の機能が利用可能となる。なお、認証処理部71は認証チケットとユーザ情報とを紐付けて管理する。
Thereafter, the office device can use the function of the
ステップS33において、サービスアプリ51はユーザの操作するオフィス機器から外部サービスとの連携要求を受け付ける。ステップS33において、サービスアプリ51は例えば図18に示すような外部サービス連携要求画面を生成し、ユーザの操作するオフィス機器に外部サービス連携要求画面を表示させる。
In step S33, the
図18は外部サービス連携要求画面の一例のイメージ図である。図18の外部サービス連携要求画面1030は、一例としてファイルアップロード連携画面を示している。外部サービス連携要求画面1030は、連携する外部サービスをユーザに選択させるラジオボタン1031と、アップロードボタン1032とを有する。ユーザはオフィス機器を操作して、連携する外部サービスを選択した後でアップロードボタン1032を押下する。
FIG. 18 is an image diagram of an example of an external service cooperation request screen. The external service
図18の外部サービス連携要求画面1030では、ユーザが連携する外部サービスを選択する例を表している。アップロードボタン1032が押下されると、サービスアプリ51は図17のステップS34以降の処理を開始する。ステップS14において、サービスアプリ51は外部サービス連携要求画面1030から選択された外部サービスの外部サービスIDと、ステップS32で取得した認証チケットとを用いて認証処理部71に認可トークンの取得を要求する。
The external service
ステップS35において、認証処理部71は、認可トークンの取得の要求に含まれる認証チケットを用いて、認証チケットに紐付くユーザ情報を取得する。ステップS36において認証処理部71は、認証チケットに紐付くユーザ情報と、外部サービス連携要求画面1030からユーザにより選択された外部サービスの外部サービスIDと、に紐付く認可トークンの取得を認可トークン情報記憶部86に要求する。
In step S35, the
ユーザ情報と外部サービスIDとに紐付く認可トークンが認可トークン情報記憶部86に保存されていれば、ステップS37において、認証処理部71は認可トークン情報記憶部86から認可トークン及び有効期限を取得する。
If the authorization token associated with the user information and the external service ID is stored in the authorization token
一方、ユーザ情報と外部サービスIDとに紐付く認可トークンが認可トークン情報記憶部86に保存されていなければ、ステップS37において、認証処理部71は認可トークン情報記憶部86から該当する認可トークンが無いことを示すfalseを受信する。
On the other hand, if the authorization token associated with the user information and the external service ID is not stored in the authorization token
認証処理部71は認可トークン情報記憶部86から有効期限内の認証トークンを取得すると、ステップS43において、認可トークンの取得の要求元のサービスアプリ51に認可トークンを提供する。
When the
一方、認証処理部71は認可トークン情報記憶部86から有効期限内の認証トークンを取得できなければ、ステップS38において、認可トークンの取得を認可トークン取得部114に要求する。
On the other hand, if the
ステップS39において、認可トークン取得部114はユーザ情報と外部サービスIDとに紐付くリフレッシュトークンを認可設定情報記憶部84から取得する。認可トークン取得部114はリフレッシュトークンを用いて、外部サービスシステムに認可トークンを要求する。
In step S <b> 39, the authorization
ステップS40において、認可トークン取得部114は外部サービスシステムから認可トークンと有効期限とを取得する。ステップS41において、認可トークン取得部114は外部サービスシステムから取得した認可トークンと有効期限とを認証処理部71に提供する。
In step S40, the authorization
ステップS42において、認証処理部71は認可トークン取得部114から提供された認可トークンと有効期限とを、ユーザ情報、外部サービスIDに紐付けて認可トークン情報記憶部86に保存する。その後、ステップS43において、認証処理部71は認可トークンの取得の要求元のサービスアプリ51に認可トークンを提供する。そして、ステップS44以降において、サービスアプリ51は提供された認可トークンを用いて外部サービスシステムのWebAPIに処理を要求できる。
In step S42, the
なお、同一のユーザ情報及び外部サービスIDに紐付けられた認可トークンは異なるサービスアプリ51間で共有できるため、外部サービスシステムとのセッション情報を削減することができ、外部サービスシステムに与える負荷も下げることができる。
Since the authorization token associated with the same user information and external service ID can be shared between
《非同期処理と外部サービスシステムとの連携》
図19は非同期処理と外部サービスシステムとが連携する処理手順の一例を表したシーケンス図である。図19のシーケンス図は、データ処理部74の非同期Worker部132が行う非同期処理の一例としてのOCR変換処理を行った後、外部サービスシステムにアップロードする処理を示している。
<< Cooperation between asynchronous processing and external service system >>
FIG. 19 is a sequence diagram illustrating an example of a processing procedure in which asynchronous processing and an external service system cooperate. The sequence diagram of FIG. 19 shows a process of uploading to an external service system after performing an OCR conversion process as an example of an asynchronous process performed by the
図19に示すように非同期処理の一例としてのOCR変換処理を行った後、外部サービスシステムを利用する場合は、非同期Worker部132に外部サービスシステムとのやり取りを依存する。通常、サービスアプリ51が認証処理部71から外部サービスの認可トークンを取得する場合は、認証処理部71の認証チケットが必要となる。
As shown in FIG. 19, when the external service system is used after performing the OCR conversion process as an example of the asynchronous process, the
しかし、非同期処理の場合は非同期Worker部132が認証チケットを用いて認証処理部71に外部サービスの認可トークンの取得を要求したとき、認証チケットが期限切れの可能性があった。そこで、本実施形態のサービス提供システム50では非同期Worker部132を信頼し、外部サービスの認可トークンの取得の要求の際の認証チケットを不要としている。
However, in the case of asynchronous processing, when the
例えば認証処理部71と非同期Worker部132とを同一ネットワークに配置することで、非同期Worker部132を信頼する。同一ネットワークに配置された非同期Worker部132であるか否かは例えばIPアドレスによって判断できる。また、認証処理部71と非同期Worker部132との信頼関係の構築にはネットワーク制御の他に、ベーシック認証などの認証機能の導入も考えられる。
For example, by placing the
例えばOCR変換処理後に外部サービスシステムへアップロードする処理をユーザから要求されると、サービスアプリ51はステップS51において、ユーザ情報、外部サービスID、ジョブ情報を用いてOCR変換処理後に外部サービスシステムへアップロードする処理を非同期Front部131に要求する。
For example, when the user requests a process for uploading to the external service system after the OCR conversion process, the
ステップS52において、非同期Front部131はサービスアプリ51から要求のあったOCR変換処理後に外部サービスシステムへアップロードする処理をジョブとしてデータ管理情報記憶部87に登録する。
In step S52, the asynchronous
非同期処理を行う非同期Worker部132はデータ管理情報記憶部87に登録されたジョブを順次取得して処理する。ステップS53において、非同期Worker部132はデータ管理情報記憶部87に登録されていたOCR変換処理後に外部サービスシステムへアップロードする処理のジョブを取得する。
The
ステップS55において、非同期Worker部132はジョブ情報により指定されているデータをデータストレージ88から読み出し、OCR変換処理を行う。ステップS56において、非同期Worker部132はユーザ情報、外部サービスIDを用いて、認証処理部71に認可トークンの取得を要求する。
In step S55, the
ステップS57において、認証処理部71はユーザ情報、外部サービスIDに紐付く認可トークンの取得を認可トークン情報記憶部86に要求する。ステップS58において、認証処理部71はユーザ情報、外部サービスIDに紐付く認可トークンを取得する。ステップS59において、認証処理部71はユーザ情報、外部サービスIDに紐付く認可トークンを非同期Worker部132に提供する。
In step S57, the
そして、ステップS60において、非同期Worker部132は認証処理部71から提供された認可トークンを用いて、外部サービスシステムにOCR変換処理後のデータをアップロードできる。
In step S60, the
<まとめ>
本実施形態に係るシステム1は、例えば以下の4つの問題点を解決できる。
<Summary>
The
第一の問題点として、従来は外部サービスシステム側が認可画面1010を表示するために、UIを有するサービスアプリ51それぞれがOAuth認証のクライアント機能を持つことが多かった。よって、従来はサービスアプリ51毎にOAuth認証の認証処理を行う必要があり、サービスアプリ51が個別にセキュリティデータを管理していた。
As a first problem, conventionally, since the external service system side displays the
このため、従来はOAuth認証に対応したサービスアプリ51の増加によりセキュリティデータが分散し、セキュリティが低下するという問題があった。また、従来はサービスアプリ51が個別にセキュリティ対策を行わなければならず、管理コストが増大する問題があった。
For this reason, there has conventionally been a problem that security data is dispersed due to an increase in the number of
本実施形態に係るシステム1は一箇所にOAuth認証のクライアント機能を集約させることで、セキュリティデータを一元管理でき、セキュリティ性の向上と共に管理コストを低減できる。
The
第二の問題点として、従来はスコープがサービスアプリ51毎に異なるため、サービスアプリ51毎にOAuth認証の認可処理を行わなければならず、ユーザビリティが低下する問題があった。
As a second problem, conventionally, since the scope is different for each
本実施形態に係るシステム1は認可設定情報、外部サービス情報、認可トークンなどの認可情報の管理処理と、認可処理とを認証処理部71に一元化することで、管理者による一度の認可手続きによりサービスアプリ51の種別に依らず様々なマッシュアップサービスを利用できる。
The
第三の問題点として、従来はOAuth認証のプロトコル上、HTMLのUIを表示できないオフィス機器(デバイス)から認可処理が行えず、HTMLのUIが無いデバイスからマッシュアップサービスを利用できなかった。 As a third problem, conventionally, authorization processing cannot be performed from an office device (device) that cannot display an HTML UI in accordance with the OAuth authentication protocol, and a mashup service cannot be used from a device that does not have an HTML UI.
本実施形態に係るシステム1は認可処理と、外部サービスを利用する処理とを分離したことで、HTMLのUIが無いデバイスからも利用できる。
The
第四の問題点として、従来は、企業の管理者が企業のユーザに指定の外部サービスシステムの共有リソースにアクセスさせたい場合、ユーザ本人が指定の外部サービスシステムのアカウントを持ち、ユーザ本人によって認可手続きを行わなければならなかった。 As a fourth problem, conventionally, when a company administrator wants a company user to access a shared resource of a designated external service system, the user himself / herself has a designated external service system account and is authorized by the user himself / herself. I had to go through the procedure.
本実施形態に係るシステム1は管理者がユーザの認可手続きを代行できるので、指定の外部サービスシステムのみへアクセスを許すような管理が可能となる。例えば本実施形態に係るシステム1は管理ポリシーに沿った認可トークンをユーザに使わせることが可能になる。
In the
このように、本実施形態に係るシステム1は、マルチテナント型アプリケーションにおいてもOAuth認証のクライアント機能を集約することで、システムとしての複雑さを軽減することができ、管理コストを抑えることができる。また、本実施形態に係るシステム1はセキュリティデータの一元管理がし易く、セキュリティ性を向上できる。
As described above, the
また、本実施形態に係るシステム1は、ユーザによる認可手続きの回数を減らすことによりユーザビリティを向上できる。また、本実施形態に係るシステム1はUIが無いデバイスからもマッシュアップサービスを容易に利用できる。さらに、本実施形態に係るシステム1は管理者がユーザの認可手続きを代行することができるので、ユーザに予め決められたリソースのみへのアクセスを許すような管理も可能となる。
Further, the
本発明は、具体的に開示された上記の実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。 The present invention is not limited to the specifically disclosed embodiments, and various modifications and changes can be made without departing from the scope of the claims.
なお、特許請求の範囲に記載した第一のサービス提供システムはサービス提供システム50に相当し、第二のサービス提供システムは外部サービスシステムに相当する。サービス提供装置はサービス提供システム50に相当する。認可後の権限情報は認可トークンに相当する。認可後の権限情報を再発行する為に必要な情報はリフレッシュトークンに相当する。
The first service providing system described in the claims corresponds to the
接続先変更手段はリダイレクト要求部113に相当し、権限情報取得手段は認可トークン取得部114に相当し、権限情報提供手段は認可トークン提供部116に相当し、権限情報保存手段は認証トークン保存部115に相当する。第一の記憶手段は認可設定情報記憶部84、外部サービス情報記憶部85、認可トークン情報記憶部86に相当する。
The connection destination changing unit corresponds to the
権限情報取得要求手段は認可トークン取得要求部123に相当し、処理要求手段は処理要求部124に相当する。連携処理受付手段は非同期Front部131に相当し、連携処理実行手段は非同期Worker部132に相当する。
The authority information acquisition request unit corresponds to the authorization token acquisition request unit 123, and the processing request unit corresponds to the processing request unit 124. The cooperation process accepting unit corresponds to the asynchronous
1 システム
11 クライアント端末
12 携帯端末
14 画像形成装置
15 プロジェクタ
16 その他の機器
21、31 アクセス制御装置
22 プリントサービス提供装置
23 スキャンサービス提供装置
24 管理設定サービス提供装置
25 他サービス提供装置
32 外部サービス提供装置
50 サービス提供システム
51 サービスアプリ
52 プラットフォーム
53 管理データ記憶部53
54 プラットフォームAPI(Application Programming Interface)
61 プリントサービスアプリ
62 スキャンサービスアプリ
63 管理設定サービスアプリ
64 その他のサービスアプリ
71 認証処理部
72 機器通信部
73 セッション管理部
74 データ処理部
81 組織管理情報記憶部
82 ユーザ管理情報記憶部
83 機器管理情報記憶部
84 認可設定情報記憶部
85 外部サービス情報記憶部
86 認可トークン情報記憶部
87 データ管理情報記憶部
88 データストレージ
101 画面処理部
102 情報登録要求部
111 認証部
112 情報登録部
113 リダイレクト要求部
114 認可トークン取得部
115 認可トークン保存部
116 認可トークン提供部
121 認証要求部
122 画面処理部
123 認可トークン取得要求部
124 処理要求部
131 非同期Front(フロント)部
132 非同期Worker(ワーカ)部
500 コンピュータシステム
501 入力装置
502 表示装置
503 外部I/F
503a 記録媒体
504 RAM
505 ROM
506 CPU
507 通信I/F
508 HDD
B バス
FW ファイアウォール
N1〜N4 ネットワーク
DESCRIPTION OF
54 Platform API (Application Programming Interface)
61 Print Service Application 62
503a Recording medium 504 RAM
505 ROM
506 CPU
507 Communication I / F
508 HDD
B bus FW firewall N1-N4 network
Claims (10)
第一のユーザが操作する第一の機器から、第二のユーザが前記外部サービスを利用するための認可要求を受け付けると、前記第一の機器の接続先を前記外部サービスに変更させる接続先変更手段と、
前記接続先変更手段により接続先が前記外部サービスに変更された前記第一の機器から、前記外部サービスにおける前記第二のユーザの認可が認められたことを示す認可情報を受信すると、該認可情報を前記外部サービスに送信して、前記外部サービスを利用するための認可後の権限情報を前記外部サービスから取得する権限情報取得手段と、
前記第二のユーザが操作する第二の機器から前記外部サービスを利用する処理の要求を前記アプリケーションが受信したことに基づいて前記アプリケーションから送信される要求を受信すると、前記第二のユーザに紐付く前記認可後の権限情報を前記アプリケーションに提供する権限情報提供手段と、
を有するクラウドサービス提供システム。 A cloud service providing system including one or more information processing apparatus mounting the application providing cloud services, in the cloud service providing system authentication infrastructure with the cloud service providing system connected to the different external service,
From a first device a first user operates the second user accepting an authorization request for using the external service, connection Ru is changing the connection destination of the first device to the external service A destination change means,
Wherein from said first equipment connection destination is changed to the external service by the connection destination changing means receives the authorization information indicating that the approval of the second user is observed in the external service Then, the authorization information the send to the external service, and authority information obtaining means for obtaining the authority information after authorization to use the external service from the external service,
Upon receiving the request transmitted from the second second of the application based on the fact that the request for processing using the external service from the device received the application operated by the user, the second user Authority information providing means for providing the authorized authority information to be associated with the application ;
A cloud service providing system.
第一のユーザが操作する第一の機器から、第二のユーザが前記外部サービスを利用するための認可要求を受け付けると、前記第一の機器の接続先を前記外部サービスに変更させる接続先変更手段と、 When the second user receives an authorization request for using the external service from the first device operated by the first user, the connection destination is changed to change the connection destination of the first device to the external service. Means,
前記接続先変更手段により接続先が前記外部サービスに変更された前記第一の機器から、前記外部サービスにおける前記第二のユーザの認可が認められたことを示す認可情報を受信すると、該認可情報を前記外部サービスに送信して、前記外部サービスを利用するための認可後の権限情報を前記外部サービスから取得する権限情報取得手段と、 When receiving the authorization information indicating that the authorization of the second user in the external service has been approved from the first device whose connection destination has been changed to the external service by the connection destination changing means, the authorization information Authority information acquiring means for acquiring authority information after authorization to use the external service from the external service,
前記外部サービスを利用するアプリケーションが搭載されたサーバ装置から送信される要求であって、前記第二のユーザが操作する第二の機器から前記外部サービスを利用する処理の要求を前記アプリケーションが受信したことに基づいて送信される要求を受信すると、前記第二のユーザに紐付く前記認可後の権限情報を前記サーバ装置に送信することで前記アプリケーションに提供する権限情報提供手段と、 The application receives a request for processing using the external service from a second device operated by the second user, which is a request transmitted from a server device on which the application using the external service is installed. When receiving a request transmitted based on the above, authority information providing means for providing to the application by transmitting the authorized authority information associated with the second user to the server device,
を有するクラウドサービス提供システム。A cloud service providing system.
を更に有する請求項1又は2記載のクラウドサービス提供システム。 Authority information storage that saves the authorization information acquired from the external service by the authority information acquisition means in association with the user information of the second user and the identification information of the external service in the first storage means cloud service providing system according to claim 1 or 2, wherein further comprising means.
前記権限情報保存手段は、前記認可後の権限情報、前記認可後の権限情報の有効期限、前記認可後の権限情報を再発行する為に必要な情報を、前記第二のユーザのユーザ情報及び前記外部サービスの識別情報と紐付けて、前記第一の記憶手段に保存する
ことを特徴とする請求項3記載のクラウドサービス提供システム。 The authority information obtaining unit, using the authorization information, authority information after the authorization, the expiration date of the authority information after the authorization information necessary to re-issue the authority information after the authorization, the external Obtained from the service ,
The authority information storage means includes the authorization information after authorization, an expiration date of the authorization information after authorization, information necessary for reissuing the authorization information after authorization, user information of the second user, and The cloud service providing system according to claim 3 , wherein the cloud service providing system is stored in the first storage unit in association with identification information of the external service .
ことを特徴とする請求項4記載のクラウドサービス提供システム。 The authority information providing means is configured to store the first authorization information that has expired and is associated with the user information of the second user and the identification information of the external service in the first storage means. Using the information necessary for reissuing the authorized information stored in the storage means to cause the authorized information obtaining means to obtain the authorized information from the external service. The cloud service providing system according to claim 4 .
取得した前記第二のユーザに紐付く前記認可後の権限情報を用いて、前記外部サービスに処理を要求する処理要求手段
を更に有する請求項3乃至5何れか一項記載のクラウドサービス提供システム。 Acquisition of authority information that receives a request for processing using the external service from a device operated by the second user and requests the authority information providing means to acquire authority information after authorization associated with the second user Request means;
The cloud service providing system according to any one of claims 3 to 5 , further comprising a processing request unit that requests processing from the external service using the authorized authority information associated with the acquired second user.
前記第二の記憶手段から前記連携処理の情報を取得し、前記非同期処理を行ったあとに前記第一の記憶手段から前記第二のユーザと紐付く前記認可後の権限情報を取得し、取得した前記認可後の権限情報を用いて、前記外部サービスに処理を要求する連携処理実行手段と
を更に有する請求項6記載のクラウドサービス提供システム。 A cooperative process accepting means for accepting a request for a cooperative process for linking the asynchronous process and the external service from the process requesting means, and registering information of the cooperative process in a second storage means;
Obtaining the information on the cooperation process from the second storage means, obtaining the authorized authority information associated with the second user from the first storage means after performing the asynchronous process, and obtaining The cloud service providing system according to claim 6 , further comprising cooperation processing execution means for requesting the external service to perform processing using the authorized authority information.
ことを特徴とする請求項3乃至5何れか一項記載のクラウドサービス提供システム。 The first storage means further stores information for specifying the authority range of the authorization information after authorization in association with the user information of the second user and the identification information of the external service. The cloud service providing system according to any one of claims 3 to 5 .
第一のユーザが操作する第一の機器から、第二のユーザが前記外部サービスを利用するための認可要求を受け付けると、前記第一の機器の接続先を前記外部サービスに変更させる接続先変更ステップと、 When the second user receives an authorization request for using the external service from the first device operated by the first user, the connection destination is changed to change the connection destination of the first device to the external service. Steps,
前記接続先変更ステップにより接続先が前記外部サービスに変更された前記第一の機器から、前記外部サービスにおける前記第二のユーザの認可が認められたことを示す認可情報を受信すると、該認可情報を前記外部サービスに送信して、前記外部サービスを利用するための認可後の権限情報を前記外部サービスから取得する権限情報取得ステップと、 When receiving authorization information indicating that authorization of the second user in the external service has been approved from the first device whose connection destination has been changed to the external service in the connection destination changing step, the authorization information Authority information acquisition step of acquiring authority information after authorization for using the external service from the external service,
前記第二のユーザが操作する第二の機器から前記外部サービスを利用する処理の要求を前記アプリケーションが受信したことに基づいて前記アプリケーションから送信される要求を受信すると、前記第二のユーザに紐付く前記認可後の権限情報を前記アプリケーションに提供する権限情報提供ステップと、 When receiving a request transmitted from the application based on the application receiving a request for processing using the external service from a second device operated by the second user, An authorization information providing step of providing authorization information to the application after the authorization is attached;
を有するクラウドサービス提供方法。A cloud service providing method.
第一のユーザが操作する第一の機器から、第二のユーザが前記外部サービスを利用するための認可要求を受け付けると、前記第一の機器の接続先を前記外部サービスに変更させる接続先変更ステップと、 When the second user receives an authorization request for using the external service from the first device operated by the first user, the connection destination is changed to change the connection destination of the first device to the external service. Steps,
前記接続先変更ステップにより接続先が前記外部サービスに変更された前記第一の機器から、前記外部サービスにおける前記第二のユーザの認可が認められたことを示す認可情報を受信すると、該認可情報を前記外部サービスに送信して、前記外部サービスを利用するための認可後の権限情報を前記外部サービスから取得する権限情報取得ステップと、 When receiving authorization information indicating that authorization of the second user in the external service has been approved from the first device whose connection destination has been changed to the external service in the connection destination changing step, the authorization information Authority information acquisition step of acquiring authority information after authorization for using the external service from the external service,
前記外部サービスを利用するアプリケーションが搭載されたサーバ装置から送信される要求であって、前記第二のユーザが操作する第二の機器から前記外部サービスを利用する処理の要求を前記アプリケーションが受信したことに基づいて送信される要求を受信すると、前記第二のユーザに紐付く前記認可後の権限情報を前記サーバ装置に送信することで前記アプリケーションに提供する権限情報提供ステップと、 The application receives a request for processing using the external service from a second device operated by the second user, which is a request transmitted from a server device on which the application using the external service is installed. When receiving a request to be transmitted based on the above, authority information providing step for providing the application with the authorization information associated with the second user by transmitting to the server device,
を有するクラウドサービス提供方法。A cloud service providing method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016237278A JP6237868B2 (en) | 2016-12-07 | 2016-12-07 | Cloud service providing system and cloud service providing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016237278A JP6237868B2 (en) | 2016-12-07 | 2016-12-07 | Cloud service providing system and cloud service providing method |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012241368A Division JP6056384B2 (en) | 2012-10-31 | 2012-10-31 | System and service providing apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017084378A JP2017084378A (en) | 2017-05-18 |
JP6237868B2 true JP6237868B2 (en) | 2017-11-29 |
Family
ID=58713087
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016237278A Active JP6237868B2 (en) | 2016-12-07 | 2016-12-07 | Cloud service providing system and cloud service providing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6237868B2 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6977664B2 (en) * | 2018-05-30 | 2021-12-08 | 日本電信電話株式会社 | Management device, management method and management program |
US11394844B2 (en) | 2019-09-30 | 2022-07-19 | Ricoh Company, Ltd. | Authentication system, shared terminal, and authentication method |
JP7534112B2 (en) | 2020-03-25 | 2024-08-14 | 東芝テック株式会社 | Information processing device and method for controlling the information processing device |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5660050B2 (en) * | 2009-12-28 | 2015-01-28 | 日本電気株式会社 | User information utilization system, apparatus, method and program |
JP5623234B2 (en) * | 2010-10-22 | 2014-11-12 | キヤノン株式会社 | Authority delegation system, authority delegation method, information processing apparatus, control method thereof, and program |
JP5932344B2 (en) * | 2012-01-16 | 2016-06-08 | キヤノン株式会社 | Authority delegation system, access management service system, and control method for controlling authority delegation system |
JP6057666B2 (en) * | 2012-10-25 | 2017-01-11 | キヤノン株式会社 | Image forming apparatus, information processing method, and program |
-
2016
- 2016-12-07 JP JP2016237278A patent/JP6237868B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2017084378A (en) | 2017-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6056384B2 (en) | System and service providing apparatus | |
JP6318940B2 (en) | Service providing system, data providing method and program | |
JP6255858B2 (en) | System and service providing apparatus | |
CN106856475B (en) | Authorization server and authentication collaboration system | |
JP6682254B2 (en) | Authentication cooperation system, authentication cooperation method, authorization server and program | |
JP6550692B2 (en) | Service providing system, log information providing method and program | |
JP6064636B2 (en) | Information processing system, information processing apparatus, authentication method, and program | |
US20150029533A1 (en) | Image forming apparatus that displays button for accessing server, method of controlling the same, and storage medium | |
JP6111713B2 (en) | Information processing system, information processing apparatus, authentication information management method, and program | |
JP7322619B2 (en) | COMPUTER SYSTEM, LOGIN SCREEN DISPLAY METHOD, PROGRAM | |
CN1996853A (en) | LDAP based scan templates | |
US9661184B2 (en) | Data processing system and data processing method for authenticating user by utilizing user list obtained from service providing apparatus | |
JP6183035B2 (en) | Service providing system, service providing method and program | |
JP6303312B2 (en) | Service providing system and image providing method | |
JP6237868B2 (en) | Cloud service providing system and cloud service providing method | |
JP6927282B2 (en) | Information processing equipment, terminal equipment, programs and information processing systems | |
JP2020107128A (en) | Print processing program, print processing method, print processing device, print processing system and print system | |
JP2015032043A (en) | Service providing system, service providing method, and program | |
US10713098B2 (en) | Information processing apparatus and cookie information management method | |
JP6447766B2 (en) | Service providing system, data providing method and program | |
JP6205946B2 (en) | Service providing system, information collecting method and program | |
EP3767497A1 (en) | Cloud system, information processing system, and user registration method | |
JP6299101B2 (en) | Service providing system, service providing method and program | |
JP2016206971A (en) | Coordination system, coordination system control method and program | |
JP6201444B2 (en) | Information processing system and information processing method |
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: 20171003 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20171016 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6237868 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |