JP2018142122A - 情報処理装置及び情報処理プログラム - Google Patents

情報処理装置及び情報処理プログラム Download PDF

Info

Publication number
JP2018142122A
JP2018142122A JP2017035168A JP2017035168A JP2018142122A JP 2018142122 A JP2018142122 A JP 2018142122A JP 2017035168 A JP2017035168 A JP 2017035168A JP 2017035168 A JP2017035168 A JP 2017035168A JP 2018142122 A JP2018142122 A JP 2018142122A
Authority
JP
Japan
Prior art keywords
account
cloud service
cooperation
user
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2017035168A
Other languages
English (en)
Other versions
JP6897155B2 (ja
Inventor
臻瑞 張
Shinzui Cho
臻瑞 張
菅野 英介
Eisuke Sugano
英介 菅野
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox 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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP2017035168A priority Critical patent/JP6897155B2/ja
Priority to US15/784,197 priority patent/US10708254B2/en
Publication of JP2018142122A publication Critical patent/JP2018142122A/ja
Application granted granted Critical
Publication of JP6897155B2 publication Critical patent/JP6897155B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0815Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4541Directories for service discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/101Access control lists [ACL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles

Abstract

【課題】連携元のクラウドサービスにサインインしたユーザーが、連携先のクラウドサービスにアカウントを登録することなく、その連携先のクラウドサービスとの連携ができるようにした情報処理装置を提供する。
【解決手段】情報処理装置のサインイン手段は、連携元の第1のクラウドサービスにサインインしたユーザーが、連携先の第2のクラウドサービスにサインインする場合に、該第2のクラウドサービスに登録されているアカウントに他のアカウントとの連携を許可する旨の設定がされているときは、該ユーザーに、該第2のクラウドサービスへのサインインの操作を可能とする。
【選択図】なし

Description

本発明は、情報処理装置及び情報処理プログラムに関する。
特許文献1には、各ユーザーの作業負荷を増やすことなく、かつ、管理者によるIDマッピング情報の生成の負荷を軽減することを課題とし、端末装置とネットワークを介して通信可能なサーバー装置であって、前記端末装置のユーザーの固有IDを含むユーザー情報を前記端末装置から受信する受信手段と、前記受信手段により受信されたユーザー情報のうち前記端末装置により指定された属性情報を含むユーザー情報に含まれる固有IDと、前記サーバー装置において認証されるユーザー情報のうち前記属性情報を含むユーザー情報に含まれるユーザーの固有IDとを紐付けて、前記端末装置と前記サーバー装置との認証連携にかかるIDマッピング情報を生成する生成手段と、を有することが開示されている。
特許文献2には、互いに連携していないサイト間において、既存プリケーションの改修などの作業をしなくてもシングルサインオンを実現する仕組みを提供することを課題とし、連携元Webサイトにおけるユーザーアカウントと連携先Webサイトにおけるユーザーアカウントとが対応付けられたマッピングテーブルを記憶し、連携元Webサイトにおけるアカウント情報を取得し、取得したアカウント情報をマッピングテーブルを用いて連携先Webサイトのアカウント情報に変換し、変換されたアカウント情報を用いて連携先Webサイトにアクセスするべく、ユーザーに当該アカウント情報を返送することが開示されている。
特開2016−085638号公報 特開2013−149238号公報
1回の認証手続きで複数のクラウドサービスにアクセスできるようにするためにシングルサインオン(SSO:Single Sign On)技術が用いられている。このシングルサインオン技術では、例えば事前に一方のクラウドサービスにおけるアカウントと他方のクラウドサービスにおけるアカウントとを対応付ける(マッピング)ことが必要である。
本発明は、連携元のクラウドサービスにサインインしたユーザーが、連携先のクラウドサービスにアカウントを登録することなく、その連携先のクラウドサービスとの連携ができるようにした情報処理装置及び情報処理プログラムを提供することを目的としている。
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項1の発明は、連携元の第1のクラウドサービスにサインインしたユーザーが、連携先の第2のクラウドサービスにサインインする場合に、該第2のクラウドサービスに登録されているアカウントに他のアカウントとの連携を許可する旨の設定がされているときは、該ユーザーに、該第2のクラウドサービスへのサインインの操作を可能とするサインイン手段を有する情報処理装置である。
請求項2の発明は、クラウドサービスにおけるアカウントと認証方式別に連携の許可対象の組織とを対応させて記憶している第1の記憶手段と、前記組織と認証方式別に連携の許可可能か否かを示す情報とを対応させて記憶している第2の記憶手段と、アカウントと該アカウントが他のアカウントと連携可能か否かを示す情報とを対応させて記憶している第3の記憶手段と、連携元の第1のクラウドサービスにサインインしたユーザーのアカウントに対応する許可対象の組織を、前記第1の記憶手段から抽出する第1の抽出手段と、前記許可対象の組織に対応する認証方式別の許可可能か否かを示す情報を、前記第2の記憶手段から抽出する第2の抽出手段と、認証方式別の許可可能である組織のアカウントが他のアカウントと連携可能か否かを示す情報を、前記第3の記憶手段から抽出する第3の抽出手段と、連携可能であることを示す情報を抽出した場合に、前記ユーザーを連携先の第2のクラウドサービスにサインインの操作を可能とするサインイン手段を有する情報処理装置である。
請求項3の発明は、前記サインイン手段によって、前記ユーザーが前記第2のクラウドサービスにサインインした場合は、該ユーザーのアカウントと前記組織のアカウントとを対応付けて記憶する対応付手段をさらに有する請求項2に記載の情報処理装置である。
請求項4の発明は、前記サインイン手段は、前記第1のクラウドサービスにサインインしようとしているユーザーのアカウントが、前記対応付手段によって対応付けられて記憶されている場合は、前記第2のクラウドサービスにサインインすることが許可される請求項3に記載の情報処理装置である。
請求項5の発明は、前記対応付手段によって対応付けられて記憶されているアカウントの組を、前記第1の記憶手段、前記第2の記憶手段、前記第3の記憶手段のいずれか1つ以上との不整合を解消することによってメンテナンスを行うメンテナンス手段をさらに有する請求項3に記載の情報処理装置である。
請求項6の発明は、前記第1のクラウドサービスにサインインしようとしているユーザーのアカウントが、該第1のクラウドサービスに登録されているアカウントに連携されていない場合に、前記第1の抽出手段による処理を行うように制御する制御手段をさらに有する請求項2に記載の情報処理装置である。
請求項7の発明は、前記第1のクラウドサービスにサインインしようとしているユーザーのアカウントが、前記第2のクラウドサービスに登録されていない場合に、前記制御手段による処理を行うように制御する第2の制御手段をさらに有する請求項6に記載の情報処理装置である。
請求項8の発明は、コンピュータを、連携元の第1のクラウドサービスにサインインしたユーザーが、連携先の第2のクラウドサービスにサインインする場合に、該第2のクラウドサービスに登録されているアカウントに他のアカウントとの連携を許可する旨の設定がされているときは、該ユーザーに、該第2のクラウドサービスへのサインインの操作を可能とするサインイン手段として機能させるための情報処理プログラムである。
請求項9の発明は、コンピュータを、クラウドサービスにおけるアカウントと認証方式別に連携の許可対象の組織とを対応させて記憶している第1の記憶手段と、前記組織と認証方式別に連携の許可可能か否かを示す情報とを対応させて記憶している第2の記憶手段と、アカウントと該アカウントが他のアカウントと連携可能か否かを示す情報とを対応させて記憶している第3の記憶手段と、連携元の第1のクラウドサービスにサインインしたユーザーのアカウントに対応する許可対象の組織を、前記第1の記憶手段から抽出する第1の抽出手段と、前記許可対象の組織に対応する認証方式別の許可可能か否かを示す情報を、前記第2の記憶手段から抽出する第2の抽出手段と、認証方式別の許可可能である組織のアカウントが他のアカウントと連携可能か否かを示す情報を、前記第3の記憶手段から抽出する第3の抽出手段と、連携可能であることを示す情報を抽出した場合に、前記ユーザーを連携先の第2のクラウドサービスにサインインの操作を可能とするサインイン手段として機能させるための情報処理プログラムである。
請求項1の情報処理装置によれば、連携元のクラウドサービスにサインインしたユーザーが、連携先のクラウドサービスにアカウントを登録することなく、その連携先のクラウドサービスとの連携ができる。
請求項2の情報処理装置によれば、連携元のクラウドサービスにサインインしたユーザーが、連携先のクラウドサービスにアカウントを登録することなく、その連携先のクラウドサービスとの連携ができる。
請求項3の情報処理装置によれば、対応付けが行われた後、そのユーザーが連携元のクラウドサービスにサインインしていたならば、認証等の操作なしに、連携先のクラウドサービスにサインインすることができるようになる。
請求項4の情報処理装置によれば、連携元のクラウドサービスにサインインしようとしているユーザーのアカウントが、対応付けられて記憶されている場合は、連携先のクラウドサービスにサインインすることができるようになる。
請求項5の情報処理装置によれば、対応付けられて記憶されているアカウントの組を、メンテナンスすることができる。
請求項6の情報処理装置によれば、連携元のクラウドサービスにサインインしようとしているユーザーのアカウントが、連携元のクラウドサービスに登録されているアカウントに連携されていない場合であっても、連携先のクラウドサービスにサインインすることができるようになる。
請求項7の情報処理装置によれば、連携元のクラウドサービスにサインインしようとしているユーザーのアカウントが、連携先のクラウドサービスに登録されていない場合であっても、連携先のクラウドサービスにサインインすることができるようになる。
請求項8の情報処理プログラムによれば、連携元のクラウドサービスにサインインしたユーザーが、連携先のクラウドサービスにアカウントを登録することなく、その連携先のクラウドサービスとの連携ができる。
請求項9の情報処理プログラムによれば、連携元のクラウドサービスにサインインしたユーザーが、連携先のクラウドサービスにアカウントを登録することなく、その連携先のクラウドサービスとの連携ができる。
本実施の形態の構成例についての概念的なモジュール構成図である。 本実施の形態を利用したシステム構成例を示す説明図である。 本実施の形態による処理例を示す説明図である。 本実施の形態による処理例を示すフローチャートである。 本実施の形態による処理例を示すフローチャートである。 本実施の形態による処理例を示すフローチャートである。 本実施の形態による処理例を示す説明図である。 マッピングテーブルのデータ構造例を示す説明図である。 許可情報Aテーブルのデータ構造例を示す説明図である。 アカウント情報テーブルのデータ構造例を示す説明図である。 連携サービス種別テーブルのデータ構造例を示す説明図である。 本実施の形態による処理例を示す説明図である。 許可情報Bテーブルのデータ構造例を示す説明図である。 テナント別認証許可設定テーブルのデータ構造例を示す説明図である。 ユーザー別連携許可設定テーブルのデータ構造例を示す説明図である。 本実施の形態による処理例を示す説明図である。 本実施の形態による処理例を示すフローチャートである。 本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
以下、図面に基づき本発明を実現するにあたっての好適な一実施の形態の例を説明する。
図1は、本実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア(コンピュータ・プログラム)、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム(コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム)、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するという意味である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、1モジュールを1プログラムで構成してもよいし、複数モジュールを1プログラムで構成してもよく、逆に1モジュールを複数プログラムで構成してもよい。また、複数モジュールは1コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって1モジュールが複数コンピュータで実行されてもよい。なお、1つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続(データの授受、指示、データ間の参照関係等)の場合にも用いる。「予め定められた」とは、対象としている処理の前に定まっていることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、対象としている処理の前であれば、そのときの状況・状態にしたがって、又はそれまでの状況・状態にしたがって定まることの意を含めて用いる。「予め定められた値」が複数ある場合は、それぞれ異なった値であってもよいし、2以上の値(もちろんのことながら、全ての値も含む)が同じであってもよい。また、「Aである場合、Bをする」という記載は、「Aであるか否かを判断し、Aであると判断した場合はBをする」の意味で用いる。ただし、Aであるか否かの判断が不要である場合を除く。また、「A、B、C」等のように事物を列挙した場合は、断りがない限り例示列挙であり、その1つのみを選んでいる場合(例えば、Aのみ)を含む。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク(一対一対応の通信接続を含む)等の通信手段で接続されて構成されるほか、1つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」(社会システム)にすぎないものは含まない。
また、各モジュールによる処理毎に又はモジュール内で複数の処理を行う場合はその処理毎に、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。なお、ここでの記憶装置としては、ハードディスク、RAM(Random Access Memory)、外部記憶媒体、通信回線を介した記憶装置、CPU(Central Processing Unit)内のレジスタ等を含んでいてもよい。
本実施の形態である情報処理装置100は、複数のクラウドサービスを連携させるものであって、図1の例に示すように、要求受付モジュール105、許可情報管理モジュール110、紐付情報管理モジュール115、許可設定モジュール120、紐付更新モジュール125、アカウント管理モジュール130、紐付処理順序生成モジュール135、紐付情報許可情報整合モジュール140を有している。情報処理装置100は、連携先のクラウドサービスに含まれている。連携元情報処理装置180からの連携要求にしたがって処理を行う。
例えば、組織に割り振られたアカウントのように、予めその組織に属している複数人に使用されることを前提としているアカウントがある。つまり、このアカウントは、アカウントが他のアカウント(典型例として、その組織に属しているユーザー)との連携を許可しているともいえる。しかし、このような組織のアカウントが、連携先のクラウドサービスに登録されていたとしても、シングルサインオン技術では用いられていない。
情報処理装置100が利用される典型的な例として、組織が有しているアカウントAでクラウドサービスXを利用できている場合に、その組織に属しているユーザー(個人)のアカウントBはクラウドサービスYに登録されているが、クラウドサービスXに登録されていない状況の場合に、本実施の形態が利用される。この状況下で、アカウントAとアカウントBを連携させることによって、そのユーザーはアカウントBでクラウドサービスXを利用できるようにするものである。なお、そのユーザーは、アカウントAでログインできるように、アカウントAにおけるパスワード等を知っている。
要求受付モジュール105は、許可情報管理モジュール110、紐付情報管理モジュール115、紐付更新モジュール125、アカウント管理モジュール130、紐付処理順序生成モジュール135、連携元情報処理装置180と接続されている。要求受付モジュール105は、連携元情報処理装置180から連携要求(連携元リクエスト)を受け付け、連携元情報処理装置180を介して、ユーザー192Aのサインインの操作を要求する。
連携元の第1のクラウドサービスにサインインしたユーザー192Aが、連携先の第2のクラウドサービスにサインインする場合に、その第2のクラウドサービスに登録されているアカウントに他のアカウントとの連携を許可する旨の設定がされているときは、ユーザー192Aに、その第2のクラウドサービスへのサインインの操作を可能とする。
許可情報管理モジュール110は、要求受付モジュール105、許可設定モジュール120、紐付更新モジュール125、紐付処理順序生成モジュール135、紐付情報許可情報整合モジュール140と接続されている。許可情報管理モジュール110は、クラウドサービスにおけるアカウントと認証方式別に連携の許可対象の組織とを対応させて記憶している。つまり、許可設定モジュール120で設定される情報を管理する。例えば、後述する図13に示す許可情報Bテーブル1300を記憶している。
紐付情報管理モジュール115は、要求受付モジュール105、紐付更新モジュール125、紐付情報許可情報整合モジュール140と接続されている。紐付情報管理モジュール115は、シングルサインオン処理を行うためのユーザー間の関連付けの情報を記憶している。例えば、後述する図8に示すマッピングテーブル800を記憶している。
許可設定モジュール120は、許可情報管理モジュール110、アカウント管理モジュール130、ユーザー端末190Bと接続されている。許可設定モジュール120は、ユーザー端末190Bを介して、管理者192Bの操作にしたがって、連携先の第2のクラウドサービスの既存ユーザーに連携の許可設定を行う。
紐付更新モジュール125は、要求受付モジュール105、許可情報管理モジュール110、紐付情報管理モジュール115、アカウント管理モジュール130、紐付処理順序生成モジュール135と接続されている。紐付更新モジュール125は、要求受付モジュール105による紐付情報管理モジュール115の参照だけで認証を完結できないときに実施される処理を行う。具体的には、許可情報管理モジュール110にある許可情報を元に、ユーザー間の関連付けに必要なサインインの操作をユーザー192Aに要求し、その応答を使って紐付情報管理モジュール115を更新する。その際に必要に応じてアカウント管理モジュール130を参照することもある。
紐付更新モジュール125は、ユーザー端末190Aを介して、連携元情報処理装置180が含まれている連携元の第1のクラウドサービスにサインインしたユーザー192Aのアカウントに対応する許可対象の組織を、許可情報管理モジュール110から抽出する抽出処理Aを行う。ここで、「組織」とは、複数人のユーザーによって構築される機構であって、例えば、会社、部門、テナント、グループ等(以下、テナントを用いて例示する)がある。
そして、紐付更新モジュール125は、許可対象の組織に対応する認証方式別の許可可能か否かを示す情報を、アカウント管理モジュール130から抽出する抽出処理Bを行う。
そして、紐付更新モジュール125は、認証方式別の許可可能である組織のアカウントが他のアカウントと連携可能か否かを示す情報を、アカウント管理モジュール130から抽出する抽出処理Cを行う。
次に、紐付更新モジュール125は、抽出処理Cによって連携可能であることを示す情報を抽出した場合に、要求受付モジュール105を制御して、ユーザー192Aを連携先の第2のクラウドサービスにサインインの操作を可能とするサインイン制御処理を行う。
また、紐付更新モジュール125は、サインイン制御処理によって、ユーザー192Aが第2のクラウドサービスにサインインした場合は、そのユーザー192Aのアカウントと組織のアカウントとを対応付けて、紐付情報管理モジュール115に記憶させる対応付処理を行うようにしてもよい。例えば、後述する図8に示すマッピングテーブル800を紐付情報管理モジュール115に記憶させる。
また、紐付更新モジュール125は、要求受付モジュール105を制御して、第1のクラウドサービスにサインインしようとしているユーザー192Aのアカウントが、対応付処理によって対応付けられて記憶されている場合は、第2のクラウドサービスにサインインすることが許可されるようにしてもよい。
アカウント管理モジュール130は、要求受付モジュール105、許可設定モジュール120、紐付更新モジュール125と接続されている。アカウント管理モジュール130は、組織と認証方式別に連携の許可可能か否かを示す情報とを対応させて記憶している。例えば、後述する図14に示すテナント別認証許可設定テーブル1400を記憶している。さらに、アカウント管理モジュール130は、アカウントとそのアカウントが他のアカウントと連携可能か否かを示す情報とを対応させて記憶している。例えば、後述する図15に示すユーザー別連携許可設定テーブル1500を記憶している。つまり、アカウント管理モジュール130は、許可情報管理モジュール110と紐付情報管理モジュール115内の情報について、さらなる詳細な情報を管理している。したがって、許可情報管理モジュール110と紐付情報管理モジュール115よりも詳細な情報が必要な場合、アカウント管理モジュール130が参照されることになる。
紐付処理順序生成モジュール135は、要求受付モジュール105、許可情報管理モジュール110、紐付更新モジュール125と接続されている。紐付処理順序生成モジュール135は、紐付更新モジュール125によるユーザーの関連付けにおけるサインインの操作をユーザー端末190Aに提供するために処理順序をGUI(Graphical User Interface)に変換する。
紐付情報許可情報整合モジュール140は、許可情報管理モジュール110、紐付情報管理モジュール115と接続されている。紐付情報許可情報整合モジュール140は、時間経過に伴う紐付情報管理モジュール115内の「関連付け情報」と許可情報管理モジュール110又はアカウント管理モジュール130内の「許可情報」等との間のズレを適宜の頻度で補正する。
紐付情報許可情報整合モジュール140は、紐付更新モジュール125による対応付処理によって対応付けられて紐付情報管理モジュール115に記憶されているアカウントの組を、許可情報管理モジュール110(例えば、許可情報Bテーブル1300)、アカウント管理モジュール130(例えば、テナント別認証許可設定テーブル1400、ユーザー別連携許可設定テーブル1500)のいずれか1つ以上との不整合を解消することによってメンテナンスを行う。
また、紐付情報許可情報整合モジュール140は、第1のクラウドサービスにサインインしようとしているユーザー192Aのアカウントが、その第1のクラウドサービスに登録されているアカウントに連携されていない場合に、紐付更新モジュール125の抽出処理Aを行うように制御する制御処理を行うようにしてもよい。
また、紐付情報許可情報整合モジュール140は、第1のクラウドサービスにサインインしようとしているユーザー192Aのアカウントが、第2のクラウドサービスに登録されていない場合に、前記制御処理を行うように制御するようにしてもよい。
連携元情報処理装置180は、情報処理装置100の要求受付モジュール105、ユーザー端末190Aと接続されている。連携元情報処理装置180は、連携元のクラウドサービスに含まれている。連携元情報処理装置180は、ユーザー192Aのユーザー端末190Aに対する操作によって、情報処理装置100に対して連携要求が行われる。また、連携元情報処理装置180は、情報処理装置100からのサインイン要求にしたがって、ユーザー192A(ユーザー端末190A)に対してサインインの操作要求が行われる。ユーザー192Aは、ユーザー端末190A、連携元情報処理装置180を介して、情報処理装置100に対してサインインの操作を行う。
ユーザー端末190Aは、ユーザー192Aによって操作され、連携元情報処理装置180と接続されている。ユーザー端末190Aは、パーソナルコンピュータ(ノートPCと含む)、携帯情報端末、後述する画像処理装置250等であって、ユーザー192Aの操作にしたがって、連携元情報処理装置180を含む第1のクラウドサービス、情報処理装置100を含む第2のクラウドサービスに対して処理を依頼する。
ユーザー端末190Bは、管理者192Bによって操作され、情報処理装置100の許可設定モジュール120と接続されている。ユーザー端末190Bは、管理者192Bの操作にしたがって、第2のクラウドサービスに登録されている組織のアカウント等を管理するための指示を行う。
図2は、本実施の形態を利用したシステム構成例を示す説明図である。
クラウドサービス200は、情報処理装置100を有している。クラウドサービス210は、連携元情報処理装置180を有している。画像処理装置250は、ユーザー端末190Cを有している。画像処理装置250のタッチパネル等を用いて、ユーザー端末190Cとしてのユーザーインタフェースが提供される。
クラウドサービス200内の情報処理装置100、クラウドサービス210内の連携元情報処理装置180、ユーザー端末190A、ユーザー端末190B、画像処理装置250は、通信回線290を介してそれぞれ接続されている。通信回線290は、無線、有線、これらの組み合わせであってもよく、例えば、通信インフラとしてのインターネット、イントラネット等であってもよい。
クラウドサービス200、クラウドサービス210は、それぞれ複数あってもよいし、連携先、連携元の関係は逆になってもよい。つまり、クラウドサービス210内に情報処理装置100があり、クラウドサービス200内に連携元情報処理装置180があってもよい。もちろんのことながら、クラウドサービス200、クラウドサービス210のそれぞれに、情報処理装置100、連携元情報処理装置180の両方があってもよい。
ユーザー192Aは、ユーザー端末190Aや画像処理装置250等を用いて、クラウドサービス210にサインインし、クラウドサービス210におけるクラウドサービスの提供を受ける。そして、シングルサインオン技術を用いてクラウドサービス200におけるクラウドサービスの提供を受ける。また、シングルサインオン技術を用いることができない場合(情報処理装置100内でアカウントの対応付けが行われていない場合)は、情報処理装置100によって、クラウドサービス200に既に登録されているアカウントとの関連付けが行われ、クラウドサービス200で新たに登録処理を行う必要なく、クラウドサービス200におけるクラウドサービスの提供を受けることができるようになる。
図3は、本実施の形態による処理例(概略)を示す説明図である。
ステップS302からステップS304までの処理は、シングルサインオンができる場合の処理を示しており、ステップS352からステップS358までの処理は、シングルサインオンができない場合(紐付情報管理モジュール115内に対応付け情報がない場合)の処理を示している。
ステップS302は、管理者192Bの操作によって、ユーザー端末190Bを介して、紐付情報管理モジュール115にマッピングテーブル800を生成する。つまり、ステップS302では、直接マッピングテーブル800を設定・更新する。
ステップS304は、連携元情報処理装置180、要求受付モジュール105、紐付情報管理モジュール115を順に用いる。ステップS304では、要求受付モジュール105が、紐付情報管理モジュール115内のマッピングテーブル800に関連付けがあるか否かのみでユーザー192Aの認証判断を行う。これは、一般的なシングルサインオン処理である。
ステップS352は、管理者192Bの操作によって、ユーザー端末190Bを介して、許可設定モジュール120、許可情報管理モジュール110を順に用いる。ステップS352では、紐付情報管理モジュール115内のマッピングテーブル800を直接設定・更新しない、その代わりに許可情報管理モジュール110内の許可情報Bテーブル1300を設定する。
ステップS354は、連携元情報処理装置180、要求受付モジュール105、許可情報管理モジュール110を順に用いる。ステップS354では、ユーザー192Aのアカウントに対して、紐付情報管理モジュール115内のマッピングテーブル800に関連付け情報がなければ、許可情報管理モジュール110内の許可情報Bテーブル1300を参照する。
ステップS356は、連携元情報処理装置180、要求受付モジュール105、紐付処理順序生成モジュール135を順に用いる。ステップS356では、認証方式の種別に応じて、対応付けUIを生成し、ユーザー192Aに対してサインイン要求の表示制御を行う。
ステップS358は、連携元情報処理装置180、要求受付モジュール105、紐付更新モジュール125、紐付情報管理モジュール115を順に用いる。ステップS358では、ステップS356の処理の結果(ユーザー192Aの間接的な操作)、紐付情報管理モジュール115内のマッピングテーブル800を更新する。
ステップS360では、紐付情報管理モジュール115内のマッピングテーブル800と許可情報管理モジュール110内の許可情報Bテーブル1300等の時間経過によってズレが発生した場合は、適宜のタイミングで修正する。
図4は、本実施の形態による処理例を示すフローチャートである。連携先のクラウドサービスに同一アカウントがある場合の処理例である。なお、点線で囲まれているステップは、ユーザーの操作にしたがって行われる処理である。
主な処理は、以下の通りである。
(A1)連携要求元のクラウドサービスのアカウントが連携先のクラウドサービスのマッピングテーブル800にあるか否かを判断する。
(A2)マッピングテーブル800になければ、同様なアカウントが連携先のクラウドサービスに存在するか否かを確認する。
(A3)(A2)で存在すると確認された場合のみ、念のため明示的拒否設定がないことを確認してから、連携許可を応答すると同時に、マッピングテーブル800を更新する。
(A4)(A2)で存在しないと確認された場合の処理は、図5の例に示すフローチャートによる処理例に進む。
なお、以下のような処理をオプションとして設けてもよい。
(A5)マッピングテーブル800に複数の関連付けが既に登録されている場合、選択用候補一覧を連携元のクラウドサービス(ユーザー)に提示し、応答を待つ。ここで、選択用候補一覧として、表示上のセキュリティ処理(例えば、アカウント名等の一部を伏せ字にする等)を行うようにしてもよい。
(A6)選択用候補一覧からの選択結果を受信したら、それに対する連携許可を応答する。
以下、詳細な処理について説明する。
ステップS402では、連携元のクラウドサービスにアカウントAで認証する。
ステップS404では、アカウントAを使って連携先のクラウドサービスに認証を要求する。
ステップS406では、紐付情報(マッピングテーブル800)を参照する。
ステップS408では、紐付(マッピングテーブル800内にアカウントA)があるか否かを判断し、ある場合はステップS410へ進み、それ以外の場合はステップS418へ進む。
ステップS410では、紐付が複数か否かを判断し、複数の場合はステップS412へ進み、それ以外の場合はステップS416へ進む。
ステップS412では、その複数の候補一覧(選択用候補一覧)を、連携元のクラウドサービス(ユーザー)に応答する。
ステップS414では、ユーザーの操作にしたがって、連携先を選択する。
ステップS416では、連携処理を行う。つまり、シングルサインオン処理を行う。
ステップS418では、連携先のクラウドサービスに既にアカウントAが存在しているかを確認する。
ステップS420では、アカウントAが存在するか否かを判断し、存在する場合はステップS422へ進み、それ以外の場合はステップS430へ進む。
ステップS422では、許可情報(許可情報管理モジュール110内の許可情報Bテーブル1300、アカウント管理モジュール130内のユーザー別連携許可設定テーブル1500等)を参照する。この場合、自分自身を関連付けること(連携元のクラウドサービスにおけるアカウントAと連携先のクラウドサービスにおけるアカウントAを関連付けること)を許可するか否かを確認していることになる。
ステップS424では、許可情報がアカウントAを関連付けることについて明示的拒否か否かを判断し、明示的拒否の場合は処理を終了し(ステップS499)、それ以外の場合はステップS426へ進む。なお、アカウント管理モジュール130内のユーザー別連携許可設定テーブル1500の連携可否欄1520が「FALSE」となっている場合が、明示的拒否に該当する。
ステップS426では、連携処理を行う。つまり、シングルサインオン処理と同等の処理を行う。
ステップS428では、紐付情報を更新する。つまり、紐付情報管理モジュール115内のマッピングテーブル800に関連付けを付加する。
ステップS430では、処理Bを行う。ステップS430の詳細な処理については、図5の例に示すフローチャートを用いて後述する。
図5は、本実施の形態による処理例を示すフローチャートである。
主な処理は、以下の通りである。
(B1)許可情報(許可情報管理モジュール110内の許可情報Aテーブル900)に、連携要求元のアカウントが存在するか否かを確認する。
(B2)(B1)で存在すると確認された場合、その許可属性(例えば、連携先のクラウドサービスのどのアカウントに許可するか、どの連携元のクラウドサービスならば許可するか等)に応じて、連携許可を応答する、そして、紐付情報管理モジュール115内のマッピングテーブル800を更新する。ここで許可情報で必要最小限の情報を保持し、必要に応じてアカウントを元に別テーブル(図10の例に示すアカウント情報テーブル1000等)から詳細情報を取得してもよい。
(B3)(B1)で存在しないと確認された場合、図6の例に示すフローチャートによる処理例に進む。
なお、以下のような処理をオプションとして設けてもよい。
(B4)許可情報の参照で、明示的に複数のアカウントが該当する場合、選択用候補一覧を連携元のクラウドサービス(ユーザー)に提示し、応答を待つ。
(B5)選択用候補一覧からの選択結果を受信したら、それに対する連携許可を応答する。そして、紐付情報(マッピングテーブル800)を更新する。図5に示す処理例では、連携先のクラウドサービスにおけるアカウントが明示的に許可しているため、パスワード入力等による認証処理を必須としないが、セキュリティ視点から認証処理を追加してもよい。
以下、詳細な処理について説明する。
ステップS502では、許可情報(許可情報管理モジュール110内の許可情報Aテーブル900)を参照する。
ステップS504では、許可アカウントがあるか否かを判断し、ある場合はステップS506へ進み、それ以外の場合はステップS516へ進む。
ステップS506では、許可アカウントは複数か否かを判断し、複数の場合はステップS508へ進み、それ以外の場合はステップS512へ進む。
ステップS508では、その複数の候補一覧を、連携元のクラウドサービス(ユーザー)に応答する。
ステップS510では、ユーザーの操作にしたがって、連携先を選択する。
ステップS512では、連携処理を行う。つまり、シングルサインオン処理と同等の処理を行う。
ステップS514では、紐付情報を更新する。つまり、紐付情報管理モジュール115内のマッピングテーブル800に関連付けを付加する。
ステップS516では、処理Cを行う。ステップS516の詳細な処理については、図6の例に示すフローチャートを用いて後述する。
図6は、本実施の形態による処理例を示すフローチャートである。
主な処理は、以下の通りである。
(C1)許可情報(許可情報管理モジュール110内の許可情報Bテーブル1300)を参照し、連携要求元のクラウドサービスにおけるアカウントを許可する設定があるか否かを確認する。例えば、図13に示す許可情報Bテーブル1300の1行名と2行目の設定は「aaa@example.com」への連携許可に該当する。
(C2)該当する許可設定があれば、設定する属性に応じて下記の関連付処理を段階的に行う。
(C3)例えば、複数の認証方式を許可している場合、まずは候補一覧(例えば、図16(C))を連携要求元のクラウドサービス(ユーザー)に返し、認証方式を選択させる。
(C4)連携要求元のクラウドサービス(ユーザー)が選択した認証方式に対し、まずは「テナント別許可設定」(例えば、図14に示すテナント別認証許可設定テーブル1400)で該当する認証方式を許可しているテナントを特定する。本設定は連携専用ではなく、サービス固有の機能であるため、許可情報よりも優先される。つまり連携許可を設定する際に、「テナント別許可設定」を参照する必要はない。
(C5)さらに許可するテナントに所属するユーザーについて、「連携許可の設定」(例えば、図15に示すユーザー別連携許可設定テーブル1500)を確認する。許可情報の設定は必ず対応するユーザーが行うとは限らないので、ここでいうユーザー別連携許可は許可情報設定より優先される。
(C6)上記抽出した連携許可ユーザー一覧を連携要求元のクラウドサービス(ユーザー)に返し、連携先アカウントを選択させる。
(C7)図4又は図5の例に示す処理例と違って、明示的許可ではないため、関連付処理を行う前に、連携元のクラウドサービス(ユーザー)が選択した連携先のクラウドサービスにおけるアカウントに対し、パスワードによる認証を連携元のクラウドサービス(ユーザー)に求める。
(C8)(C7)による認証をパスした場合のみ、連携許可を応答すると同時に、マッピングテーブル800を更新する。
以下、詳細な処理について説明する。
ステップS602では、許可情報(許可情報管理モジュール110内の許可情報Bテーブル1300)を参照する。
ステップS604では、連携元のクラウドサービスにおけるアカウントの記載があるか否かを判断し、ある場合はステップS06へ進み、それ以外の場合はステップS632へ進む。
ステップS606では、連携可能とする認証方式を特定する。
ステップS608では、連携可能とする認証方式の候補一覧を、連携元のクラウドサービス(ユーザー)に応答する。
ステップS610では、ユーザーの操作にしたがって、連携可能とする認証方式を選択する。
ステップS612では、選択済の連携可能とする認証方式の許可対象テナントを特定する。
ステップS614では、該当テナント側許可設定を確認する。
ステップS616では、許可か否かを判断し、許可の場合はステップS620へ進み、それ以外の場合はステップS618へ進む。
ステップS618では、「連携権限なし」とするメッセージを連携元のクラウドサービス(ユーザー)に表示し、ステップS610へ戻る。
ステップS620では、該当テナント所属ユーザーの許可設定を確認する。
ステップS622では、許可一覧を、連携元のクラウドサービス(ユーザー)に応答する。
ステップS624では、ユーザーの操作にしたがって、連携先を選択する。
ステップS626では、ユーザーの操作によるパスワードを認証を行う。
ステップS628では、連携処理を行う。つまり、シングルサインオン処理と同等の処理を行う。
ステップS630では、紐付情報を更新する。つまり、紐付情報管理モジュール115内のマッピングテーブル800に関連付けを付加する。
ステップS632では、「連携権限なし」とするメッセージを連携元のクラウドサービス(ユーザー)に表示する。
図7は、本実施の形態による処理例を示す説明図である。図4に示したフローチャートによる処理例とモジュール間の関係を示したものである。
ステップS406では、連携元情報処理装置180からの連携要求を、要求受付モジュール105が、紐付情報管理モジュール115を参照して処理する。
ステップS418では、要求受付モジュール105は、アカウント管理モジュール130を参照する。
ステップS422では、要求受付モジュール105は、許可情報管理モジュール110を参照する。
ステップS428では、紐付更新モジュール125は、許可情報管理モジュール110、紐付情報管理モジュール115を参照する。
図8は、マッピングテーブル800のデータ構造例を示す説明図である。マッピングテーブル800は、紐付情報管理モジュール115に記憶されている。マッピングテーブル800は、マッピングID欄810、連携元サービスID欄820、連携元アカウント情報欄830、連携先サービスID欄840、連携先アカウント情報欄850を有している。マッピングID欄810は、本実施の形態において、マッピング(連携元のクラウドサービスにおけるアカウントと連携先のクラウドサービスにおけるアカウント)を一意に識別するための情報(マッピングID:IDentification)を記憶している。連携元サービスID欄820は、本実施の形態において、連携元のクラウドサービスを一意に識別するための情報(連携元サービスID)を記憶している。連携元アカウント情報欄830は、連携元のクラウドサービスにおけるアカウント情報を記憶している。連携先サービスID欄840は、本実施の形態において、連携先のクラウドサービスを一意に識別するための情報(連携先サービスID)を記憶している。連携先アカウント情報欄850は、連携先のクラウドサービスにおけるアカウント情報を記憶している。
つまり、マッピングテーブル800内に登録されていたならば、シングルサインオン処理が行われる。
図9から図12に示す例は、図5の例に示すフローチャートの処理例で用いられるものである。
図9は、許可情報Aテーブル900のデータ構造例を示す説明図である。許可情報Aテーブル900は、許可情報管理モジュール110に記憶されている。
許可情報Aテーブル900は、連携元サービスID欄910、連携元アカウント情報欄920、連携先ID欄930、制御フラグ欄940を有している。連携元サービスID欄910は、連携元サービスIDを記憶している。連携元アカウント情報欄920は、連携元のクラウドサービスにおけるアカウント情報を記憶している。連携先ID欄930は、本実施の形態において、連携先のクラウドサービスにおけるアカウント情報を一意に識別するための情報(連携先ID)を記憶している。具体的な内容は、アカウント情報テーブル1000に記憶されている。制御フラグ欄940は、連携許可又は連携禁止を示す制御フラグを記憶している。
つまり、許可情報Aテーブル900は、連携先のクラウドサービスにおいて、連携元のクラウドサービスにおけるアカウント情報に対して、連携を許可するか禁止するかを示している。許可情報Aテーブル900を参照することによって、連携が許可されるか否かが判断される。許可情報Aテーブル900内にない場合は、図6の例に示す処理が行われる。
図10は、アカウント情報テーブル1000のデータ構造例を示す説明図である。アカウント情報テーブル1000は、アカウント管理モジュール130内に記憶されている。許可情報Aテーブル900で情報が不足している場合は、アカウント情報テーブル1000が参照されることになる。
アカウント情報テーブル1000は、アカウントID欄1010、メールアドレス欄1020、姓欄1030、名欄1040を有している。アカウントID欄1010は、本実施の形態において、アカウントを一意に識別するための情報(アカウントID)を記憶している。メールアドレス欄1020は、そのアカウントのユーザーのメールアドレスを記憶している。姓欄1030は、そのアカウントのユーザーの姓を記憶している。名欄1040は、そのアカウントのユーザーの名を記憶している。
図11は、連携サービス種別テーブル1100のデータ構造例を示す説明図である。連携サービス種別テーブル1100は、アカウント管理モジュール130内に記憶されている。許可情報Aテーブル900で情報が不足している場合は、連携サービス種別テーブル1100が参照されることになる。
連携サービス種別テーブル1100は、サービスID欄1110、サービス名欄1120を有している。サービスID欄1110は、本実施の形態において、クラウドサービスを一意に識別するための情報(サービスID)を記憶している。サービス名欄1120は、そのクラウドサービスの名称を記憶している。
図12は、本実施の形態による処理例を示す説明図である。
図12(a)に示す例は、図4の例に示すフローチャートのステップS402で、ユーザー端末190Aに表示されるものである。画面1200に、アカウント記入欄1202、パスワード記入欄1204、サインインボタン1206を表示する。
図12(b)に示す例は、図12(a)の例でサインインしたクラウドサービスAにおけるサービス例であり、この処理は、他のクラウドサービスBに対して連携処理を必要とするものである。例えば、クラウドサービスA内に記憶されている文書を、クラウドサービスBに記憶させる処理等ができる。例えば、画面1200に、文書指定領域1212、サービス指定領域1214、実行ボタン1216を表示する。図12(b)の例では、文書指定領域1212内の文書「a2.txt」をサービス指定領域1214内のクラウドサービス「bbb」に処理させることを示している。これによって、図4の例に示すフローチャートのステップS404以降の処理が行われ、図5の例に示すフローチャートのステップS508以降の処理が行われる。
図12(c)に示す例は、図5の例に示すフローチャートのステップS508における候補一覧の表示例である。例えば、画面1200に、アカウント選択領域1222、連携ボタン1224を表示する。アカウント選択領域1222には、例えば、「下記から連携IDを選択してください。」と表示し、「bbbbb@example.com」と「ccccc@(公序良俗違反につき、不掲載)」を選択可能に表示する。ここでは、図12(a)のアカウント記入欄1202の例に示すように「aaa@example.com」が、連携元のクラウドサービス(連携元サービスID:「1」)におけるアカウント情報であるので、図9の例で示した許可情報Aテーブル900の1行目と4行目において、連携先ID:「1」と「2」が制御フラグ欄940で許可されている。そして、連携先ID:「1」と「2」は、図10の例に示したアカウント情報テーブル1000の1行目、2行目(アカウントID:「1」と「2」)であるので、「bbbbb@example.com」と「ccccc@(公序良俗違反につき、不掲載)」を選択可能に表示している。そして、ユーザーの操作によって、いずれかのアカウントが選択されて、連携ボタン1224が選択される。
図12(d)に示す例は、連携先のクラウドサービスにおける処理が行われた結果を示している。つまり、画面1200に、サービス処理結果表示領域1232を表示する。サービス処理結果表示領域1232には、例えば『文書「a2.txt」をフォルダ「…」に登録しました。』と表示し、連携先のクラウドサービスでの処理も終了したことを示している。
図13から図16に示す例は、図6の例に示すフローチャートの処理例で用いられるものである。
図13は、許可情報Bテーブル1300のデータ構造例を示す説明図である。許可情報Bテーブル1300は、許可情報管理モジュール110に記憶されている。
許可情報Bテーブル1300は、連携元サービスID欄1310、連携元アカウント情報欄1320、SSO認証許可対象欄1330、ローカル認証許可対象欄1340を有している。連携元サービスID欄1310は、連携元のクラウドサービスのサービスIDを記憶している。連携元アカウント情報欄1320は、連携元のクラウドサービスにおけるアカウント情報を記憶している。「ANY」は、全てのアカウント情報が対応することを示している。SSO認証許可対象欄1330は、SSO(シングルサインオン)認証許可対象であるテナントのテナントIDを記憶している。「NULL」は、許可対象であるテナントがないことを示している。ローカル認証許可対象欄1340は、ローカル認証許可対象であるテナントのテナントIDを記憶している。SSO認証許可対象欄1330、ローカル認証許可対象欄1340は、認証方式別に連携の許可対象の組織を記憶していることになる。
図14は、テナント別認証許可設定テーブル1400のデータ構造例を示す説明図である。テナント別認証許可設定テーブル1400は、アカウント管理モジュール130に記憶されている。
テナント別認証許可設定テーブル1400は、テナントID欄1410、SSO認証連携可否欄1420、ローカル認証連携可否欄1430を有している。テナントID欄1410は、本実施の形態において、テナントを一意に識別するための情報(テナントID)を記憶している。SSO認証連携可否欄1420は、SSO認証による連携の可否(「TRUE」:可、「FALSE」:否)を記憶している。ローカル認証連携可否欄1430は、ローカル認証による連携の可否を記憶している。SSO認証連携可否欄1420、ローカル認証連携可否欄1430は、認証方式別に連携の許可可能か否かを示す情報を記憶していることになる。
図15は、ユーザー別連携許可設定テーブル1500のデータ構造例を示す説明図である。ユーザー別連携許可設定テーブル1500は、アカウント管理モジュール130に記憶されている。
ユーザー別連携許可設定テーブル1500は、ユーザーID欄1510、連携可否欄1520を有している。ユーザーID欄1510は、本実施の形態において、ユーザーを一意に識別するための情報(ユーザーID)を記憶している。連携可否欄1520は、そのユーザー(アカウント情報)に対する、連携の可否を記憶している。連携可否欄1520は、連携可能か否かを示す情報を記憶していることになる。
図16は、本実施の形態による処理例を示す説明図である。
図16(a)に示す例は、図4の例に示すフローチャートのステップS402で、ユーザー端末190Aに表示されるものである。画面1600に、アカウント記入欄1602、パスワード記入欄1604、サインインボタン1606を表示する。
図16(b)に示す例は、図16(a)の例でサインインしたクラウドサービスAにおけるサービス例であり、この処理は、他のクラウドサービスBに対して連携処理を必要とするものである。例えば、クラウドサービスA内に記憶されている文書を、クラウドサービスBに記憶させる処理等ができる。例えば、画面1600に、文書指定領域1612、サービス指定領域1614、実行ボタン1616を表示する。図16(b)の例では、文書指定領域1612内の文書「a2.txt」をサービス指定領域1614内のサービス「bbb」に処理させることを示している。これによって、図4の例に示すフローチャートのステップS404以降の処理が行われ、図5の例に示すフローチャートのステップS504で「No」と判断された後に、図6の例に示すフローチャートの処理が行われる。
図16(c)に示す例は、図6の例に示すフローチャートのステップS608における候補一覧の表示例である。例えば、画面1600に、認証方式選択領域1622、次へボタン1624を表示する。認証方式選択領域1622には、例えば、「連携可能とする認証方式を選択してください。」と表示し、「SSO認証」と「ローカル認証」を選択可能に表示する。ここでは、図16(a)のアカウント記入欄1602の例に示すように「aaa@example.com」が、連携元のクラウドサービス(連携元サービスID:「1」)におけるアカウント情報であるので、図13の例で示した許可情報Bテーブル1300の1行目と2行目(「ANY」であるので、「aaa@example.com」も該当することになる)において、ローカル認証許可対象欄1340としてテナントID:「1、2、3」、SSO認証許可対象欄1330としてテナントID:「1」が抽出される。そして、テナントID:「1」、「2」、「3」は、図14の例に示すテナント別認証許可設定テーブル1400の1行目、2行目、3行目に該当する。ここでは、テナントID:「1」、「3」が、SSO認証連携可否欄1420で可能とされており、テナントID:「2」、「3」が、ローカル認証連携可否欄1430で可能とされているので、「SSO認証」と「ローカル認証」を選択可能に表示している。そして、ユーザーの操作によって、いずれかの認証方式が選択されて、次へボタン1624が選択される。
図16(d)に示す例は、図16(c)で選択された認証方式で該当するアカウントを提示しているものである。ここでは、選択された認証方式を可能としているテナントにおけるアカウントを提示している。ただし、図15の例に示すユーザー別連携許可設定テーブル1500で、アカウントが連携可能としているものを表示している。ここでは、画面1600に、アカウント選択領域1632、連携ボタン1634を表示する。そして、アカウント選択領域1632には、例えば、「下記から連携IDを選択してください。」と表示し、「bbbbb@example.com」、「ccccc@(公序良俗違反につき、不掲載)」を選択可能に表示する。そして、ユーザーの操作によって、いずれかのアカウントが選択されて、連携ボタン1634が選択される。
図16(e)に示す例は、連携先のクラウドサービスにおける処理が行われた結果を示している。つまり、画面1600に、サービス処理結果表示領域1642を表示する。サービス処理結果表示領域1642には、例えば『文書「a2.txt」をフォルダ「…」に登録しました。』と表示し、連携先のクラウドサービスでの処理も終了したことを示している。
図17は、本実施の形態による処理例(整合処理例)を示すフローチャートである。つまり、紐付情報管理モジュール115内のマッピングテーブル800と、許可情報管理モジュール110又はアカウント管理モジュール130の情報とにおいて不整合が生じていないかを判断し、不整合が生じている場合は、マッピングテーブル800を修正する。例えば、管理者192Bの操作によって、許可情報Aテーブル900、許可情報Bテーブル1300、テナント別認証許可設定テーブル1400、ユーザー別連携許可設定テーブル1500が変更されることがある。具体的には、ユーザー別連携許可設定テーブル1500内の連携可否欄1520が「TRUE」から「FALSE」に変更された場合、そのユーザーIDに該当するマッピングテーブル800内の行は消去されることになる。
ステップS1702では、許可情報Aテーブル900、許可情報Bテーブル1300、テナント別認証許可設定テーブル1400、ユーザー別連携許可設定テーブル1500に変更があったか否かを判断し、変更があった場合はステップS1704へ進み、それ以外の場合は変更があるまで待機する。
ステップS1704では、マッピングテーブル800内の1行を抽出する。
ステップS1706では、その組み合わせは、許可情報Aテーブル900、許可情報Bテーブル1300、テナント別認証許可設定テーブル1400、ユーザー別連携許可設定テーブル1500と不整合が生じているかをチェックする。
ステップS1708では、チェックの結果が不整合ありか否かを判断し、「不整合あり」の場合はステップS1710へ進み、それ以外の場合はステップS1712へ進む。
ステップS1710では、その組み合わせを削除する。
ステップS1712では、マッピングテーブル800内の全ての行をチェックしたか否かを判断し、全ての行をチェックした場合は処理を終了し(ステップS1799)、それ以外の場合はステップS1704へ戻る。
なお、本実施の形態としてのプログラムが実行されるコンピュータのハードウェア構成は、図18に例示するように、一般的なコンピュータであり、具体的にはパーソナルコンピュータ、サーバーとなり得るコンピュータ等である。つまり、具体例として、処理部(演算部)としてCPU1801を用い、記憶装置としてRAM1802、ROM1803、HD1804を用いている。HD1804として、例えばハードディスク、SSD(Solid State Drive)を用いてもよい。要求受付モジュール105、許可設定モジュール120、紐付更新モジュール125、紐付処理順序生成モジュール135、紐付情報許可情報整合モジュール140等のプログラムを実行するCPU1801と、そのプログラムやデータを記憶するRAM1802と、本コンピュータを起動するためのプログラム等が格納されているROM1803と、許可情報管理モジュール110、紐付情報管理モジュール115、アカウント管理モジュール130としての機能を有する補助記憶装置(フラッシュ・メモリ等であってもよい)であるHD1804と、キーボード、マウス、タッチスクリーン、マイク等に対する利用者の操作に基づいてデータを受け付ける受付装置1806と、CRT、液晶ディスプレイ、スピーカー等の出力装置1805と、ネットワークインタフェースカード等の通信ネットワークと接続するための通信回線インタフェース1807、そして、それらをつないでデータのやりとりをするためのバス1808により構成されている。これらのコンピュータが複数台互いにネットワークによって接続されていてもよい。
前述の実施の形態のうち、コンピュータ・プログラムによるものについては、本ハードウェア構成のシステムにソフトウェアであるコンピュータ・プログラムを読み込ませ、ソフトウェアとハードウェア資源とが協働して、前述の実施の形態が実現される。
なお、図18に示すハードウェア構成は、1つの構成例を示すものであり、本実施の形態は、図18に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア(例えば特定用途向け集積回路(Application Specific Integrated Circuit:ASIC)等)で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続している形態でもよく、さらに図18に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、特に、パーソナルコンピュータの他、携帯情報通信機器(携帯電話、スマートフォン、モバイル機器、ウェアラブルコンピュータ等を含む)、情報家電、ロボット、複写機、ファックス、スキャナ、プリンタ、複合機(スキャナ、プリンタ、複写機、ファックス等のいずれか2つ以上の機能を有している画像処理装置)などに組み込まれていてもよい。
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通等のために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク(DVD)であって、DVDフォーラムで策定された規格である「DVD−R、DVD−RW、DVD−RAM等」、DVD+RWで策定された規格である「DVD+R、DVD+RW等」、コンパクトディスク(CD)であって、読出し専用メモリ(CD−ROM)、CDレコーダブル(CD−R)、CDリライタブル(CD−RW)等、ブルーレイ・ディスク(Blu−ray(登録商標) Disc)、光磁気ディスク(MO)、フレキシブルディスク(FD)、磁気テープ、ハードディスク、読出し専用メモリ(ROM)、電気的消去及び書換可能な読出し専用メモリ(EEPROM(登録商標))、フラッシュ・メモリ、ランダム・アクセス・メモリ(RAM)、SD(Secure Digital)メモリーカード等が含まれる。
そして、前記のプログラムの全体又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク(LAN)、メトロポリタン・エリア・ネットワーク(MAN)、ワイド・エリア・ネットワーク(WAN)、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、又は無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分若しくは全部であってもよく、又は別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して記録されていてもよい。また、圧縮や暗号化等、復元可能であればどのような態様で記録されていてもよい。
100…情報処理装置
105…要求受付モジュール
110…許可情報管理モジュール
115…紐付情報管理モジュール
120…許可設定モジュール
125…紐付更新モジュール
130…アカウント管理モジュール
135…紐付処理順序生成モジュール
140…紐付情報許可情報整合モジュール
180…連携元情報処理装置
190…ユーザー端末
192A…ユーザー
192B…管理者
200…クラウドサービス
210…クラウドサービス
250…画像処理装置
290…通信回線

Claims (9)

  1. 連携元の第1のクラウドサービスにサインインしたユーザーが、連携先の第2のクラウドサービスにサインインする場合に、該第2のクラウドサービスに登録されているアカウントに他のアカウントとの連携を許可する旨の設定がされているときは、該ユーザーに、該第2のクラウドサービスへのサインインの操作を可能とするサインイン手段
    を有する情報処理装置。
  2. クラウドサービスにおけるアカウントと認証方式別に連携の許可対象の組織とを対応させて記憶している第1の記憶手段と、
    前記組織と認証方式別に連携の許可可能か否かを示す情報とを対応させて記憶している第2の記憶手段と、
    アカウントと該アカウントが他のアカウントと連携可能か否かを示す情報とを対応させて記憶している第3の記憶手段と、
    連携元の第1のクラウドサービスにサインインしたユーザーのアカウントに対応する許可対象の組織を、前記第1の記憶手段から抽出する第1の抽出手段と、
    前記許可対象の組織に対応する認証方式別の許可可能か否かを示す情報を、前記第2の記憶手段から抽出する第2の抽出手段と、
    認証方式別の許可可能である組織のアカウントが他のアカウントと連携可能か否かを示す情報を、前記第3の記憶手段から抽出する第3の抽出手段と、
    連携可能であることを示す情報を抽出した場合に、前記ユーザーを連携先の第2のクラウドサービスにサインインの操作を可能とするサインイン手段
    を有する情報処理装置。
  3. 前記サインイン手段によって、前記ユーザーが前記第2のクラウドサービスにサインインした場合は、該ユーザーのアカウントと前記組織のアカウントとを対応付けて記憶する対応付手段
    をさらに有する請求項2に記載の情報処理装置。
  4. 前記サインイン手段は、前記第1のクラウドサービスにサインインしようとしているユーザーのアカウントが、前記対応付手段によって対応付けられて記憶されている場合は、前記第2のクラウドサービスにサインインすることが許可される
    請求項3に記載の情報処理装置。
  5. 前記対応付手段によって対応付けられて記憶されているアカウントの組を、前記第1の記憶手段、前記第2の記憶手段、前記第3の記憶手段のいずれか1つ以上との不整合を解消することによってメンテナンスを行うメンテナンス手段
    をさらに有する請求項3に記載の情報処理装置。
  6. 前記第1のクラウドサービスにサインインしようとしているユーザーのアカウントが、該第1のクラウドサービスに登録されているアカウントに連携されていない場合に、前記第1の抽出手段による処理を行うように制御する制御手段
    をさらに有する請求項2に記載の情報処理装置。
  7. 前記第1のクラウドサービスにサインインしようとしているユーザーのアカウントが、前記第2のクラウドサービスに登録されていない場合に、前記制御手段による処理を行うように制御する第2の制御手段
    をさらに有する請求項6に記載の情報処理装置。
  8. コンピュータを、
    連携元の第1のクラウドサービスにサインインしたユーザーが、連携先の第2のクラウドサービスにサインインする場合に、該第2のクラウドサービスに登録されているアカウントに他のアカウントとの連携を許可する旨の設定がされているときは、該ユーザーに、該第2のクラウドサービスへのサインインの操作を可能とするサインイン手段
    として機能させるための情報処理プログラム。
  9. コンピュータを、
    クラウドサービスにおけるアカウントと認証方式別に連携の許可対象の組織とを対応させて記憶している第1の記憶手段と、
    前記組織と認証方式別に連携の許可可能か否かを示す情報とを対応させて記憶している第2の記憶手段と、
    アカウントと該アカウントが他のアカウントと連携可能か否かを示す情報とを対応させて記憶している第3の記憶手段と、
    連携元の第1のクラウドサービスにサインインしたユーザーのアカウントに対応する許可対象の組織を、前記第1の記憶手段から抽出する第1の抽出手段と、
    前記許可対象の組織に対応する認証方式別の許可可能か否かを示す情報を、前記第2の記憶手段から抽出する第2の抽出手段と、
    認証方式別の許可可能である組織のアカウントが他のアカウントと連携可能か否かを示す情報を、前記第3の記憶手段から抽出する第3の抽出手段と、
    連携可能であることを示す情報を抽出した場合に、前記ユーザーを連携先の第2のクラウドサービスにサインインの操作を可能とするサインイン手段
    として機能させるための情報処理プログラム。
JP2017035168A 2017-02-27 2017-02-27 情報処理装置及び情報処理プログラム Active JP6897155B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017035168A JP6897155B2 (ja) 2017-02-27 2017-02-27 情報処理装置及び情報処理プログラム
US15/784,197 US10708254B2 (en) 2017-02-27 2017-10-16 Information processing apparatus and non-transitory computer readable medium storing information processing program for single sign-on

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017035168A JP6897155B2 (ja) 2017-02-27 2017-02-27 情報処理装置及び情報処理プログラム

Publications (2)

Publication Number Publication Date
JP2018142122A true JP2018142122A (ja) 2018-09-13
JP6897155B2 JP6897155B2 (ja) 2021-06-30

Family

ID=63247104

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017035168A Active JP6897155B2 (ja) 2017-02-27 2017-02-27 情報処理装置及び情報処理プログラム

Country Status (2)

Country Link
US (1) US10708254B2 (ja)
JP (1) JP6897155B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021014934A1 (ja) * 2019-07-19 2021-01-28 ソニー株式会社 情報処理装置、及び情報処理方法
JP2021064063A (ja) * 2019-10-10 2021-04-22 株式会社リコー 情報処理装置、情報処理システム、情報処理方法、およびプログラム
JP2022156552A (ja) * 2021-03-31 2022-10-14 株式会社アクシオ 認証システム及び認証方法
JP7453453B1 (ja) 2023-06-14 2024-03-19 PayPay株式会社 電子決済サービスを提供する情報処理装置、電子決済サービスを提供する情報処理方法及び電子決済サービスを提供する情報処理プログラム
US11971966B2 (en) 2020-08-03 2024-04-30 Ricoh Company, Ltd. Information processing method, information processing apparatus, information processing system, and recording medium

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10846420B2 (en) * 2018-06-29 2020-11-24 Forcepoint Llc Domain controller agent subscription to kerberos events for reliable transparent identification
US11588805B2 (en) * 2019-06-28 2023-02-21 Sigma Computing, Inc. Syncing data warehouse permissions using single sign-on authentication
JP2022098997A (ja) * 2020-12-22 2022-07-04 富士フイルムビジネスイノベーション株式会社 画像形成装置、画像形成プログラム及び連携システム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011175402A (ja) * 2010-02-24 2011-09-08 Mitsubishi Electric Corp アクセス制御連携システム及びアクセス制御連携方法
JP2012243027A (ja) * 2011-05-18 2012-12-10 Canon Inc 情報処理システム、その情報処理システムを制御する制御方法、およびそのプログラム。
JP2013171349A (ja) * 2012-02-17 2013-09-02 Toshiba Corp 認証連携システム、idプロバイダ装置およびプログラム
JP2017033339A (ja) * 2015-08-03 2017-02-09 株式会社リコー サービス提供システム、情報処理装置、プログラム及びサービス利用情報作成方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2397740C (en) * 2000-01-14 2015-06-30 Catavault Method and system for secure registration, storage, management and linkage of personal authentication credentials data over a network
US7340048B2 (en) * 2000-07-14 2008-03-04 Context Connect Llc System and method for directory services and e-commerce across multi-provider networks
JP2002032340A (ja) * 2000-07-14 2002-01-31 Nec Corp Webサイトに対するシングルサインオンシステム及び方法並びに記録媒体
EP1315064A1 (en) * 2001-11-21 2003-05-28 Sun Microsystems, Inc. Single authentication for a plurality of services
US20030182551A1 (en) * 2002-03-25 2003-09-25 Frantz Christopher J. Method for a single sign-on
US20090271847A1 (en) * 2008-04-25 2009-10-29 Nokia Corporation Methods, Apparatuses, and Computer Program Products for Providing a Single Service Sign-On
JP2013149238A (ja) 2011-12-22 2013-08-01 Canon Marketing Japan Inc 情報処理装置、情報処理方法、プログラム
US9087178B2 (en) * 2012-04-25 2015-07-21 Convivial Corporation System and method for posting content to network sites
US8955080B2 (en) * 2012-12-07 2015-02-10 Sap Se Managing single sign-ons between different entities
JP2016085638A (ja) 2014-10-27 2016-05-19 キヤノン株式会社 サーバー装置、端末装置、システム、情報処理方法及びプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011175402A (ja) * 2010-02-24 2011-09-08 Mitsubishi Electric Corp アクセス制御連携システム及びアクセス制御連携方法
JP2012243027A (ja) * 2011-05-18 2012-12-10 Canon Inc 情報処理システム、その情報処理システムを制御する制御方法、およびそのプログラム。
JP2013171349A (ja) * 2012-02-17 2013-09-02 Toshiba Corp 認証連携システム、idプロバイダ装置およびプログラム
JP2017033339A (ja) * 2015-08-03 2017-02-09 株式会社リコー サービス提供システム、情報処理装置、プログラム及びサービス利用情報作成方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021014934A1 (ja) * 2019-07-19 2021-01-28 ソニー株式会社 情報処理装置、及び情報処理方法
JP2021064063A (ja) * 2019-10-10 2021-04-22 株式会社リコー 情報処理装置、情報処理システム、情報処理方法、およびプログラム
US11971966B2 (en) 2020-08-03 2024-04-30 Ricoh Company, Ltd. Information processing method, information processing apparatus, information processing system, and recording medium
JP2022156552A (ja) * 2021-03-31 2022-10-14 株式会社アクシオ 認証システム及び認証方法
JP7159382B2 (ja) 2021-03-31 2022-10-24 株式会社アクシオ 認証システム及び認証方法
JP7453453B1 (ja) 2023-06-14 2024-03-19 PayPay株式会社 電子決済サービスを提供する情報処理装置、電子決済サービスを提供する情報処理方法及び電子決済サービスを提供する情報処理プログラム

Also Published As

Publication number Publication date
US20180248866A1 (en) 2018-08-30
US10708254B2 (en) 2020-07-07
JP6897155B2 (ja) 2021-06-30

Similar Documents

Publication Publication Date Title
JP6897155B2 (ja) 情報処理装置及び情報処理プログラム
US9923889B2 (en) Data processing system, data processing apparatus and log in method
US9294484B2 (en) System, service providing device, and service providing method
US20100211945A1 (en) License management system, license management computer, license management method, and license management program embodied on computer readable medium
CN105262716A (zh) 连接控制系统、管理服务器以及连接支援方法
JP6507863B2 (ja) 情報処理装置及びプログラム
EP2990986B1 (en) Output system, output apparatus, and output method
US10055181B2 (en) Image processing device, information processing device, image processing method, and non-transitory computer readable medium
JP5311999B2 (ja) 利用者情報管理装置、利用者登録管理システム、利用者情報管理方法及び利用者情報管理プログラム
JP6927282B2 (ja) 情報処理装置、端末装置、プログラム及び情報処理システム
US11442922B2 (en) Data management method, data management apparatus, and non-transitory computer readable medium
JP6136192B2 (ja) ライセンス管理装置、ライセンス管理システム、及びライセンス管理方法
JP6720755B2 (ja) 情報処理装置及び情報処理プログラム
US20210021586A1 (en) Information processing apparatus and non-transitory computer readable medium
CN111386525B (zh) 对一次性认证信息进行认证的方法、设备及存储介质
JP2017027100A (ja) 画像処理装置及び画像処理プログラム
JP6455178B2 (ja) 情報処理装置及び情報処理プログラム
JP2019087281A (ja) 情報処理装置及びプログラム
JP2015184739A (ja) 情報処理装置、情報処理システム及び情報処理プログラム
US11962583B2 (en) Authentication system using access point device and authentication server to handle a device's network access authentication request
JP6443007B2 (ja) 情報処理装置及び情報処理プログラム
JP6728706B2 (ja) 情報処理システム、情報処理装置及び情報処理プログラム
US20210144146A1 (en) At least one information processing apparatus, information processing system, and permission granting method
JP2021124808A (ja) 情報処理装置及び情報処理プログラム
JP5970494B2 (ja) 中継装置、認証制御方法及びコンピュータプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200121

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201030

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201201

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201225

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210524

R150 Certificate of patent or registration of utility model

Ref document number: 6897155

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150