JP2020087197A - Information processing system, information processing program and information processing method - Google Patents
Information processing system, information processing program and information processing method Download PDFInfo
- Publication number
- JP2020087197A JP2020087197A JP2018223799A JP2018223799A JP2020087197A JP 2020087197 A JP2020087197 A JP 2020087197A JP 2018223799 A JP2018223799 A JP 2018223799A JP 2018223799 A JP2018223799 A JP 2018223799A JP 2020087197 A JP2020087197 A JP 2020087197A
- Authority
- JP
- Japan
- Prior art keywords
- information
- external service
- service
- external
- information processing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Facsimiles In General (AREA)
Abstract
Description
本発明は、情報処理システム、情報処理プログラム及び情報処理方法に関する。 The present invention relates to an information processing system, an information processing program, and an information processing method.
特許文献1には、クライアントIDやクライアントシークレットといった外部サービスと連携する際、ユーザによるサービス利用時の認可手続きの回数を減らす技術が開示されている。
しかしながら、特許文献1に開示される従来技術では、連携する外部サービスを追加する方法が開示されていないため、外部サービスを容易に追加するというニーズに対応できないという課題があった。
However, the conventional technique disclosed in
本発明は、上記課題に鑑み、外部サービスとの連携設定を容易に追加できる。 In view of the above problem, the present invention can easily add a cooperation setting with an external service.
上記課題に鑑み、本発明に係る情報処理システムは、外部サービスと連携する情報である外部サービス連携情報の登録を受け付けるコンポーネント設定受付部と、前記外部サービス連携情報を管理する外部サービス連携コンポーネントと、前記外部サービス連携情報を用いて、前記外部サービスからトークンを取得する認可サービス部と、を備える。 In view of the above problems, the information processing system according to the present invention includes a component setting reception unit that receives registration of external service cooperation information that is information that cooperates with an external service, and an external service cooperation component that manages the external service cooperation information. An authorization service unit that acquires a token from the external service using the external service cooperation information.
本発明によれば、外部サービスとの連携設定を容易に追加できるという効果を奏する。 According to the present invention, it is possible to easily add a link setting with an external service.
以下、本発明を実施するための形態について図面を用いて説明する。 Embodiments for carrying out the present invention will be described below with reference to the drawings.
図1は本発明の実施の形態に係る情報処理システム1の構成図である。情報処理システム1は、サービス提供システム50及び外部サービスシステム30を備える。
FIG. 1 is a configuration diagram of an
サービス提供システム50は、アクセス制御装置21、プリントサービス提供装置22、スキャンサービス提供装置23、管理設定サービス提供装置24及び他サービス提供装置25を備える。
The
アクセス制御装置21は、プリントサービス提供装置22が提供するプリントサービス、スキャンサービス提供装置23が提供するスキャンサービス、管理設定サービス提供装置24が提供する管理設定サービスなどへのログインを制御する。
The
アクセス制御装置21、プリントサービス提供装置22、スキャンサービス提供装置23、管理設定サービス提供装置24及び他サービス提供装置25は、ネットワークN2に接続されている。ネットワークN2は、アクセス制御装置21を介して、インターネット等のネットワークN4に接続されている。ネットワークN2はアクセス制御装置21によってセキュリティが保護されている。
The
ネットワークN4には、オフィス内のファイアウォールFWが接続される。ファイアウォールFWには、ネットワークN1が接続される。ネットワークN1は、ファイアウォールFWの内側(例えばオフィス内など)に存在するプライベートネットワークである。ファイアウォールFWは、ネットワークN1とネットワークN4との接点に設置され、不正なアクセスを検出及び遮断する。 A firewall FW in the office is connected to the network N4. The network N1 is connected to the firewall FW. The network N1 is a private network existing inside the firewall FW (for example, in an office). The firewall FW is installed at a contact point between the network N1 and the network N4, and detects and blocks unauthorized access.
ネットワークN1には、クライアント端末11と、携帯端末12と、複合機などの画像形成装置14と、プロジェクタ15と、電子黒板等のその他の機器16とが接続されている。
A
クライアント端末11は、端末装置の一例である。クライアント端末11は、一般的なOSなどが搭載された情報処理装置である。クライアント端末11は、無線による通信の手段又は有線による通信の手段を備える。クライアント端末11は、ユーザが操作可能な端末である。当該端末は、タブレットPC(Personal Computer)、ノートPCなどである。携帯端末12は、端末装置の一例である。携帯端末12は、無線による通信の手段又は有線による通信の手段を備える。携帯端末12は、ユーザが携帯可能な端末である。当該端末は、スマートフォン、携帯電話、タブレットPC、ノートPCなどである。画像形成装置14は、画像形成機能を備える装置である。当該装置は、複合機、コピー機、スキャナ、プリンタ、レーザプリンタなどである。画像形成装置14は無線による通信の手段又は有線による通信の手段を備える。プロジェクタ15は、画像を投影する装置である。プロジェクタ15は無線による通信の手段又は有線による通信の手段を備える。
The
ネットワークN4にはアクセス制御装置31が接続される。アクセス制御装置31には、ネットワークN3が接続される。ネットワークN3は、クラウドサービスに代表されるような外部サービスシステム30を構成するネットワークである。ネットワークN3は、アクセス制御装置31によってセキュリティが保護されている。ネットワークN3には外部サービス提供装置32が接続されている。アクセス制御装置31は、外部サービス提供装置32が提供する外部サービスへのログインを制御する。
An
情報処理システム1は、OAuthと呼ばれるAPI(Application Programming Interface)認可の標準的技術を利用している。サービス提供システム50は、OAuthのコンシューマに相当する。外部サービスシステム30は、OAuthのサービスプロバイダに相当する。外部サービスシステム30がWebAPI(Application Programming Interface)を公開し、ユーザは、WebAPIを通じて、自身の権限の範囲内で、外部サービスシステム30に保存されているリソースへのアクセス、そのリソースを扱うサービスへのアクセスなどが可能である。また、サービス提供システム50のプリントサービス提供装置22などは、ユーザから委譲された権限に基づく認可トークンを利用することで、ユーザから委譲された権限の範囲内で、外部サービスシステム30に保存されているリソースへのアクセス、そのリソースを扱うサービスへのアクセスなどが可能となる。
The
図1に示されるクライアント端末11、携帯端末12、アクセス制御装置21、プリントサービス提供装置22、スキャンサービス提供装置23、管理設定サービス提供装置24、及び他サービス提供装置25は、図2に示すコンピュータシステムにより実現される。また、図1に示されるアクセス制御装置31及び外部サービス提供装置32は、図2に示すコンピュータシステムにより実現される。
The
図2はコンピュータシステム500のハードウェア構成図である。コンピュータシステム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によって相互に接続されている。入力装置501は、キーボード、マウス、タッチパネルなどであり、ユーザが各操作信号を入力するのに用いられる。表示装置502は、コンピュータシステム500による処理結果を表示するディスプレイであり。通信I/F507は、コンピュータシステム500をネットワークN1〜N4に接続するインタフェースである。これにより、コンピュータシステム500は、通信I/F507を介してデータ通信を行うことができる。HDD508は、プログラム、データなどを格納する不揮発性の記憶装置である。格納されるプログラム、データなどには、例えばコンピュータシステム500全体を制御する基本ソフトウェアであるOS(Operating System)、OS上において各種機能を提供するアプリケーションソフトウェアなどがある。HDD508は格納しているプログラム、データなどを、所定のファイルシステム、DB(データベース)などにより管理している。
FIG. 2 is a hardware configuration diagram of 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)などである。ROM505は、電源を切ってもプログラム、データなどを保持できる不揮発性の半導体メモリ(記憶装置)である。ROM505には、コンピュータシステム500の起動時に実行されるBIOS(Basic Input/Output System)、OS設定、及びネットワーク設定などのプログラムやデータが格納されている。RAM504は、プログラムやデータを一時保持する揮発性の半導体メモリ(記憶装置)である。CPU506は、ROM505やHDD508などの記憶装置からプログラムやデータをRAM504上に読み出し、処理を実行することで、コンピュータシステム500全体の制御や機能を実現する演算装置である。
The external I/
図1に示されるクライアント端末11、携帯端末12、アクセス制御装置21、プリントサービス提供装置22、スキャンサービス提供装置23、管理設定サービス提供装置24、及び他サービス提供装置25は、図2に示される構成によって、後述する各種処理を実現できる。また、図1に示されるアクセス制御装置31、外部サービス提供装置32は、図2に示される構成によって、後述する各種処理を実現できる。
The
サービス提供システム50の機能は、図3に示す処理ブロックにより実現される。図3はサービス提供システム50の処理ブロック図である。サービス提供システム50は、プログラムを実行することにより、サービスアプリ51、プラットフォーム52、管理データ記憶部53及びプラットフォームAPI54を実現している。
The functions of the
サービスアプリ51は、プリントサービスアプリ61、スキャンサービスアプリ62、管理設定サービスアプリ63、1つ以上のその他のサービスアプリ64を一例として備える。プリントサービスアプリ61はプリントサービスを提供するアプリケーションである。スキャンサービスアプリ62はスキャンサービスを提供するアプリケーションである。管理設定サービスアプリ63は管理設定サービスを提供するアプリケーションである。また、その他のサービスアプリ64は何らかのサービスを提供するアプリケーションである。
The
プラットフォームAPI54は、プリントサービスアプリ61、スキャンサービスアプリ62、管理設定サービスアプリ63、その他のサービスアプリ64などのサービスアプリ51が、プラットフォーム52を利用するためのインタフェースである。プラットフォームAPI54は、サービスアプリ51からの要求をプラットフォーム52が受信するために設けられた予め定義されたインタフェースであり、例えば関数やクラス等により構成される。なお、サービス提供システム50を複数の情報処理装置に分散して構成する場合、プラットフォームAPI54には、ネットワーク経由で利用可能な例えばWebAPIを利用できる。
The platform API 54 is an interface for the
プラットフォーム52は、機器通信部72、データ処理部74、コンポーネント情報管理部105、及び認証サービス部104を備える。
The
認証サービス部104は、クライアント端末11、画像形成装置14などのオフィス機器からのログイン要求に基づいて、認証を実行する。オフィス機器は、クライアント端末11、携帯端末12、画像形成装置14、プロジェクタ15、その他の機器16などの総称である。機器通信部72は、オフィス機器、外部サービスシステム30などとの通信を実行する。また認証サービス部104は、オフィス機器と、図1に示す外部サービスシステム30とのセッションを管理する。データ処理部74は、サービスアプリ51からの要求に基づいてデータ処理を実行する。
The
管理データ記憶部53は、組織管理情報記憶部81、ユーザ情報記憶部82、認可設定情報記憶部84、外部サービス情報記憶部85、認可トークン情報記憶部86、データ管理情報記憶部87、及びデータストレージ88を一例として備える。
The management
組織管理情報記憶部81は、組織管理情報を記憶する。ユーザ情報記憶部82は、ユーザ管理情報を記憶する。認可設定情報記憶部84は、認可設定情報を記憶する。外部サービス情報記憶部85は、外部サービス情報を記憶する。認可トークン情報記憶部86は、認可トークン情報を記憶する。データ管理情報記憶部87はデータ管理情報を記憶する。データストレージ88はその他のデータ等を記憶する。
The organization management
サービス提供システム50は、例えば認証や非同期変換といった機能を備えるクラウド基盤と、クラウド基盤の機能を利用してプリントサービス等のサービス提供を行うサービス群と、各サービスの管理設定を行う管理設定サービスとして機能する。クラウド基盤は、例えばプラットフォーム52、管理データ記憶部53、プラットフォームAPI54によって構成される。サービス群は、例えばサービスアプリ51によって構成される。管理設定サービスは、例えば管理設定サービスアプリ63によって構成される。クラウド基盤が備える認証の機能は、例えば認証サービス部104と、認証用データベースとにより構成される。認証用データベースは、組織管理情報記憶部81、ユーザ情報記憶部82、認可設定情報記憶部84、外部サービス情報記憶部85、認可トークン情報記憶部86などにより構成される。クラウド基盤が備える非同期変換の機能は、例えばデータ処理部74と、データ管理情報記憶部87と、データストレージ88により構成される。サービスアプリ51などのサービス群は、サービス提供システム50のクラウド基盤が備える認証、非同期変換などの機能を利用し、サービスの提供を行う。また、サービス群は、図1に示す外部サービスシステム30の機能と連携してサービスを提供する場合、クラウド基盤が備える認証の機能を介して、外部サービスシステム30にアクセスするための認可トークンを取得する。管理設定サービスアプリ63が行う管理設定には、認可処理の管理設定が含まれる。管理設定サービスアプリ63は、認可手続きを行う為のUI(User Interface)を備える。管理設定サービスアプリ63は、認証サービス部104と連携し、後述の認可設定情報を登録する。
The
なお、図1に示す外部サービスシステム30は、サービス提供システム50の外部のシステムであり、クラウドサービスなどを提供する。本実施の形態では、外部サービスシステム30が提供するサービス(機能)を、外部サービスと呼んでいる。外部サービスには、クラウドサービスとして提供されているオンラインストレージサービス、スキャン文書の保管サービス、スキャン文書の管理サービスなどが含まれる。また外部サービスシステム30は、サービス提供システム50の認証サービス部104からの要求に応じて認可トークンを発行する認可サーバとしての機能を備える。また、外部サービスシステム30には、WebAPIが整備されている。外部サービスシステム30のWebAPIは、認可トークンを利用した処理の要求を受け付け、サービス提供システム50のサービスアプリ51にサービスを提供するために利用される。
The
図3に示すサービス提供システム50では、認可クライアントとしての機能を、認証サービス部104が備えることで、複数のサービスアプリ51が共通に利用する組織管理情報、ユーザ管理情報、機器管理情報、認可設定情報、外部サービス情報、及び認可トークン情報を、一元管理することができ、セキュリティ性の向上と共に管理コストを低減できる。また、サービス提供システム50では、認可設定情報、外部サービス情報、認可トークンなどの認可情報の管理処理と、認可処理とを、認証サービス部104に一元化することで、ユーザによる一度の認可手続きにより、サービスアプリ51によらず、複数のサービスを連携させる様々なマッシュアップサービスを提供できる。
In the
なお、サービス提供システム50は、組織管理情報、ユーザ管理情報、機器管理情報、認可設定情報、外部サービス情報など、永続的に保存が必要となる情報を、例えば図2に示すHDD508に保存する。また、サービス提供システム50は、認可トークン情報など有効期限が決まっており、組織管理情報、ユーザ管理情報、機器管理情報、認可設定情報、外部サービス情報などの、他の情報よりライフサイクルが短い情報を、HDD508に替えて、例えばRAM504に(オンメモリ上に)保存するように構成してもよい。このように、ライフサイクルが短い情報が、オンメモリ上に保存されることによって、認可トークン情報の読み出し、書き込みなどは、高速になり、レスポンスが高速化する。
The
なお、サービスアプリ51、管理設定サービスアプリ63、認証サービス部104、データ処理部74、組織管理情報、ユーザ管理情報、機器管理情報、認可設定情報、外部サービス情報、認可トークン情報などの詳細は、特許文献1に開示されるため、詳細な説明を割愛する。また、認可設定情報の登録の手順、認可トークン情報の保存の手順、外部サービスを利用する処理手順などの詳細は、特許文献1に開示されるため、詳細な説明を割愛する。
Details of the
以下では本発明の特徴的な機能(外部サービスを容易に追加するための機能)について説明する。図4は外部サービス103を追加するための機能について説明するための図である。以下では「外部サービス103」を単位に「外部サービス」と称する場合がある。
The characteristic functions of the present invention (functions for easily adding external services) will be described below. FIG. 4 is a diagram for explaining a function for adding the
開発サイト100は、ワークフローを構成するコンポーネントと開発するUIである。図5は開発サイトの画面表示例を示す図である。図5に示されるように、開発サイトの画面には、外部サービス連携固定情報90と外部サービス連携変動情報91が表示される。
The
外部サービス連携固定情報90は、外部サービスと連携するために必要な外部サービス連携情報の一つである。外部サービス連携情報は外部サービスと連携する情報である。外部サービス連携固定情報90には、外部サービス識別子、クライアントID、クライアントシークレット、認可要求エンドポイントなどが含まれる。外部サービス識別子は、外部サービスを識別する識別子である。クライアントID及びクライアントシークレットは、外部サービスから発行されるクレデンシャルな情報である。クライアントIDは、クライアントと識別する情報である。クライアントシークレットは、クライアントIDの本人性を保証する為の秘密情報であり、パスワードのような役割を果たす情報である。認可要求エンドポイントは、エンドポイントである外部サービスのAPIに関する情報である。その他、外部サービス連携固定情報90にはトークン取得エンドポイント、トークン破棄エンドポイントなどが含まれる。
The external service cooperation fixed
外部サービス連携変動情報91は、外部サービスと連携するために必要な外部サービス連携情報の一つである。外部サービス連携変動情報91には、スコープ情報、公開するコンポーネント情報などが含まれる。スコープ情報は、連携する外部サービスの全ての権限を取得することはできないため、例えばGoogle(登録商標)のサービスの内、Gメール(登録商標)、Googleカレンダー(登録商標)などの一部のサービスを指定する情報である。スコープは、例えば、Gメール(登録商標)へのアクセス許可、Googleカレンダー(登録商標)への上書き許可など、外部サービスに連携するユーザに許可を求める範囲を示す情報である。必要なスコープ情報は、外部サービスと連携する情報を利用するコンポーネントによって異なる。そのため、そのコンポーネントが変動情報としてスコープ情報を管理する。公開するコンポーネント情報は、ユーザが外部サービスに登録したクレデンシャルな情報が、SI-Cloud上の全てコンポーネントに使われることを防ぐため、それぞれのユーザが申請したコンポーネントなら使える範囲(公開範囲)を設定するパラメータである。
The external service
なお図5では、外部サービス連携変動情報91の一例として、スコープ情報と公開するコンポーネント情報とが示されるが、外部サービス連携変動情報91には、これらの情報以外にも、外部サービス識別子などを含めてもよい。外部サービス連携変動情報91に含まれる情報を具体例については後述する。
In FIG. 5, the scope information and the component information to be disclosed are shown as an example of the external service
コンポーネント情報管理部105は、ワークフローを構成するコンポーネントの情報を管理する。コンポーネントは、外部サービスの機能を利用するものもあり、コンポーネント情報管理部105は、コンポーネントのニーズに合わせて、外部サービスの必要なスコープ情報を管理している。コンポーネント情報管理部105は、コンポーネントに登録した外部サービスと連携するため情報を、他のコンポーネントからも参照できるようにするための情報を持つ。コンポーネント情報管理部105は、外部サービス連携コンポーネント1051、コンポーネント設定受付部1054及び外部サービス連携変動情報91を備える。コンポーネント設定受付部1054は、参照コンポーネント1052及び管理コンポーネント1053を備える。
The component
ユーザサイト102は、エンドユーザが利用するサイトであり、SI-Cloudのアカウントと外部サービスとの連携設定を行うためのUIを、ユーザに提供する。図6はユーザサイト102にアクセスしたときに表示される外部サービス連携の画面(マイページ)を示す図である。マイページに表示されるメニューの中から「外部サービス連携」が選択されると、図5の右側に示されるような表示画面が現れる。この表示画面には、連携可能な外部サービスが表示される。外部サービスの種類は、例えば、GoogleDrive(登録商標)、ROPC、FTPなどである。画面に表示される「連携する」というボタンが押されることで、OAuthのフローに沿って、連携する外部サービスからトークンと取得するためのフローが実行される。
The
認証サービス部104は、SI-CloudのユーザID管理、ID認証機能などを保持し、外部サービスと連携するための外部サービス設定情報を管理し、さらに、管理するユーザID(ユーザ情報の1つ)に紐づけて、フェデレーション情報(外部サービスと連携情報)を管理する。外部サービス設定情報は、図4に示される外部連携固定情報に相当する。外部連携固定情報とユーザ情報の詳細は子術する。認証サービス部104では、外部サービスと連携した結果を連携要求したユーザと紐づけて、フェデレーション情報として登録される。フェデレーション情報は、図5の開発画面にアクセスしたユーザの情報(ユーザ情報)に、外部サービスと連携するためのトークン情報を紐付けて管理するための情報である。フェデレーションとは、一度認証を通った後にその認証情報を使って許可されているすべてのサービスを使えるようにする仕組みのことである。
The
認証サービス部104は、認可サービス部1041及びデータ格納部1042を備える。認可サービス部1041は、外部サービス識別子のデータと外部サービスとを連携するために、OAuthのロジックを持つ。認可サービス部1041は、外部サービス連携情報を用いて、外部サービスからトークンを取得する。データ格納部1042には、フェデレーション情報、外部サービル連携固定情報及びユーザ情報が格納される。
The
フェデレーション情報の具体例を図7に示す。図7はフェデレーション情報の一例を示す図である。フェデレーション情報には、ユーザID、外部サービス識別子、アクセストークン、リフレッシュトークンなどが含まれる。ユーザIDには、外部サービスを利用するユーザの識別するための情報として、例えば、User0001、User0002などが登録される。外部サービス識別子には、外部サービスの内容を識別するための情報として、例えば、Google(登録商標)、office365(登録商標)などが登録される。アクセストークン及びリフレッシュトークンのそれぞれは、ユーザIDに登録されるユーザが利用する外部サービス毎に登録されている。 A specific example of federation information is shown in FIG. FIG. 7 is a diagram showing an example of federation information. The federation information includes a user ID, an external service identifier, an access token, a refresh token, and the like. In the user ID, for example, User0001, User0002, etc. are registered as information for identifying the user who uses the external service. In the external service identifier, for example, Google (registered trademark), office365 (registered trademark), or the like is registered as information for identifying the content of the external service. Each of the access token and the refresh token is registered for each external service used by the user registered in the user ID.
図4に示される外部サービス連携固定情報90の具体例を図8に示す。図8は外部サービス連携固定情報90の一例を示す図である。外部サービス連携固定情報90に含まれる情報は、前述した通り、外部サービス識別子、クライアントID、クライアントシークレットなどである。外部サービス識別子には、外部サービスの内容を識別するための情報として、例えば、Google(登録商標)、office365(登録商標)などが登録される。クライアントIDには、外部サービスを提供するクライアントを識別するための情報として、例えば、client1、client2などが登録される。クライアントシークレットには、外部サービスを提供するクライアントが個別に設定したパスワード(Secret1、Secret2)などが登録される。
A specific example of the external service cooperation fixed
図4に示されるユーザ情報の具体例を図9に示す。図9はユーザ情報の一例を示す図である。ユーザ情報は、SI-Cloudに登録されているユーザを識別するための情報であり、例えばユーザID(User0001、User0002)、ユーザの姓名などを含む。ユーザ情報には、ユーザID、ユーザの姓名以外にも、パスワードなどを含めてもよい。 FIG. 9 shows a specific example of the user information shown in FIG. FIG. 9 is a diagram showing an example of user information. The user information is information for identifying a user registered in SI-Cloud, and includes, for example, a user ID (User0001, User0002), a user's first and last name, and the like. The user information may include a password as well as the user ID and the user's first and last name.
図4に示される外部サービス連携変動情報91の具体例を図10に示す。図10は外部サービス連携変動情報91の一例を示す図である。外部サービス連携固定情報90に含まれる情報は、外部サービス識別子、スコープ情報、オーナーコンポーネント、参照可能コンポーネントなどが含まれる。外部サービス識別子には、外部サービスの内容を識別するための情報として、例えば、Google(登録商標)、office365(登録商標)などが登録される。スコープ情報には、例えば、Google(登録商標)が提供する複数のサービスの内、外部連携を指定するサービス(Mail、storegeなど)が登録される。
A specific example of the external service
次に図11及び図12を用いて、情報処理システム1の動作を説明する。図11はコンポーネントの登録動作を説明するためのシーケンスチャートである。ステップS1において、開発者が開発サイト100のコンポーネント開発画面で、外部サービス連携情報を登録する。これにより、外部サービス連携変動情報が、管理コンポーネントと通じて、コンポーネント情報管理部105に登録される(ステップS2)。外部サービス連携情報の内、外部サービス連携固定情報が、管理コンポーネントから認証サービス部104に登録される(ステップS3)。ステップS4では、参照を許可する開発サイト100に、許可したことを示す情報が送信され、開発者は参照が許可されたことを知得する(ステップS5)。
Next, the operation of the
次にステップS6において、開発者が開発サイト100のコンポーネント開発画面で、外部サービス設定を公開するコンポーネントを設定すると、管理コンポーネントに公開するコンポーネントが設定され(ステップS7)、さらに管理コンポーネントは、参照コンポーネントに、外部サービス連携変動情報の参照を許可し(ステップS8)、許可した旨をコンポーネント開発画面に通知する(ステップS9)。
Next, in step S6, when the developer sets a component to publish the external service setting on the component development screen of the
図12は外部サービスからトークンを取得する認可動作を説明するためのシーケンスチャートである。ステップS11において、外部サービスを利用するエンドユーザがユーザサイト102で連携要求(ログイン)を行うと、ステップS12において、ユーザサイト102からコンポーネント情報管理部105に対して、連携情報の取得が行われる。ステップS13において、外部サービス連携コンポーネント1051は、外部サービス連携変動情報91を参照して、外部サービス連携変動情報91内のスコープ情報を取得し(ステップS14)、ユーザサイト102に対してスコープ情報を送信する(ステップS15)。
FIG. 12 is a sequence chart for explaining an authorization operation for acquiring a token from an external service. In step S11, when the end user who uses the external service makes a cooperation request (login) at the
ステップS16において、エンドユーザからの認可要求として、ログイン情報、外部サービス識別子、スコープ情報が送信されると、認証サービス部104がユーザを特定して(ステップS17)、ユーザ情報を取得する(ステップS18)。ステップS19において、認証サービス部104が外部サービス連携固定情報を参照して、外部サービス識別子などの設定情報を取得する(ステップS20)。これにより認可要求URLが生成され(ステップS21)、生成された認可要求URLがユーザサイトに送信される(ステップS22)。認可要求URLには、例えばGoogle(登録商標)などの外部サービスなどが記述される。
In step S16, when the login information, the external service identifier, and the scope information are transmitted as the authorization request from the end user, the
ユーザが認可要求URLにリダイレクトすると(ステップS23)、認可要求が外部サービス103に送信される(ステップS24)。これにより外部サービス103にリダイレクトされ(ステップS25)、ユーザが認証サービス部に対してコールバックを行う(ステップS26)。コールバックの中には例えばGoogle(登録商標)が発行した一時コードが含まれる。一時コードは、Google(登録商標)などからアクセストークン、リフレッシュトークンを取得するための情報である。 When the user redirects to the authorization request URL (step S23), the authorization request is sent to the external service 103 (step S24). As a result, the user is redirected to the external service 103 (step S25), and the user calls back to the authentication service unit (step S26). The callback includes a temporary code issued by Google (registered trademark), for example. The temporary code is information for obtaining an access token and a refresh token from Google (registered trademark) or the like.
認証サービス部はユーザ情報を参照し(ステップS27)、ユーザを特定するログイン情報をユーザ情報の中から取得する(ステップS28)。さらに認証サービス部は外部サービス連携固定情報を参照し(ステップS29)、設定情報を取得する(ステップS30)。さらに認証サービス部は、外部サービス103に対してトークンの送信を要求する(ステップS31)。トークンには一時コードが含まれるため、外部サービス103からアクセストークン及びリフレッシュトークンが発行される(ステップS32)。このようにして連携設定が完了すると、ステップS33において認証サービス部は、認証サービスが管理するユーザに紐づく形で、フェデレーション情報(外部サービスにアクセスするためのアクセストークンやリフレッシュトークン)を保存する(ステップS33)。
The authentication service unit refers to the user information (step S27), and acquires login information that identifies the user from the user information (step S28). Further, the authentication service unit refers to the external service cooperation fixed information (step S29) and acquires the setting information (step S30). Further, the authentication service unit requests the
図13は情報処理システム1の変形例に係る構成例を示す図である。図4に示す構成例との違いは、図13では、コンポーネント情報管理部105が、外部サービス連携固定情報と外部サービス連携変動情報とを、外部サービス連携情報91Aとして保持するように構成されている点である。すなわち、トークン取得に必要な情報、すなわち外部サービスと連携する外部サービス連携情報91Aが、コンポーネント情報管理部105に保持されていることである。そして、フェデレーション情報の生成は、認可サービス部1041で行われるため、トークン取得に必要な情報、すなわち外部サービスと連携する外部サービス連携情報91Aは、認可要求のタイミングで認証サービス部104に送信され、認証サービス部104はこの情報を一時情報として管理する。外部サービス連携固定情報と外部サービス連携変動情報が、クラウド上の認証サービス部104に一時的に保持されるため、秘匿性が向上する。
FIG. 13 is a diagram showing a configuration example according to a modified example of the
次に図14及び図15を用いて、図13に示される構成を備えた情報処理システム1の動作を説明する。図14は情報処理システム1の変形例によるコンポーネントの登録動作を説明するためのシーケンスチャートである。ステップS11において、開発者が開発サイト100のコンポーネント開発画面で、外部サービス連携情報91Aを登録する。
Next, the operation of the
これにより、外部サービス連携情報91Aが、管理コンポーネントと通じて、コンポーネント情報管理部105に登録される(ステップS21)。これにより、管理コンポーネントから認証サービス部104に外部サービス連携情報91Aが一時情報として格納される(ステップS31)。
As a result, the external
ステップS4では、参照を許可する開発サイト100に、許可したことを示す情報が送信され、開発者は参照が許可されたことを知得する(ステップS5)。ステップS6において、開発者が開発サイト100のコンポーネント開発画面で、外部サービス設定を公開するコンポーネントを設定すると、管理コンポーネントに公開するコンポーネントが設定され(ステップS7)、さらに管理コンポーネントは、参照コンポーネントに、外部サービス連携情報91Aの参照を許可し(ステップS81)、許可した旨をコンポーネント開発画面に通知する(ステップS9)。
In step S4, the information indicating the permission is transmitted to the
図15は情報処理システム1の変形例が外部サービスからトークンを取得する認可動作を説明するためのシーケンスチャートである。ステップS11において、外部サービスを利用するエンドユーザがユーザサイト102で連携要求(ログイン)を行うと、ステップS12において、ユーザサイト102からコンポーネント情報管理部105に対して、連携情報の取得が行われる。
FIG. 15 is a sequence chart for explaining the authorization operation for acquiring the token from the external service in the modification of the
ステップS130、140において、外部サービス連携コンポーネント1051は、外部サービス連携情報91Aを取得し、取得した外部サービス連携情報91Aをユーザサイト102へ送信する(ステップS150)。
In steps S130 and 140, the external
ステップS160において、エンドユーザからの認可要求として、ログイン情報、外部サービス識別子、外部サービス連携情報が送信されると、認証サービス部104がユーザを特定して(ステップS17)、ユーザ情報を取得する(ステップS18)。
In step S160, when the login information, the external service identifier, and the external service cooperation information are transmitted as the authorization request from the end user, the
認証サービス部104は、ユーザ情報、外部サービス連携情報を一時情報として保持し(ステップS190)、ユーザ情報に基づき認可要求URLを生成する(ステップS210)。生成された認可要求URLがユーザサイトに送信される(ステップS22)。
The
ユーザが認可要求URLにリダイレクトすると(ステップS23)、認可要求が外部サービス103に送信される(ステップS24)。これにより外部サービス103にリダイレクトされ(ステップS250)、ユーザが認証サービス部に対してコールバックを行う(ステップS260)。認証サービス部はユーザ情報を参照し(ステップS27)、ユーザを特定するログイン情報をユーザ情報の中から取得する(ステップS28)。 When the user redirects to the authorization request URL (step S23), the authorization request is sent to the external service 103 (step S24). As a result, the user is redirected to the external service 103 (step S250), and the user calls back to the authentication service unit (step S260). The authentication service unit refers to the user information (step S27), and acquires login information that identifies the user from the user information (step S28).
さらに認証サービス部は、一時情報(外部サービス連携情報)を参照し(ステップS290、S300)、外部サービス103に対してトークンの送信を要求し(ステップS31)、外部サービス103からはアクセストークン及びリフレッシュトークンが発行される(ステップS32)。このようにして連携設定が完了すると、ステップS33において認証サービス部は、認証サービスが管理するユーザに紐づく形で、フェデレーション情報(外部サービスにアクセスするためのアクセストークンやリフレッシュトークン)を保存する(ステップS33)。
Furthermore, the authentication service unit refers to the temporary information (external service cooperation information) (steps S290 and S300), requests the
以上に説明したように本発明の実施の形態に係る情報処理システム1は、外部サービスと連携する情報である外部サービス連携情報の登録を受け付けるコンポーネントと、外部サービス連携情報を管理する外部サービス連携コンポーネント1051と、外部サービス連携情報を用いて、外部サービスからトークンを取得する認可サービス部とを備えるように構成されている。外部サービス連携情報の登録を受け付けるコンポーネントは、参照コンポーネント1052及び管理コンポーネント1053である。外部サービス連携情報は、外部サービス連携固定情報90及び外部サービス連携変動情報91である。この構成により、外部サービスシステム30のWebAPIを利用して、開発者サイトのUIから、外部サービス連携情報を設定(登録)することが可能となる。そのため、開発者はWebAPIで受け付けた情報を元に、外部サービス連携情報(外部サービスとの連携設定)を即座に追加することが可能となり、外部サービスと連携するコンポーネントを即座に開発することが可能となる。
As described above, the
また実施の形態に係る情報処理プログラムは、コンピュータに、外部サービスと連携する情報である外部サービス連携情報の登録を受け付けるステップと、外部サービス連携情報を管理するステップと、外部サービス連携情報を用いて、外部サービスからトークンを取得するステップと、を実行させる。実施の形態に係る情報処理プログラムによれば、外部サービス連携情報を即座に追加することが可能となり、外部サービスと連携するコンポーネントを即座に開発することが可能となる。 The information processing program according to the embodiment uses a computer to receive registration of external service cooperation information, which is information that cooperates with an external service, a step of managing the external service cooperation information, and the external service cooperation information. , Obtaining a token from an external service, and executing the steps. According to the information processing program according to the embodiment, it becomes possible to immediately add external service cooperation information, and it is possible to immediately develop a component that cooperates with an external service.
また実施の形態に係る情報処理方法は、コンピュータで実行される情報処理方法であって、外部サービスと連携する情報である外部サービス連携情報の登録を受け付けるステップと、外部サービス連携情報を管理するステップと、外部サービス連携情報を用いて、外部サービスからトークンを取得するステップと、を含む。実施の形態に係る情報処理方法によれば、外部サービス連携情報を即座に追加することが可能となり、外部サービスと連携するコンポーネントを即座に開発することが可能となる。 An information processing method according to an embodiment is a computer-implemented information processing method, which includes a step of receiving registration of external service cooperation information, which is information that cooperates with an external service, and a step of managing external service cooperation information. And a step of using the external service cooperation information to obtain a token from the external service. According to the information processing method according to the embodiment, it is possible to immediately add external service cooperation information, and it is possible to immediately develop a component that cooperates with an external service.
1 情報処理システム、11 クライアント端末、12 携帯端末、14 画像形成装置、15 プロジェクタ、16 機器、21 アクセス制御装置、22 プリントサービス提供装置、23 スキャンサービス提供装置、24 管理設定サービス提供装置、25 他サービス提供装置、30 外部サービス、30 外部サービスシステム、31 アクセス制御装置、32 外部サービス提供装置、50 サービス提供システム、51 サービスアプリ、52 プラットフォーム、53 管理データ記憶部、54 プラットフォームAPI、61 プリントサービスアプリ、62 スキャンサービスアプリ、63 管理設定サービスアプリ、64 サービスアプリ、72 機器通信部、74 データ処理部、81 組織管理情報記憶部、82 ユーザ情報記憶部、84 認可設定情報記憶部、85 外部サービス情報記憶部、86 認可トークン情報記憶部、87 データ管理情報記憶部、88 データストレージ、90 外部サービス連携固定情報、91 外部サービス連携変動情報、100 開発サイト、102 ユーザサイト、103 外部サービス、104 認証サービス部、105 コンポーネント情報管理部、500 コンピュータシステム、501 入力装置、502 表示装置、503 外部I/F、503a 記録媒体、504 RAM、505 ROM、506 CPU、507 通信I/F、508 HDD、1041 認可サービス部、1042 データ格納部、1051 外部サービス連携コンポーネント、1052 参照コンポーネント、1053 管理コンポーネント、1054 コンポーネント設定受付部。 1 information processing system, 11 client terminal, 12 mobile terminal, 14 image forming device, 15 projector, 16 device, 21 access control device, 22 print service providing device, 23 scan service providing device, 24 management setting service providing device, 25 etc. Service providing device, 30 external service, 30 external service system, 31 access control device, 32 external service providing device, 50 service providing system, 51 service app, 52 platform, 53 management data storage unit, 54 platform API, 61 print service app , 62 scan service application, 63 management setting service application, 64 service application, 72 device communication section, 74 data processing section, 81 organization management information storage section, 82 user information storage section, 84 authorization setting information storage section, 85 external service information Storage unit, 86 Authorization token information storage unit, 87 Data management information storage unit, 88 Data storage, 90 External service cooperation fixed information, 91 External service cooperation variable information, 100 Development site, 102 User site, 103 External service, 104 Authentication service Part, 105 component information management part, 500 computer system, 501 input device, 502 display device, 503 external I/F, 503a recording medium, 504 RAM, 505 ROM, 506 CPU, 507 communication I/F, 508 HDD, 1041 authorization Service unit, 1042 data storage unit, 1051 external service cooperation component, 1052 reference component, 1053 management component, 1054 component setting reception unit.
Claims (9)
前記外部サービス連携情報を管理する外部サービス連携コンポーネントと、
前記外部サービス連携情報を用いて、前記外部サービスからトークンを取得する認可サービス部と、
を備える情報処理システム。 A component setting reception unit that receives registration of external service cooperation information that is information that cooperates with an external service,
An external service cooperation component that manages the external service cooperation information,
An authorization service unit that acquires a token from the external service using the external service cooperation information,
An information processing system including.
外部サービスと連携する情報である外部サービス連携情報の登録を受け付けるステップと、
前記外部サービス連携情報を管理するステップと、
前記外部サービス連携情報を用いて、前記外部サービスからトークンを取得するステップと、
を実行させる情報処理プログラム。 On the computer,
A step of accepting registration of external service cooperation information, which is information that cooperates with an external service,
Managing the external service cooperation information,
Acquiring a token from the external service using the external service cooperation information,
An information processing program for executing.
外部サービスと連携する情報である外部サービス連携情報の登録を受け付けるステップと、
前記外部サービス連携情報を管理するステップと、
前記外部サービス連携情報を用いて、前記外部サービスからトークンを取得するステップと、
を含む情報処理方法。 An information processing method executed by a computer,
A step of accepting registration of external service cooperation information, which is information that cooperates with an external service,
Managing the external service cooperation information,
Acquiring a token from the external service using the external service cooperation information,
Information processing method including.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018223799A JP2020087197A (en) | 2018-11-29 | 2018-11-29 | Information processing system, information processing program and information processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018223799A JP2020087197A (en) | 2018-11-29 | 2018-11-29 | Information processing system, information processing program and information processing method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2020087197A true JP2020087197A (en) | 2020-06-04 |
Family
ID=70908380
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018223799A Pending JP2020087197A (en) | 2018-11-29 | 2018-11-29 | Information processing system, information processing program and information processing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2020087197A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7096939B1 (en) * | 2021-09-08 | 2022-07-06 | プロパティエージェント株式会社 | System, face recognition platform and information processing method |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014092823A (en) * | 2012-10-31 | 2014-05-19 | Ricoh Co Ltd | System and service provision device |
JP2017059219A (en) * | 2015-09-18 | 2017-03-23 | 株式会社リコー | Information processing system, information processing apparatus, and information processing method |
JP2018129079A (en) * | 2013-07-30 | 2018-08-16 | 株式会社リコー | Service providing system, data providing method, and program |
JP2018156405A (en) * | 2017-03-17 | 2018-10-04 | 株式会社リコー | Service cooperation system, service cooperation method, and server |
-
2018
- 2018-11-29 JP JP2018223799A patent/JP2020087197A/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014092823A (en) * | 2012-10-31 | 2014-05-19 | Ricoh Co Ltd | System and service provision device |
JP2018129079A (en) * | 2013-07-30 | 2018-08-16 | 株式会社リコー | Service providing system, data providing method, and program |
JP2017059219A (en) * | 2015-09-18 | 2017-03-23 | 株式会社リコー | Information processing system, information processing apparatus, and information processing method |
JP2018156405A (en) * | 2017-03-17 | 2018-10-04 | 株式会社リコー | Service cooperation system, service cooperation method, and server |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7096939B1 (en) * | 2021-09-08 | 2022-07-06 | プロパティエージェント株式会社 | System, face recognition platform and information processing method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6056384B2 (en) | System and service providing apparatus | |
JP6439370B2 (en) | Information processing system, information processing method, information processing apparatus, and program | |
US8166404B2 (en) | System and/or method for authentication and/or authorization | |
US7647625B2 (en) | System and/or method for class-based authorization | |
US9294466B2 (en) | System and/or method for authentication and/or authorization via a network | |
EP3203709B1 (en) | Cloud service server and method for managing cloud service server | |
US8856957B1 (en) | Federated identity broker | |
US9672382B2 (en) | Managing access of user information by third party applications | |
US20070079357A1 (en) | System and/or method for role-based authorization | |
JP6907619B2 (en) | Information processing system, information processing method, and information processing equipment | |
JP2014170458A (en) | Relay device, communication system, and program | |
JP5991143B2 (en) | Information processing apparatus, system, and information registration method | |
JP6075011B2 (en) | Information processing apparatus, system, and information providing method | |
JP2020087197A (en) | Information processing system, information processing program and information processing method | |
JP2015026231A (en) | Service provision system, image provision method, and program | |
US10866711B1 (en) | Providing account information to applications | |
JP6163170B2 (en) | Service cooperation system, service cooperation apparatus, terminal device, service cooperation method, and service cooperation program | |
KR100583617B1 (en) | A Photograph-Community Service System and A Service Method thereof | |
JP2017084378A (en) | Cloud service provision system and cloud service provision method | |
Willard et al. | Data transfer project: from theory to practice | |
Barclay et al. | Innovative applications of blockchain technology in crime and security | |
JP6304408B2 (en) | Information processing apparatus, information providing method, and program | |
Wilson et al. | Sample Application with Custom API | |
KR100906129B1 (en) | Customized design support system for companies | |
Esnaashari | Users’ decisions about the security of mobile applications |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210819 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220518 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220607 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220805 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20221004 |