JP6880873B2 - サービス連携システム、サービス連携方法、及びサーバ - Google Patents

サービス連携システム、サービス連携方法、及びサーバ Download PDF

Info

Publication number
JP6880873B2
JP6880873B2 JP2017052806A JP2017052806A JP6880873B2 JP 6880873 B2 JP6880873 B2 JP 6880873B2 JP 2017052806 A JP2017052806 A JP 2017052806A JP 2017052806 A JP2017052806 A JP 2017052806A JP 6880873 B2 JP6880873 B2 JP 6880873B2
Authority
JP
Japan
Prior art keywords
user
service
application
authorization
cooperation
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
Application number
JP2017052806A
Other languages
English (en)
Other versions
JP2018156405A (ja
Inventor
健太 玉置
健太 玉置
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2017052806A priority Critical patent/JP6880873B2/ja
Publication of JP2018156405A publication Critical patent/JP2018156405A/ja
Application granted granted Critical
Publication of JP6880873B2 publication Critical patent/JP6880873B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Facsimiles In General (AREA)

Description

本発明は、サービス連携システム、サービス連携方法、及びサーバに関する。
アプリケーションがAPIを介して他のサーバのサービスを利用することにより、アプリケーションと他のサーバとが連続的に処理を実行して一連のサービスを提供できるようにしたサービス連携システム知られている。サービス連携システムにおいて複数のサービスを跨がるサービスを提供するためには、両サービスを連携させる処理が必要である。
特許文献1に記載のサービス連携システムにおいては、予め、サービス連携装置がアプリケーション毎に各ユーザに発行した共通ユーザIDと、外部サービスの利用に必要な接続先ユーザIDとを関連付けてデータベースに格納しておく。アプリケーションから共通ユーザIDを含む外部サービスへの連携要求を受信した場合に、サービス連携措置は接続先ユーザIDを用いて外部サービスにアクセスする。従って、アプリケーションは共通ユーザIDとAPIを呼び出すだけで、外部サービスと連携したサービスをユーザに提供できる。
従来のサービス連携システムにおいては、ユーザが複数のサービスを跨がるサービスを利用する前に、事前にユーザIDに対して外部サービスを連携させておく必要があった。即ち、ユーザは、まずアプリケーションに係るユーザ管理データベースにユーザ登録した後、別途、認可連携用サイトから利用する外部サービスを選択し、対象外部サービスが未認証の場合は外部サービス用のユーザID/パスワード情報を入力し認証(ログイン)を行う。認証済みの状態であれば、外部サービスとの認可連携を許可する。上記作業の完了後にアプリケーションを起動することで、ユーザは外部サービスと連携したサービスを受けることができる。このように従来はアプリケーション利用前の作業が煩雑であった。
本発明は上述の事情に鑑みてなされたものであり、アプリケーションの利用時にユーザ登録と外部サービスとの認可連携を一連の操作の中で実現することを目的とする。
上記の課題を解決するために、請求項1に記載の発明は、第一アプリケーションのユーザに係る第一ユーザ情報を前記第一アプリケーションの利用時に前記第一アプリケーション上で登録可能な第一ユーザ管理手段を備えた第一プラットフォームシステムと、外部サービスとの連携情報を含む第二アプリケーションのユーザに係る第二ユーザ情報を前記第二アプリケーションの利用開始前に登録させる第二ユーザ管理手段を備えた第二プラットフォームシステムと、が接続されたサービス連携システムであって、前記第二プラットフォームシステムは、前記第一プラットフォームシステムを介して呼び出された前記第二アプリケーション上で前記第二ユーザ情報の登録リクエストを受け付けた場合に、前記第二アプリケーションと連携する前記外部サービスを判定する外部サービス判定手段と、判定された前記外部サービスに対して認可連携処理を要求するサービス認可手段と、を備え、前記第二ユーザ管理手段は、前記外部サービスによる前記認可連携処理の結果を表す認可連携情報を前記第二ユーザ情報に含まれるユーザ識別情報に関連付けることを特徴とする。

本発明によれば、アプリケーションの利用時にユーザ登録と外部サービスとの認可連携を一連の操作の中で実現することが可能となる。
本発明の一実施形態に係るサービス連携システムの概略構成を示す図である。 PCのハードウェア構成の一例を示すブロック図である。 MFPのハードウェア構成の一例を示すブロック図である。 本発明の一実施形態に係るサービス連携システムの機能構成を示すブロック図である。 第二クラウドシステムの第二ユーザ管理DBに記憶されるテーブルの一例を示す図であり、(a)はユーザ管理テーブルであり、(b)は外部サービス連携用テーブルである。 (a)〜(e)は、第一クラウドシステムから第二クラウドシステムのアプリケーションを利用する時に実行されるユーザ登録処理及びサービス連携処理に係る画面遷移及び処理概要の一例を示す図である。 第二クラウドシステムのユーザ登録及びサービス連携に係る処理を示したシーケンス図である。 実際の画面例を示す図であり、(a)はアドレス入力画面を、(b)はメール送信完了画面を示す図である。 実際の画面例を示す図であり、(a)はユーザ登録画面を、(b)はユーザ登録完了画面を示す図である。 実際の画面例を示す図であり、(a)は認可連携画面を、(b)は認可連携確認画面を示す図である。 (a)〜(d)は、第一クラウドシステムから第二クラウドシステムのアプリケーションを利用する際に実行されるサービス連携処理に係る画面遷移及び処理概要の一例を示す図である。 サービス連携に係る処理を示したシーケンス図である。 (a)〜(d)は、第一クラウドシステムから第二クラウドシステムのアプリケーションを利用する際に実行されるサービス連携処理に係る画面遷移及び処理概要の一例を示す図である。 サービス連携に係る処理を示したシーケンス図である。
〔第一の実施形態〕
本発明は、ユーザがアプリケーションにより実現されるクラウド上のサービスを利用する際に、ユーザ登録と外部サービスの認可連携とを一連の操作の中で実現する点に特徴がある。上記記載の本発明の特徴について、以下の図面を用いて詳細に解説する。但し、この実施形態に記載される構成要素、種類、組み合わせ、形状、その相対配置などは特定的な記載がない限り、この発明の範囲をそれのみに限定する主旨ではなく単なる説明例に過ぎない。
なお、本明細書、及び/又は図面に示されているBox、Concur、DropBox、Google、Office365の語は、それぞれ登録商標である。
また、本明細書においては「アプリケーション」を「アプリ」と省略して記載することがある。
<システム概要>
図1は、本発明の一実施形態に係るサービス連携システムの概略構成を示す図である。
サービス連携システム1は、バックエンドとして、第一プラットフォームシステムの下で第一クラウドサービスを提供する第一クラウドシステム100と、第二プラットフォームシステムの下で第二クラウドサービスを提供する第二クラウドシステム200と、第二クラウドシステム200と連携する複数の外部サービス301X、301Y、301Z…を含む外部サービス群300と、第二クラウドシステム200から送信された電子メールを受信するメール受信サーバ400とを備える。上記各システムの機能は、夫々、単一のサーバ(装置)によって実現されてもよいし、複数のサーバ(装置)によって実現されてもよい。
また、サービス連携システム1は、上記各システムを利用するクライアント側の装置として、MFP(Multifunction Peripheral:プリンタ複合機、画像形成装置)500と、PC(Personal Computer)600を備える。MFP500とPC600は、バックエンドに対するフロントエンドとして機能する。
サービス連携システムを構成する各システム及び装置は、ネットワークNを介して互いにデータを送受信可能に接続されている。
<<第一クラウドシステム>>
第一クラウドシステム100は、複数の機能モジュール101と、第一ユーザ管理DB102を備える。
第一クラウドシステム100は機能モジュール101として、MFP500からのリクエストに基づいてMFP500に対してプリントサービスやスキャニングサービス等の各種のサービスを、ネットワークNを介して夫々提供するサービスアプリ(第一アプリケーション)、各サービスアプリを呼び出すボタンを表示したホーム画面を生成するランチャーアプリ、各サービスアプリを利用するユーザをサービスアプリ毎に管理するユーザ管理モジュール(第一ユーザ管理手段)、ユーザのログイン認証を行う認証モジュール等を備えている。
第一ユーザ管理DB(第一ユーザ管理手段)102は、各サービスアプリが提供するサービスを利用するユーザのユーザ情報(第一ユーザ情報)を記憶する手段である。第一クラウドシステム100においては、各サービスを利用するユーザのユーザ情報がユーザ管理モジュールによってサービスアプリ毎に管理される。即ち、ユーザ管理モジュールはユーザ情報として、ユーザ名(ユーザID)、組織名(組織ID)、メールアドレス、パスワード、氏名等をサービス毎に個別に管理する。また、第一クラウドシステム100においてユーザ情報は、サービスアプリの提供時に、言い換えれば、ユーザによるサービスアプリの利用時(又は利用開始時)に、各サービスアプリの画面上で登録可能な構成となっている。
<<第二クラウドシステム>>
第二クラウドシステム200は、第一クラウドシステム100と同様に、複数の機能モジュールと第二ユーザ管理DB204を備える。
第二クラウドシステム200は機能モジュールとして、認証モジュール201、GUI(Graphical User Interface)モジュール202、及びサービスモジュール203を備える。認証モジュール201は、第二クラウドシステム200の各サービスを利用するユーザのユーザ情報の登録、管理、及び認証を行う。GUIモジュール202は、認証モジュール201を利用したユーザ情報の登録や管理等に係る各処理を行うためのGUI(htmlコンテンツ)を保持する。サービスモジュール203は、MFP500からのリクエストに基づいてMFP500に対してプリントサービスやスキャニングサービス等の各種のサービスをネットワークNを介して提供するアプリケーションモジュールである。
第二ユーザ管理DB204は、各サービスモジュール203が提供するサービスを利用するユーザのユーザ情報を記憶する手段である。第二クラウドシステム200においては、各サービスを利用するユーザのユーザ情報が認証モジュール201によって一元に管理される。即ち、認証モジュール201は、ユーザ情報として、ユーザ名(ユーザID)、組織名(組織ID)、メールアドレス、パスワード、氏名等を複数のサービスでまとめて一元に管理する。認証モジュール201は、ユーザ認証の際に第二ユーザ管理DB204にアクセスして、ユーザ認証に必要な情報を読み出し、読み出した情報に基づいてユーザ認証を行う。
なお、第二クラウドシステム200においてユーザ情報は、サービスの提供前に、言い換えれば、ユーザによるサービスの利用開始前に登録されていることを原則とする。しかし、第一クラウドシステム100を介してサービスを提供する場合、ユーザ情報は、第一クラウドシステム100と同様にサービスの提供時に、言い換えれば、ユーザによるサービスの利用時(又は利用開始時)に、各サービスモジュールの画面上から登録可能である。
<<外部サービス群>>
外部サービス群300は、複数の外部サービス301(301X、301Y、301Z…)を含む。各外部サービス301はOSS(Open-source software)としても提供される外部ストレージサービスである。外部サービス301は、第二クラウドシステム200が提供する各サービスモジュール203と連携して、ユーザに各種のサービスを提供する。
例えば外部サービス301は、MFP500によって読み取られたスキャニングデータを記憶したり、スキャニングデータをOCR処理すると共に処理結果であるOCRデータを記憶するといったサービスを提供する。
<<メール受信サーバ>>
メール受信サーバ400は、第二クラウドシステム200から送信された電子メールを受信し、蓄積するサーバである。
<<MFP>>
MFP500は、各クラウドシステム100、200からネットワークNを介してサービスの提供を受ける装置である。MFP500には、予めブラウザ501がインストールされている。ブラウザ501は、各クラウドシステム100、200が提供するサービスを呼び出すことができる。ブラウザ501は、呼び出した各サービスに係る画面(htmlコンテンツ)を表示し、各サービスに対して処理リクエストを送信することができる。
なお、上記各クラウドシステムが提供するサービスを受けるため、MFP500にはブラウザ501の代わりに、又はブラウザ501と合わせて、上記各クラウドシステムの双方に対応した又は夫々に個別に対応した専用のアプリケーションがインストールされていてもよい。更に、上記各クラウドシステムが提供するサービスを受ける装置はMFP500以外の電子機器でもよく、例えばPCやスマートフォン等であってもよい。
<<PC>>
PC600は、MFP500により第二クラウドシステム200から提供されるサービスを利用するにあたって、当該サービスを利用するユーザに係るユーザ情報の入力を受け付けると共に、入力されたユーザ情報を第二クラウドシステム200に送信して登録させるようにリクエストする装置である。PC600には、予めブラウザ601がインストールされており、ブラウザ601上に第二クラウドシステム200から送信されたユーザ情報の登録画面等(htmlコンテンツ)を表示させることができる。
更に、PC600は、第二クラウドシステム200から送信された電子メールを、ブラウザ601により、又は専用のメールアプリにより、メール受信サーバ400から取得して表示することができる。
なお、上記各機能を実現する装置はPC600以外であってもよく、例えばスマートフォン等の携帯端末であってもよい。
<ハードフェア構成>
図2は、PCのハードウェア構成の一例を示すブロック図である。
PC600は、CPU(Central Processing Unit)611、ROM(Read Only Memory)612、RAM(Random Access Memory)613、HDD(Hard Disk Drive)614、操作部615、表示部616、及び通信IF617を備えており、上記各部はバスを介して接続されている。
CPU611は、PC600を統括的に制御する演算装置である。ROM612は、BIOSやブートプログラム等を記憶した不揮発性のメモリである。RAM613は、CPU611が実行するプログラムのワークエリアとなる揮発性メモリである。HDD614は、ROM612とは異なるプログラムやデータ等を記憶する不揮発性の記憶手段である。CPU611はROM612又はHDD614から読み出したデータをRAM613に展開して実行することにより、各種の機能を実現する。
操作部615は、ユーザからの操作を受け付ける手段である。表示部616は、ユーザに対して操作結果等を表示するインターフェースである。操作部615は、例えばキーボードやマウス等により構成され、表示部616はディスプレイ等により構成される。操作部615と表示部616を一体化してタッチパネルディスプレイによって構成してもよい。
通信IF617は、ネットワークNと接続し、ネットワークNを介して接続された各装置との間でデータを送受信するためのインターフェースである。
なお、図1に示す第一クラウドシステム100、第二クラウドシステム200、及び各外部サービス301を構成する各サーバ、並びにメール受信サーバ400のハードウェア構成も、PC600のハードウェア構成と同様であるため、説明を省略する。
図3は、MFPのハードウェア構成の一例を示すブロック図である。
MFP500は、コントローラ510、操作表示部516、エンジン制御部518、スキャナエンジン519、及びプリントエンジン520等を有する。
コントローラ510は、CPU511、ROM512、RAM513、HDD514、操作表示IF515、及び通信IF517等を備えており、上記各部はバスを介して接続されている。CPU511、ROM512、RAM513、HDD514、及び通信IF517は、PC600が備える構成と同様であるため、説明を省略する。操作表示IF515は、操作表示部516をコントローラ510に接続するためのインターフェースである。
操作表示部516は、ユーザからの操作を受け付けると共に、ユーザに対して各種データを表示する手段であり、例えばタッチパネルディスプレイによって実現される。なお、操作を受け付ける手段と操作結果等を表示する手段とを別体のハードウェアから構成してもよい。
エンジン制御部518は、スキャナエンジン519や、プリントエンジン520を制御する手段である。スキャナエンジン519は、原稿等の画像を読み取る装置である。プリントエンジン520は、印刷用紙等の記録媒体に画像を形成する装置である。
<機能ブロック>
図4は、本発明の一実施形態に係るサービス連携システムの機能構成を示すブロック図である。
クライアント端末700は、図1に示したMFP500又はPC600であり、本システムにおけるフロントエンドである。クライアント端末700は、ブラウザ701内に、UI(User Interface)部702、Cookie保持部703、及びWebストレージ704を有する。
UI部702は、ブラウザ701のインターフェースであり、図2又は図3に示すCPUがROMに記憶されたプログラムをRAMに展開して実行することにより実現される。
Cookie保持部703は、第一クラウドシステム100又は第二クラウドシステム200との間のデータ通信に関するCookie情報を保持する領域である。
Webストレージ704は、クライアント端末700がUI部702を介して取得したデータを記憶する領域であり、セッションストレージとローカルストレージを含む。セッションストレージは、ウィンドウやタブ単位での一回限りのセッションで有効なストレージである。ローカルストレージは、永続的にデータを保持する領域である。
Cookie保持部703とWebストレージ704は、図2又は図3のRAM又はHDDによって実現される。
第一クラウドシステム100は、ホーム画面を生成するランチャーアプリ111、及び各種のサービスを提供するサービスアプリ112(第一アプリケーション)等を備える。ランチャーアプリ111、及びサービスアプリ112は、CPUがROMに記憶されたプログラムをRAMに展開して実行することにより実現される。
第二クラウドシステム200は、メール送信部(メール送信手段)211、ユーザ登録部(第二ユーザ管理手段)212、ユーザ認証部(ユーザ認証手段)213、サービス認可部(外部サービス判定手段、サービス認可手段)214、サービスアプリ(第二アプリケーション)215、第二ユーザ管理DB(第二ユーザ管理手段)204、及びキャッシュ217を備える。メール送信部211、ユーザ登録部212、ユーザ認証部213、サービス認可部214、及び、サービスアプリ215は、CPUがROMに記憶されたプログラムをRAMに展開して実行することにより実現される。第二ユーザ管理DB204はHDDによって実現され、キャッシュ217はRAMによって実現される。
メール送信部211は、クライアント端末700のUI部702から入力されたメールアドレス宛に所定のURLを記述した電子メールを送信する手段である。ユーザ登録部212は、サービスアプリ215を利用するユーザに係るユーザ情報(第二ユーザ情報)の登録や管理に係る各処理を行う。ユーザ認証部213は、ユーザを認証する処理を実行する。サービス認可部214は、第二クラウドシステム200が提供するサービスに対して外部サービス301を認可し、連携させる処理を実行する。
サービスアプリ215は、クライアント端末700にプリントサービスやスキャンサービス等の各種のサービスを提供するアプリケーションソフトウェアである。
第二ユーザ管理DB204は、第二クラウドシステム200が提供するサービスを利用するユーザのリストであるユーザ管理テーブルと、第二クラウドシステム200が提供するサービスと外部サービス301とを連携させるためのテーブルであるサービス連携テーブルとを記憶する。キャッシュ217は、各種データの一次記憶領域である。
なお、本図と図1との対応関係は以下の通りである。メール送信部211とユーザ登録部212はGUIモジュール202に対応し、ユーザ認証部213とサービス認可部214はGUIモジュール202と認証モジュール201に対応する。サービスアプリ215はサービスモジュール203に対応する。
<サービス連携用テーブル>
図5は、第二クラウドシステムの第二ユーザ管理DBに記憶されるテーブルの一例を示す図であり、(a)はユーザ管理テーブルであり、(b)は外部サービス連携用テーブルである。
図5(a)のユーザ管理テーブルには、ユーザを識別する一意のユーザID(ユーザ識別情報)に対して、ユーザが所属する組織を識別する一意の組織ID(組織識別情報)、ユーザの姓名、メールアドレス、性別等が関係づけて記憶される。ユーザ管理テーブルは、ユーザ認証部213がユーザ認証を行う際、及び、ユーザ登録部212がユーザを第二クラウドシステム200の利用者として登録する際に、第二ユーザ管理DB204から読み出される。ユーザ登録部212は、ユーザ管理テーブルを利用して、ユーザの重複登録のチェック、及び新規ユーザの登録を実行する。
なお、ユーザIDは、第二クラウドシステム200の各サービスアプリを利用するに際して共通に用いられる識別情報であり、新規ユーザ登録の際に第二クラウドシステム200によって発行される。また、ユーザIDは、それ単体で他のユーザIDと識別可能な一意性を持っていてもよいし、ユーザIDと組織IDを組み合わせることにより、他のユーザIDと組織IDの組み合わせから識別可能な一意性が生ずるようにしてもよい。
図5(b)の外部サービス連携用テーブルは、ユーザ毎(ユーザID毎)に用意される。外部サービス連携用テーブルには、各サービスアプリが提供するサービスに与えられた一意のサービスID(サービス識別情報)に対して、外部サービスの名称、外部サービスへのリダイレクトURL、及び、外部サービスとの認可連携状態を示す認可連携情報等が関係づけて記憶される。なお、認可連携情報には、サービスIDが表すサービスに対して外部サービスが認可連携されているか否かを示す認可可否情報、及び認可連携されている外部サービスの権限の範囲を示す認可スコープ等を含む。外部サービス連携用テーブルは、サービス認可部214が、ユーザが利用するアプリケーションに対して外部サービスを認可連携する際に、第二ユーザ管理DB204から読み出される。
<ユーザ登録の操作概要>
図6(a)〜(e)は、第一クラウドシステムから第二クラウドシステムのアプリケーションを利用する時に実行されるユーザ登録処理及びサービス連携処理に係る画面遷移及び処理概要の一例を示す図である。
図6(a)は、MFP500に表示されるホーム画面810の一例を示す図である。ホーム画面810は、第一クラウドシステム100が提供するサービスアプリケーションの一つであるランチャーアプリ111(図4)によって形成されるhtmlコンテンツの画面である。
ホーム画面810には、第一クラウドシステム100が提供するアプリケーションA、B…を呼び出すアプリボタン811A、811B、及び第二クラウドシステム200が提供するアプリaを呼び出すアプリボタン811aが表示されている。なお、本実施形態において第二クラウドシステム200からは、一つのアプリが提供されるものとする。
ここで、MFP500の所有者である組織(例えば会社などの法人)は、予め第一クラウドシステム100の提供者、及び第二クラウドシステム200の提供者とサービスの利用契約をしている必要がある。ホーム画面810には、組織が各サービスの提供者との間で利用契約したアプリに対応するアプリボタンが表示される。組織に所属する一般ユーザが組織ID、ユーザID及びパスワード等の認証情報を用いてMFP500から第一クラウドシステム100にログインすることにより、MFP500のブラウザ501にホーム画面810が表示される。更に、各ユーザは、ホーム画面810に表示されたアプリの利用時(又は利用開始時)に、組織IDと関連付けられた自身のユーザIDにてアプリに対するユーザ登録を行う必要がある。
ユーザがアプリボタン811aを押下して、アプリの呼び出しを指示することにより、ブラウザの画面は図6(b)に遷移する。
図6(b)は、第二クラウドシステム200上のアプリが提供するアプリ画面820の一例を示す図である。アプリ画面820は、ユーザリストボタン821、登録ボタン822、及び戻るボタン823を備えている。ユーザリストボタン821は、アプリを利用するユーザをリスト表示するためのボタンであり、登録ボタン822はユーザIDにアプリを関連付けて登録するためのボタンであり、戻るボタン823はホーム画面810に遷移するためのボタンである。
ユーザが登録ボタン822を押下してユーザ登録を指示することにより、ブラウザの画面が遷移する。なお、本実施形態のように未登録のユーザが新規にユーザ登録をする場合は図6(c)に示す画面に遷移する。
図6(c)は、ユーザにメールアドレスを入力させるアドレス入力画面830の一例を示す図である。
ユーザがアドレス入力欄831にメールアドレスを入力してSendボタン832を押下すると、入力されたメールアドレスが第二クラウドシステム200に送信される。第二クラウドシステム200は、送信されたメールアドレス宛にユーザ登録用URLを含む電子メールを送信する。
図6(d)は、ユーザ登録画面等の一例を示す図である。
ユーザが、MFP500とは異なるクライアント端末であるPC600にて電子メールを受信し、受信した電子メールに記載されたユーザ登録用URLをブラウザ601にて開くと、ユーザ登録画面840が表示される。
ユーザ登録画面840は、メールアドレス以外のユーザ情報を登録する画面である。ユーザは、ユーザ登録画面840にて必要な情報を入力し、保存ボタン841を押下すると、ユーザ情報が第二クラウドシステム200のユーザ登録部212(図中、App.a Authentication & ID management)に送信される。ユーザ登録部212は、送信されたユーザ情報を第二ユーザ管理DB204(図4)のユーザ管理テーブル(図5(a))に記憶させる。
図6(e)は、外部サービスとの認可連携を実行する認可連携画面850の一例を示す図である。図6(d)に示すユーザ情報の登録が成功した場合、もし対象外部サービスが未認証であれば認証画面(ログイン画面)が表示される。ユーザは、外部サービス用のユーザID/パスワード情報を入力し、認証が完了すると、PC600のブラウザ601には認可連携画面850が表示される。
認可連携画面850は、アプリが特定の外部サービスとの認可連携を必要とするアプリの場合、例えばアプリがスキャナアプリであり、画像読取装置にて読み取ったスキャンデータを特定の外部ストレージサービスに送信して記憶させる場合に、当該アプリと特定の外部ストレージサービスとが連携できるように、外部ストレージサービスがアプリを認可する処理(外部ストレージサービスに対するアクセス許可をアプリに与える処理)を実行するための画面である。
認可連携画面850は許可ボタン851を有している。ユーザは、アプリと特定の外部サービスとの認可連携を受け容れる場合に許可ボタン851を押下する。
<フローチャート/シーケンスチャート>
第二クラウドシステムにおけるユーザ登録処理及びサービス連携処理について図6、図8を参照して説明する。図7は、第二クラウドシステムのユーザ登録及びサービス連携に係る処理を示したシーケンス図である。
ステップS101において、ユーザがMFP500のブラウザ501からホーム画面810(図6(a))を要求する指示を入力する。即ち、ユーザは、MFP500のブラウザ501に表示されたログイン画面に組織ID、ユーザID及びパスワードを入力し、第一クラウドシステム100へのログイン(初回ログイン)を指示する。
ステップS103において、MFP500は、第一クラウドシステム100に対して組織ID、ユーザID及びパスワードを送信してシステムへのログインをリクエストすると共に、ホーム画面810をリクエストする。また、MFP500のブラウザ501は、組織IDをWebストレージ704(図4)のセッションストレージに保持する。
ステップS104において、第一クラウドシステム100は認証モジュールによりログイン認証処理を実行する。
ステップS105において、第一クラウドシステム100は認証処理が成功した場合にMFP500のブラウザ501にホーム画面810を返却する。これにより、ブラウザ501にホーム画面810が表示される。
ステップS107においてユーザは、ホーム画面810に表示されたアプリボタン811aを押下することにより、第二クラウドシステム200上のアプリの呼び出しを指示する。
ステップS109においてMFP500は、第二クラウドシステム200に対してアプリの呼び出しをリクエストする。
ステップS111において、第二クラウドシステム200はMFP500に対してアプリ画面820(図6(b))を返却する。
ステップS113において、ユーザは、アプリ画面820の登録ボタン822を押下して、ユーザ登録の実行を指示する。
ステップS115において、MFP500は、第二クラウドシステム200に対して、アドレス入力画面830(図6(c)、図8(a))をリクエストする。
ステップS117において、第二クラウドシステム200のユーザ登録部212は、MFP500に対してアドレス入力画面830を返却する。
ステップS119において、ユーザは、アドレス入力画面830のアドレス入力欄831に自身のメールアドレスを入力し、Sendボタン832を押下する。
ステップS121においてMFP500のブラウザ501は、アプリにより提供されるサービスを識別するサービスIDと入力されたメールアドレスと、セッションストレージに保持されている組織IDと共に、該当メールアドレス宛への電子メールの送信リクエストと電子メールの送信完了画面の送付リクエストを送信する。
ステップS123において、ユーザ登録部212は、新規なユーザ情報として、ユーザIDに組織IDとメールアドレスを関連付けたレコードをユーザ管理テーブル(図5(a))に作成し、第二ユーザ管理DB204に記憶させる。また、ユーザ登録部212は、当該ユーザ用の外部サービス連携用テーブル(図5(b))を作成して第二ユーザ管理DB204に記憶させる。
ステップS125において、第二クラウドシステム200のメール送信部211は、該当アドレスにユーザ登録用URLを記載した電子メールを送信する。
ステップS127において、メール送信部211は、MFP500のブラウザ501にメール送信完了画面(図8(b))を返却する。
本ステップ以降、ユーザはPC600を操作する。
ステップS129において、PC600は電子メールを受信する。なお、電子メールはブラウザ601で受信しても、専用のメールアプリで受信してもよい。
ステップS131においてユーザは、受信した電子メールに記載されたURLへのリンクを選択し、当該URLに示されたWebページの表示を指示する。
ステップS133において、PC600のブラウザ601は、第二クラウドシステム200のユーザ登録部212に対してユーザ登録画面840(図6(d)、図9(a))を要求する。
ステップS135において、ユーザ登録部212は、ユーザ登録画面840を返却する。
ステップS137において、ユーザは、ユーザ登録画面の各項目欄に必要な事項を入力し、保存ボタン841(図6(d)、図9(a))を押下する。
ステップS139において、ブラウザ601は、第二クラウドシステム200に対してユーザ情報の登録リクエストと、アプリにより提供されるサービスと連携する外部サービスの判定リクエストを送信する。
ステップS141において、ユーザ登録部212は、入力された情報をユーザIDと関連付けて第二ユーザ管理DB204のユーザ管理テーブル(図5(a))に記憶させる。
ステップS143において、サービス認可部214は、ステップS121にて送信されたサービスIDに基づいて、当該サービスと連携する外部サービスを判定し(外部サービス判定ステップ)、判定結果をユーザ登録部212に渡す。
ステップS145において、ユーザ登録部212は、ユーザ登録完了画面(図9(b))を返却する。ユーザ登録完了画面は、サービスIDに関連付けられた外部サービスとの認可連携を実行するか否かをユーザに選択させるボタンを含む。
ステップS147において、ユーザは、サービスIDに関連付けられた外部サービスとの認可連携を実行する場合、ユーザ登録完了画面870に表示されたコネクトボタン871(図9(b))を押下する。
ステップS149において、ブラウザ601は、認可連携画面を要求する。
ステップS151において、サービス認可部214は外部サービス301に対して、認可連携画面を要求する。
ステップS153において、外部サービス301は、認可連携画面850(図6(e)、図10(a))を返却する。なお、外部サービスが未認証である場合、外部サービス301はステップS153に先立って認証画面を返却する。ユーザから外部サービス用のユーザIDとパスワードが入力されて認証処理が完了した後に、外部サービス301はステップS153の処理を実行する。
ステップS155において、サービス認可部214は、認可連携画面850を返却する。
ステップS157において、ユーザは外部サービス301との認可連携を許可する場合、認可連携画面850の許可ボタン851を押下する。
ステップS159において、ブラウザ601は、サービス認可部214に対して認可連携をリクエストする。
ステップS161において、サービス認可部214は、外部サービス301に対して認可連携をリクエストする(サービス認可ステップ)。
ステップS163において、外部サービス301は認可連携処理を実行し、認可連携の可否を応答する。
ステップS164において、ユーザ登録部212は、外部サービス301による認可連携処理の結果を表す認可可否情報を含む認可連携情報を、ユーザIDに関連付けて第二ユーザ管理DB204中の外部サービス連携用テーブルに記憶させる。即ち、ユーザ登録部212は、ユーザ毎に用意された外部サービス連携用テーブルに認可連携処理の結果(認可連携の可否、及び認可スコープ)を記憶させる。
ステップS165においてサービス認可部214は、認可連携確認画面(図10(b))をブラウザ601に返却する。
<画面サンプル>
図8は、実際の画面例を示す図であり、(a)はアドレス入力画面を、(b)はメール送信完了画面を示す図である。
図8(a)に示すアドレス入力画面830は、図6(c)に対応する画面であり、図7のシーケンスチャートのステップS119にてブラウザ501に表示される画面である。即ち、アドレス入力画面830は第一クラウドシステム100のユーザが第一クラウドシステム100を介して第二クラウドシステム200が提供するサービスを利用する場合(図6(b)の登録ボタン822を押下した場合)にMFP500のブラウザ501に表示される画面である。第二クラウドシステム200のサービスを新規に利用するユーザは、第二クラウドシステム200に対してアカウントを登録する必要がある。第二クラウドシステム200にアカウント登録されていない第一クラウドシステム100用のユーザIDに対しては、アドレス入力画面830が表示される。
アドレス入力画面830のアドレス入力欄831にメールアドレスを入力し、Sendボタン832を押下すると、MFP500のブラウザ501に表示される画面は図8(b)に示すメール送信完了画面860に遷移する(ステップS127)。
図9は、実際の画面例を示す図であり、(a)はユーザ登録画面を、(b)はユーザ登録完了画面を示す図である。
図9(a)に示すユーザ登録画面840は、図6(d)に対応する画面であり、図7のステップS137にてPC600のブラウザ601に表示される画面である。ユーザ登録画面は新規にアカウント登録する各ユーザに対して固有に与えられる画面であり、メールアドレスの項目には図9(a)にて入力したメールアドレスが既に入力されている。ユーザがアカウント登録に必要な項目として、ユーザ名、パスワード、姓名を各欄に入力し、保存ボタン841を押下することでアカウントの登録処理が実行される。
図9(b)に示すユーザ登録完了画面870は、ユーザ登録画面840で保存ボタン841を押下した場合に表示される画面であり、図7のステップS147にてPC600のブラウザ601に表示される画面である。引き続き、外部サービスとの認可連携を希望する場合、ユーザはコネクトボタン871を押下する。
図10は、実際の画面例を示す図であり、(a)は認可連携画面を、(b)は認可連携確認画面を示す図である。
図10(a)に示す認可連携画面850は、図6(e)に対応する画面であり、図7のステップS157にてPC600のブラウザ601に表示される画面である。認可連携画面850は外部サービスから提供される。外部サービスとの認可連携を希望する場合、ユーザは許可ボタン851を押下する。
図10(b)に示す認可連携確認画面880は、図7のステップS165にてPC600のブラウザ601に返却される画面である。ユーザは、ユーザIDに対する外部サービスとの認可連携状態、及び認可連携が正常に終了したか否かを認可連携確認画面880にて確認できる。
<各クラウドシステムにおけるユーザ管理方法>
各クラウドシステムにおけるユーザ管理方法について補足する。
第一クラウドシステム100においては、ユーザ情報がサービスアプリごとに管理される。即ち、図6(a)のホーム画面に表示された第一クラウドシステム100の各アプリの利用時(又は利用開始時)に、ユーザはアプリの画面から(アプリ上で)ユーザ名(ユーザID)、パスワード、姓名を入力してアプリ毎にユーザ登録する必要がある。アプリに対して登録されたユーザのユーザIDは、初回ログイン時に入力された組織IDに関連付けて管理される。また、外部サービスとの認可連携処理は、各アプリに対するユーザ登録の際に実行される。
第二クラウドシステム200においては、ユーザ情報がシステム内で一元に管理されている。第一クラウドシステム100を介在させずに第二クラウドシステム200を利用する場合、アプリの利用開始前に予めユーザ名(ユーザID)、組織名(組織ID)、パスワード、姓名等のユーザ情報の登録処理、及び外部サービスとの認可連携処理を完了している必要がある。
本実施形態は、第一クラウドシステム100を介して第二クラウドシステム200のサービスを利用する場合に、第一クラウドシステム100と同様にアプリの利用時(又は利用開始時)にアプリの画面からユーザ登録と外部サービスとの認可連携を行うようにしたものである。ユーザは、図6(c)のアドレス入力画面に入力したアドレス宛に送信された電子メールを開き、該電子メールに記載されたURLにアクセスすることで、ユーザ情報の登録から外部サービスとの認可連携までの処理を一連の操作の中で実行することができる。
即ち、アプリから通知されるサービスIDを利用することによって、アプリに対するユーザ登録の有無や認可連携の有無を判定することができるので、ユーザが、アプリの利用開始前に、予めクラウドシステムに対するユーザ登録や、外部サービスとの認可連携を行わなくともよい。従って、ユーザビリティが向上する。
〔第二の実施形態〕
本発明の第二の実施形態に係るサービス連携システムについて説明する。第二クラウドシステムにおいては、組織が契約している何れかのアプリに対してユーザ登録を行えば、組織が契約している他のアプリに対してもユーザが関連付けられるため、以降、ユーザはユーザ情報の入力操作(アプリに対するユーザ登録)をしなくとも他のアプリを利用することができる。しかし、外部サービスとの認可連携が完了していないアプリについては、外部サービスと連携したサービスを提供できない。
そこで、本実施形態においては、第二クラウドシステムの利用者として登録されたユーザについて、簡易な操作で外部サービスとの認可連携を行うようにした点に特徴がある。具体的には、他のアプリについてはユーザ情報の入力を省略してユーザ認証のみを行い、ユーザ認証できた場合に外部サービスとの認可連携を行う点に特徴がある。
<ユーザ登録の操作概要>
図11は、第一クラウドシステムから第二クラウドシステムのアプリケーションを利用する際に実行されるサービス連携処理に係る画面遷移及び処理概要の一例を示す図である。なお、図6に示した画面と同様の画面については、適宜説明を省略する。
図11(a)は、MFP500に表示されるホーム画面810の一例を示す図である。
ホーム画面810には、第一クラウドシステム100上のアプリA、Bを夫々呼び出すアプリボタン811A、811B、及び第二クラウドシステム200上のアプリa、bを夫々呼び出すアプリボタン811a、811bが表示されている。本実施形態において第二クラウドシステムからは複数のアプリが提供されるものとする。ただし、アプリa、bは、アプリ内で連携する外部サービスが互いに異なる。即ち、アプリaは外部ストレージサービスStorageXと連携し、スキャナエンジン519(図3)にて読み取ったスキャンデータをStorageXに送信して保存するアプリである。また、アプリbは外部ストレージサービスStorageYと連携し、スキャンデータをStorageYに送信して保存するアプリである。
ユーザがアプリボタン811bを押下して、アプリbの呼び出しを指示することにより、ブラウザの画面は図11(b)に遷移する。
図11(b)は、第二クラウドシステム200上のアプリが提供するアプリ画面820の一例を示す図である。アプリ画面820は図6(b)と同様であるが、操作ボタンとして登録・認証ボタン824を備えている。
ユーザが登録・認証ボタン824を押下することにより、MFP500のブラウザ501の画面が図11(c)に示す画面に遷移する。
図11(c)は、ユーザにユーザIDとパスワードを入力させるID/PW入力画面890の一例を示す図である。ID/PW入力画面890は、ID/PW入力欄891、OKボタン892、新規登録ボタン893を備える。
ID/PW入力画面890は、登録済みユーザに対しては第二クラウドシステム200にログインする画面として機能し、新規ユーザに対しては第二クラウドシステム200にユーザ登録を促す画面として機能する。即ち、登録済みユーザがID/PW入力欄891にユーザIDとパスワードを入力してOKボタン892を押下すると、入力されたユーザIDとパスワードに組織IDが付加されて第二クラウドシステム200に送信される。第二クラウドシステム200は、送信されたユーザIDと組織IDとパスワードを用いてログイン認証を実行する。ログイン認証が成功した場合、ブラウザ501の画面が図11(d)に示す画面に遷移する。
新規ユーザが「新規登録はこちら」等の表示に従って新規登録ボタン893を押下することで、画面が図6(c)に示すアドレス入力画面に遷移し、ユーザ登録処理へと進むことができる。
このように、本実施形態においては、ユーザが第二クラウドシステム200に既に登録されている否かによって処理が異なる。以下の説明では、アプリa(ScanToStorageX)について既にユーザ登録処理とStorageXに対する認可連携処理(第一の実施形態において説明した一連の処理)が完了しているものとする。また、アプリb(ScanToStorageY)については、初回の利用であり、StorageYに対する認可連携が行われていないものとする。
第一の実施形態においては、第二クラウドシステムの新規ユーザが登録ボタン822(図6)を押下することで、ユーザ登録処理と認可連携処理が実行された。しかし、アプリaから第二クラウドシステムに対するユーザ登録が既に行われている本実施形態においては、処理を簡便にするためにユーザ登録処理を省略し、アプリbと連携するStorageYに対する認可連携のみを実行する。
図11(d)は、外部サービスとの認可連携を実行する認可連携画面850の一例を示す図である。本図に示す画面は図6(e)に示す認可連携画面850と同様の画面であるので、説明を省略する。ただし、図11(d)はMFP500のブラウザ501に表示される点で図6(e)とは異なっている。
<シーケンスチャート>
第二クラウドシステムにおけるサービス連携処理について説明する。
図12は、サービス連携に係る処理を示したシーケンス図である。なお、図7と同様のステップについては適宜説明を省略する。
ステップS201〜S211は、ステップS101〜S111と同様である。
ステップS213において、ユーザは、アプリ画面820の登録・認証ボタン824(図11(b))を押下する。
ステップS215において、MFP500は、第二クラウドシステム200に対して、ID/PW入力画面(図11(c))をリクエストする。
ステップS217において、第二クラウドシステム200のユーザ認証部213は、MFP500に対してID/PW入力画面890を返却する。
ステップS219において、ユーザは、ID/PW入力画面890のID/PW入力欄891にユーザID、及びパスワードを入力し、OKボタン892を押下する。
ステップS221においてMFP500のブラウザ501は、第二クラウドシステム200に対して、サービスを識別するサービスID、ユーザID、パスワード、セッションストレージに保持されている組織ID及びログインリクエストを送信する。
ステップS223において、ユーザ認証部213はユーザ認証処理を実行する。即ち、ユーザ認証部213は、MFP500のブラウザ501から送信されたユーザIDと組織IDとパスワードを、第二ユーザ管理DB204のユーザ管理テーブル(図5(a))内のデータを照合してユーザの認証を行う。認証できた場合は、ステップS227に進む。
ステップS225において、サービス認可部214は、ステップS221にて送信されたサービスIDに基づいて、当該サービスと連携する外部サービスを判定し(外部サービス判定ステップ)、判定結果をユーザ登録部212に渡す。
ステップS226において、ユーザ登録部212は外部サービス連携用テーブルに基づいて、ステップS225において判定された外部サービスが当該ユーザに対して既に認可連携されているか否かを判定する。判定された外部サービスが当該ユーザに対して未連携の外部サービスである場合、ステップS227に進む。
ステップS227において、サービス認可部214はサービスIDに関連付けられている外部サービス301に対して、認可連携画面を要求する。
ステップS229おいて、外部サービス301は、認可連携画面(図11(d))を返却する。
ステップS231において、サービス認可部214は、認可連携画面を返却する。
ステップS233〜S241は、処理に関係するブラウザがMFP500のブラウザ501である点以外は図7のステップS157〜S165と同様であるため、説明を省略する。
このように、本実施形態によれば、第二クラウドシステム200に登録されているユーザであっても、アプリから渡されるサービスIDに基づいて、未連携の外部サービスに対して認可連携処理を要求できる。
〔第三の実施形態〕
本発明の第三の実施形態に係るサービス連携システムについて説明する。
アプリが外部サービスに対して要求する権限の範囲(認可スコープ)は、アプリによって異なる。例えば、外部ストレージサービスからデータを読み出して処理するアプリと、処理したデータを外部ストレージサービスに記憶させるアプリとでは、必要とする認可スコープが異なる。従って、あるアプリとの間で既に認可連携されている外部サービスであっても、より広い認可スコープを必要とする他のアプリを利用する場合には、改めて他のアプリに対応した認可スコープで認可連携をしなければ、他のアプリを利用することができない。
そこで、本実施形態においては、許可されていない認可スコープを必要とするアプリを利用する場合に、当該認可スコープについて改めて認可連携を実行する。
<ユーザ登録の操作概要>
図13は、第一クラウドシステムから第二クラウドシステムのアプリケーションを利用する際に実行されるサービス連携処理に係る画面遷移及び処理概要の一例を示す図である。なお、図11に示した画面と同様の画面については、適宜説明を省略する。
図13(a)は、MFP500に表示されるホーム画面810の一例を示す図である。
ホーム画面810には、第一クラウドシステム100上のアプリA、Bを夫々呼び出すアプリボタン811A、811B、及び第二クラウドシステム200上のアプリa、bを夫々呼び出すアプリボタン811a、811bが表示されている。
本実施形態において、アプリa、bは、アプリ内で連携する外部サービスがStorageYであるという点で共通するが、アプリbがStorageYに対して要求する認可スコープはアプリaよりも広いものとする。また、アプリa(PrintFromStorageY)についてはユーザ登録処理が行われており、StorageYに対する認可連携処理がアプリaの必要な認可スコープ(スコープa)について完了しているものとする。更に、アプリb(ScanToStorageY)については、初回の利用であり、アプリbが必要とする認可スコープ(スコープb)の一部について、StorageYとは認可連携が行われていないものとする。
ユーザがアプリボタン811bを押下して、アプリbの呼び出しを指示することにより、ブラウザの画面は図13(b)に遷移する。
図13(b)は、第二クラウドシステム200上のアプリが提供するアプリ画面820の一例を示す図である。ユーザが登録・認証ボタン824を押下することにより、MFP500のブラウザ501の画面が図13(c)に示す画面に遷移する。
図13(c)は、ユーザにユーザIDとパスワードを入力させるID/PW入力画面890の一例を示す図である。ユーザがID/PW入力欄891にユーザIDとパスワードを入力してOKボタン892を押下し、ログイン認証が成功した場合、ブラウザ501の画面が図13(d)に示す認可連携画面に遷移する。
図13(d)は、外部サービスとの認可連携を実行する認可連携画面850の一例を示す図である。認可連携画面850には、アプリbが必要とする認可スコープが表示される。ユーザは、アプリbと外部サービスとの認可連携について、表示された認可スコープを受け容れる場合に許可ボタン851を押下することで、アプリbに付いての認可連携処理が実行される。
<シーケンスチャート>
第二クラウドシステムにおけるサービス連携処理について説明する。図14は、サービス連携に係る処理を示したシーケンス図である。なお、図12と同様のステップについては適宜説明を省略する。
ステップS301〜S325は、ステップS201〜S225と同様である。
ステップS326において、ユーザ登録部212は、ステップS321において送信されたサービスIDに関連付くサービスが要求する認可スコープと、ステップS325において判定された外部サービスが認可連携している認可スコープの範囲を判定する。即ち、ユーザ登録部212は、外部サービス連携用テーブルに基づいて、サービスが要求する認可スコープが、外部サービスと認可連携されている認可スコープの範囲内であるか否かを判定する。サービスが要求する認可スコープの全部又は一部が未許可である場合、再認可連携が必要となるため、ステップS227に進む。
ステップS227において、サービス認可部214はサービスIDに関連付けられている外部サービス301に対して、認可連携画面を要求する。
ステップS229おいて、外部サービス301は、認可連携画面(図13(d))を返却する。
ステップS231において、サービス認可部214は、認可連携画面を返却する。
ステップS333〜S341は、ステップS233〜S241と同様であるため、説明を省略する。
このように、本実施形態によれば、第二クラウドシステム上で互いに認可スコープが異なる複数のアプリを利用する場合であっても、再度の認可連携処理を実行することで、各アプリを外部サービスと連携させて利用することができる。
〔本発明の実施態様例と作用、効果のまとめ〕
<第一の実施態様>
本態様は、第一アプリケーション(サービスアプリ112)のユーザに係る第一ユーザ情報を第一アプリケーションの利用時に第一アプリケーション上で登録可能な第一ユーザ管理手段(機能モジュール101、第一ユーザ管理DB102)を備えた第一プラットフォームシステム(第一クラウドシステム100)と、外部サービス301との連携情報を含む第二アプリケーション(サービスアプリ215)のユーザに係る第二ユーザ情報を第二アプリケーションの利用開始前に登録させる第二ユーザ管理手段(第二ユーザ管理DB204、ユーザ登録部212)を備えた第二プラットフォームシステム(第二クラウドシステム200)と、が接続されたサービス連携システム1であって、第二プラットフォームシステムは、第一プラットフォームシステムを介して呼び出された第二アプリケーション上で第二ユーザ情報の登録リクエストを受け付けた場合に、第二アプリケーションと連携する外部サービスを判定する外部サービス判定手段(サービス認可部214)と、判定された外部サービスに対して認可連携処理を要求するサービス認可手段(サービス認可部214)と、を備え、第二ユーザ管理手段は、外部サービスによる認可連携処理の結果を表す認可連携情報をユーザ識別情報に関連付ける(ユーザ毎に用意された外部サービス連携用テーブルに記憶させる)ことを特徴とする。
第一プラットフォームシステムは、第一アプリケーションに係るユーザ登録を第一アプリケーションの利用時に第一アプリケーション上で行うことを前提とするシステムである。これに対し、第二プラットフォームシステムは、第二アプリケーションに係るユーザ登録と外部サービスとの認可連携とを、第二アプリケーションの利用開始前に実施しておくことを前提とするシステムである。仮に、第一プラットフォームシステムのユーザが第二プラットフォームシステム上のサービスを利用する場合、ユーザ登録や外部サービスとの認可連携に係る処理フローが異なるため、処理の違いに困惑するという問題がある。
本態様は、第一プラットフォームシステムのユーザが、第一プラットフォームシステムを介して第二プラットフォームシステム上の第二アプリケーションを利用する場合に、第一プラットフォームシステムを利用する場合と同様の感覚で第二アプリケーションに対するユーザ登録や外部サービスとの認可連携を実施できるようにしたものである。即ち、ユーザが第二アプリケーションに関わる一連の操作の中で、ユーザ登録と外部サービスとの認可連携を実施できるようにしたので、事前にユーザ登録と外部サービスとの認可連携を実施しておく必要がなく、第一プラットフォームシステムと同様の感覚で第二プラットフォームシステムを利用できる。
<第二の実施態様>
本態様に係るサービス連携システム1において、サービス認可手段(サービス認可部214)は、外部サービス判定手段(サービス認可部214)によって判定された外部サービス301が第二ユーザ情報の登録を要求するユーザに対して未連携の外部サービスである場合に、当該外部サービスに対して認可連携処理を要求することを特徴とする。
ここで、サービス認可手段は、第二プラットフォームシステムに新規に登録されるユーザについて、第二アプリケーションと連携する外部サービスに対して認可連携処理を要求する。また、サービス認可手段は、第二プラットフォームシステムに既に登録されているユーザについて、認可連携されていない外部サービスと連携する第二アプリケーションへのユーザ登録が要求された場合、当該外部サービスに対して認可連携処理を要求する。
このように、本態様によれば、第二プラットフォームシステムのアプリケーションを利用するユーザとして登録されているか否かに関わらず、第二アプリケーションに関わる一連の操作の中で、未連携の外部サービスとの認可連携を実施できる。
<第三の実施態様>
本態様に係るサービス連携システム1において、サービス認可手段(サービス認可部214)は、第二アプリケーション(サービスアプリ215)が外部サービス301に対して要求する認可スコープの中に、ユーザに係る未許可の認可スコープがある場合に、外部サービスに対して未許可の認可スコープに係る認可連携を要求することを特徴とする。
登録ユーザとの間で既に認可連携されている外部サービスであっても、既にユーザ登録されている第二アプリケーションと、新規にユーザ登録する第二アプリケーションとでは、外部サービスに要求する認可スコープが異なる場合がある。このような場合であっても、許可されていない認可スコープについて、新規な第二アプリケーションに関わる一連のユーザ登録操作の中で認可連携を実施し、ユーザが完全なサービスを受けられるようにする。
<第四の実施態様>
本態様に係るサービス連携システム1において、第二プラットフォームシステム(第二クラウドシステム200)は、電子メールを送信するメール送信手段(メール送信部211)を備え、第二ユーザ管理手段(第二ユーザ管理DB204、ユーザ登録部212)は、未登録のユーザから第二ユーザ情報の登録リクエストを受け付けた場合に、メールアドレスの入力を要求するアドレス入力画面830を送信し、該ユーザ用の第二ユーザ情報の入力画面を形成するユーザ登録用URLを生成し、メール送信手段は、アドレス入力画面に入力されたメールアドレス宛に、ユーザ登録用URLを記述した電子メールを送信することを特徴とする。
<第五の実施態様>
本態様は、第一アプリケーション(サービスアプリ112)のユーザに係る第一ユーザ情報を第一アプリケーションの利用時に第一アプリケーション上で登録可能な第一ユーザ管理手段(機能モジュール101、第一ユーザ管理DB102)を備えた第一プラットフォームシステム(第一クラウドシステム100)と、外部サービス301との連携情報を含む第二アプリケーション(サービスアプリ215)のユーザに係る第二ユーザ情報を第二アプリケーションの利用開始前に登録させる第二ユーザ管理手段(第二ユーザ管理DB204、ユーザ登録部212)を備えた第二プラットフォームシステム(第二クラウドシステム200)と、が接続されたシステム(サービス連携システム1)におけるサービス連携方法であって、第一プラットフォームシステムを介して呼び出された第二アプリケーション上で第二ユーザ情報の登録リクエストを受け付けた場合に、第二アプリケーションと連携する外部サービスを判定する外部サービス判定ステップ(ステップS143)と、判定された外部サービスに対して認可連携処理を要求するサービス認可ステップ(ステップS161)と、外部サービスによる認可連携処理の結果を表す認可連携情報をユーザ識別情報に関連付けるステップ(ステップS164)と、を実行することを特徴とする。
本態様は、第一の実施態様と同様の効果を奏する。
<第六の実施態様>
本態様は、第一アプリケーション(サービスアプリ112)のユーザに係る第一ユーザ情報を第一アプリケーションの利用時に第一アプリケーション上で登録可能な第一ユーザ管理手段(機能モジュール101、第一ユーザ管理DB102)を備えた第一プラットフォームシステム(第一クラウドシステム100)に接続されて、外部サービス301との連携情報を含む第二アプリケーション(サービスアプリ215)のユーザに係る第二ユーザ情報を第二アプリケーションの利用開始前に登録させる第二ユーザ管理手段(第二ユーザ管理DB204、ユーザ登録部212)を備えたサーバ(第二クラウドシステム200を提供するサーバ)であって、第一プラットフォームシステムを介して呼び出された第二アプリケーション上で第二ユーザ情報の登録リクエストを受け付けた場合に、第二アプリケーションと連携する外部サービスを判定する外部サービス判定手段(サービス認可部214)と、判定された外部サービスに対して認可連携処理を要求するサービス認可手段(サービス認可部214)と、を備え、第二ユーザ管理手段は、外部サービスによる認可連携処理の結果を表す認可連携情報をユーザ識別情報に関連付ける(ユーザ毎に用意された外部サービス連携用テーブルに記憶させる)ことを特徴とする。
本態様は、第一の実施態様と同様の効果を奏する。
1…サービス連携システム、100…第一クラウドシステム(第一プラットフォームシステム)、101…機能モジュール(第一ユーザ管理手段)、102…第一ユーザ管理DB(第一ユーザ管理手段)、111…ランチャーアプリ、112…サービスアプリ(第一アプリケーション)、200…第二クラウドシステム(第二プラットフォームシステム)、201…認証モジュール、202…GUIモジュール、203…サービスモジュール、204…第二ユーザ管理DB(第二ユーザ管理手段)、211…メール送信部(メール送信手段)、212…ユーザ登録部(第二ユーザ管理手段)、213…ユーザ認証部(ユーザ認証手段)、214…サービス認可部(外部サービス判定手段、サービス認可手段)、215…サービスアプリ(第二アプリケーション)、217…キャッシュ、300…外部サービス群、301…外部サービス、400…メール受信サーバ、500…MFP、501…ブラウザ、510…コントローラ、511…CPU、512…ROM、513…RAM、514…HDD、515…操作表示IF、516…操作表示部、517…通信IF、518…エンジン制御部、519…スキャナエンジン、520…プリントエンジン、600…PC、601…ブラウザ、611…CPU、612…ROM、613…RAM、614…HDD、615…操作部、616…表示部、617…通信IF、700…クライアント端末、701…ブラウザ、702…UI部、703…Cookie保持部、704…Webストレージ、810…ホーム画面、811…アプリボタン、820…アプリ画面、821…ユーザリストボタン、822…登録ボタン、823…戻るボタン、824…登録・認証ボタン、830…アドレス入力画面、831…アドレス入力欄、840…ユーザ登録画面、841…保存ボタン、850…認可連携画面、851…許可ボタン、860…メール送信完了画面、870…ユーザ登録完了画面、871…コネクトボタン、880…認可連携確認画面、890…IF/PW入力画面、891…IF/PW入力欄、892…OKボタン、893…新規登録ボタン
特開2016−128966公報

Claims (6)

  1. 第一アプリケーションのユーザに係る第一ユーザ情報を前記第一アプリケーションの利用時に前記第一アプリケーション上で登録可能な第一ユーザ管理手段を備えた第一プラットフォームシステムと、外部サービスとの連携情報を含む第二アプリケーションのユーザに係る第二ユーザ情報を前記第二アプリケーションの利用開始前に登録させる第二ユーザ管理手段を備えた第二プラットフォームシステムと、が接続されたサービス連携システムであって、
    前記第二プラットフォームシステムは、前記第一プラットフォームシステムを介して呼び出された前記第二アプリケーション上で前記第二ユーザ情報の登録リクエストを受け付けた場合に、前記第二アプリケーションと連携する前記外部サービスを判定する外部サービス判定手段と、判定された前記外部サービスに対して認可連携処理を要求するサービス認可手段と、を備え、
    前記第二ユーザ管理手段は、前記外部サービスによる前記認可連携処理の結果を表す認可連携情報を前記第二ユーザ情報に含まれるユーザ識別情報に関連付けることを特徴とするサービス連携システム。
  2. 前記サービス認可手段は、前記外部サービス判定手段によって判定された前記外部サービスが前記第二ユーザ情報の登録を要求するユーザに対して未連携の外部サービスである場合に、当該外部サービスに対して前記認可連携処理を要求することを特徴とする請求項1に記載のサービス連携システム。
  3. 前記サービス認可手段は、前記第二アプリケーションが前記外部サービスに対して要求する認可スコープの中に、前記ユーザに係る未許可の認可スコープがある場合に、前記外部サービスに対して前記未許可の認可スコープに係る前記認可連携処理を要求することを特徴とする請求項1又は2に記載のサービス連携システム。
  4. 前記第二プラットフォームシステムは、電子メールを送信するメール送信手段を備え、
    前記第二ユーザ管理手段は、未登録のユーザから前記第二ユーザ情報の登録リクエストを受け付けた場合に、前記第一プラットフォームシステムおよび前記第二プラットフォームシステムが提供するサービスを受ける電子機器にメールアドレスの入力を要求するアドレス入力画面を送信し、該ユーザ用の前記第二ユーザ情報の入力画面を形成するユーザ登録用URLを生成し、
    前記メール送信手段は、前記アドレス入力画面に入力された前記メールアドレス宛に、前記ユーザ登録用URLを記述した電子メールを送信することを特徴とする請求項1乃至3の何れか一項に記載のサービス連携システム。
  5. 第一アプリケーションのユーザに係る第一ユーザ情報を前記第一アプリケーションの利用時に前記第一アプリケーション上で登録可能な第一ユーザ管理手段を備えた第一プラットフォームシステムと、外部サービスとの連携情報を含む第二アプリケーションのユーザに係る第二ユーザ情報を前記第二アプリケーションの利用開始前に登録させる第二ユーザ管理手段を備えた第二プラットフォームシステムと、が接続されたシステムにおけるサービス連携方法であって、
    前記第一プラットフォームシステムを介して呼び出された前記第二アプリケーション上で前記第二ユーザ情報の登録リクエストを受け付けた場合に、前記第二アプリケーションと連携する前記外部サービスを判定する外部サービス判定ステップと、
    判定された前記外部サービスに対して認可連携処理を要求するサービス認可ステップと、
    前記外部サービスによる前記認可連携処理の結果を表す認可連携情報を前記第二ユーザ情報に含まれるユーザ識別情報に関連付けるステップと、
    を実行することを特徴とするサービス連携方法。
  6. 第一アプリケーションのユーザに係る第一ユーザ情報を前記第一アプリケーションの利用時に前記第一アプリケーション上で登録可能な第一ユーザ管理手段を備えた第一プラットフォームシステムに接続されて、外部サービスとの連携情報を含む第二アプリケーションのユーザに係る第二ユーザ情報を前記第二アプリケーションの利用開始前に登録させる第二ユーザ管理手段を備えたサーバであって、
    前記第一プラットフォームシステムを介して呼び出された前記第二アプリケーション上で前記第二ユーザ情報の登録リクエストを受け付けた場合に、前記第二アプリケーションと連携する外部サービスを判定する外部サービス判定手段と、
    判定された前記外部サービスに対して認可連携処理を要求するサービス認可手段と、を備え、
    前記第二ユーザ管理手段は、前記外部サービスによる前記認可連携処理の結果を表す認可連携情報を前記第二ユーザ情報に含まれるユーザ識別情報に関連付けることを特徴とするサーバ。
JP2017052806A 2017-03-17 2017-03-17 サービス連携システム、サービス連携方法、及びサーバ Active JP6880873B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017052806A JP6880873B2 (ja) 2017-03-17 2017-03-17 サービス連携システム、サービス連携方法、及びサーバ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017052806A JP6880873B2 (ja) 2017-03-17 2017-03-17 サービス連携システム、サービス連携方法、及びサーバ

Publications (2)

Publication Number Publication Date
JP2018156405A JP2018156405A (ja) 2018-10-04
JP6880873B2 true JP6880873B2 (ja) 2021-06-02

Family

ID=63717369

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017052806A Active JP6880873B2 (ja) 2017-03-17 2017-03-17 サービス連携システム、サービス連携方法、及びサーバ

Country Status (1)

Country Link
JP (1) JP6880873B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020087197A (ja) * 2018-11-29 2020-06-04 株式会社リコー 情報処理システム、情報処理プログラム、情報処理方法
JP7351948B2 (ja) 2022-02-07 2023-09-27 三菱電機Itソリューションズ株式会社 画面制御装置、画面制御方法及び画面制御プログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6153152B2 (ja) * 2012-11-02 2017-06-28 株式会社Future Tech Lab 情報システム、サーバ装置、および端末装置
JP6163170B2 (ja) * 2015-01-09 2017-07-12 エヌ・ティ・ティ・コミュニケーションズ株式会社 サービス連携システム、サービス連携装置、端末装置、サービス連携方法及びサービス連携プログラム

Also Published As

Publication number Publication date
JP2018156405A (ja) 2018-10-04

Similar Documents

Publication Publication Date Title
US8468576B2 (en) System and method for application-integrated information card selection
US9923889B2 (en) Data processing system, data processing apparatus and log in method
EP2756444B1 (en) Resource access authorization
US9608972B2 (en) Service providing system and data providing method that convert a process target data into output data with a data format that a service receiving apparatus is able to output
CN102685202B (zh) 在操作系统和应用之间共享用户id
US9455970B2 (en) Information processing system, information processing apparatus, and authentication method
RU2460232C1 (ru) Устройство для отправки изображений и способ аутентификации в устройстве для отправки изображений
US7921456B2 (en) E-mail based user authentication
JP6061633B2 (ja) デバイス装置、制御方法、およびそのプログラム。
JP5383838B2 (ja) 認証連携システム、idプロバイダ装置およびプログラム
JP2016004453A (ja) サービス提供システム、ログ情報提供方法及びプログラム
US20140122350A1 (en) System, apparatus, and method for license management
JP6354132B2 (ja) 中継装置、中継システム及びプログラム
JP2018195081A (ja) 情報処理システム、制御方法及びそのプログラム
JP6880873B2 (ja) サービス連携システム、サービス連携方法、及びサーバ
JP2015028704A (ja) サービス提供システム、サービス提供方法及びプログラム
US11995173B2 (en) Service providing system, application usage method, and information processing system
JP2016009466A (ja) Webサービスシステム、認証認可装置、情報処理装置、情報処理方法及びプログラム
JP2015026231A (ja) サービス提供システム、画像提供方法及びプログラム
JP7073199B2 (ja) システムおよびシステムにおける方法
JP6447766B2 (ja) サービス提供システム、データ提供方法及びプログラム
JP6848275B2 (ja) プログラム、認証システム及び認証連携システム
US11606361B2 (en) Cloud system, information processing system, and user registration method
JP2022165546A (ja) 認証システム
JP6299101B2 (ja) サービス提供システム、サービス提供方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200116

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201014

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201104

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201202

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: 20210406

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210419

R151 Written notification of patent or utility model registration

Ref document number: 6880873

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151