JP2013025405A - シングルサインオンを提供するシステムおよびその制御方法、サービス提供装置、中継手段、並びにプログラム - Google Patents

シングルサインオンを提供するシステムおよびその制御方法、サービス提供装置、中継手段、並びにプログラム Download PDF

Info

Publication number
JP2013025405A
JP2013025405A JP2011157125A JP2011157125A JP2013025405A JP 2013025405 A JP2013025405 A JP 2013025405A JP 2011157125 A JP2011157125 A JP 2011157125A JP 2011157125 A JP2011157125 A JP 2011157125A JP 2013025405 A JP2013025405 A JP 2013025405A
Authority
JP
Japan
Prior art keywords
service
service providing
authentication
providing apparatus
affiliation 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
JP2011157125A
Other languages
English (en)
Other versions
JP2013025405A5 (ja
JP5744656B2 (ja
Inventor
Takayuki Uchida
貴之 内田
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2011157125A priority Critical patent/JP5744656B2/ja
Priority to US13/523,343 priority patent/US9021570B2/en
Publication of JP2013025405A publication Critical patent/JP2013025405A/ja
Publication of JP2013025405A5 publication Critical patent/JP2013025405A5/ja
Application granted granted Critical
Publication of JP5744656B2 publication Critical patent/JP5744656B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/41User authentication where a single sign-on provides access to a plurality of computers

Abstract

【課題】1度のみユーザにテナント情報を入力させ、以降はそのテナント情報を用いることで再度のテナント情報の入力をすることなくSSOを行えるようにする。
【解決手段】第二のサービス提供装置が提供する、第一のサービス提供装置にアクセスするための情報に従って行われるクライアント端末からのアクセスの認証が未完了である場合、中継手段に認証手段による認証処理を依頼する依頼手段と、サービスを提供する提供手段と、当該クライアント端末が前記第二のサービス提供装置から、当該第一のサービス提供装置にアクセスするための情報と共に所属情報を取得できたか否かを判定する判定手段と、前記判定手段により、前記第二のサービス提供装置から所属情報を取得できなかったと判定した場合、前記第二のサービス提供装置に、前記中継手段がユーザから受け付けることで取得される所属情報を保存させる指示手段とを有する。
【選択図】図16

Description

本発明は、シングルサインオンを提供するシステムおよびその制御方法、サービス提供装置、中継手段、並びにプログラムに関する。
クラウドプラットフォームサービス上で業務データの管理や各種処理を行う形態が普及し始めている。ユーザは、クライアントPCのブラウザからインターネットを介してクラウドプラットフォームサービスのWebページにアクセスし、そのWebページ上で閲覧したい業務データを表示する。その画面から文書作成指示を行うと、文書生成サービスにリダイレクトされ、文書生成サービスがクラウドプラットフォームサービスにある業務データを取得して文書を生成する。そして、文書生成サービスは、生成された文書をクライアントPC200やクラウドプラットフォームサービスに送信する。クラウドプラットフォームサービスの代表例として、例えば、Salesforce.com社のSalesforce.com(R)がある。
クラウドプラットフォームサービスや文書生成サービスは、マルチテナントで動作する。テナントとは、クラウドプラットフォームサービスや文書生成サービスを使用する契約を締結した企業や組織の単位である。マルチテナントで動作するサービスは、1つのシステムで複数のテナントのデータを管理し、あるテナントのデータが別のテナントから参照できないよう各テナントのデータを分離して管理する。自身のテナントのデータのみを参照させるため、クラウドプラットフォームサービスや文書生成サービスはユーザ認証を行う。
クラウドプラットフォームサービスと文書生成サービスが連携を行う場合、ユーザがそれぞれのサービスで認証を行うことなくサービス間で認証を連携させることが可能である。従来複数のサービス間で認証を連携させる技術として、例えばSAML(Security Assertion Markup Language)によるシングルサインオン(Single Sign−ON:以下、SSO)の仕組みがある。SAMLのSSOにおいて、ユーザは、認証サービスを提供する側(Identity Provider、以下IdP)、および認証サービスの認証結果を信頼してサービスを提供する側(Service Provider、以下SP)の両方のIDを保有する。
ユーザがIdPで認証を受けると、SPはその認証結果を信頼して、そのアクセスをSP内で管理するIDとして認証する(IdP先行)。また、IdPで認証を受けていない未認証のユーザがSPにアクセスしてきた場合、SPは、未認証のユーザを適切なIdPへと誘導し、IdPで認証させる(SP先行)。
クラウドプラットフォームサービスと文書生成サービスは、それぞれ異なるテナント情報を有する。SSOを行うには、クラウドプラットフォームサービスと文書生成サービスとがお互いのテナントを把握する必要がある。なぜなら、どのテナントがSSOを行い、他方のサービスのどのテナントと対応してSSOを行うのかを知る必要があるためである。
そこで従来は、お互いのテナント情報を同期して保持する方式があった。特許文献1には、すべてのサーバでテナント情報を同期して保持し、他のサーバからテナント情報の変更通知を受信してテナント情報を更新する方式が開示されている。
特開平10−187560号公報
しかし、クラウドプラットフォームサービスを使用するテナントが必ずしも文書生成サービスを使用するとは限らない。クラウドプラットフォームサービスのみを使用するテナントがあり、また逆に文書生成サービスのみを使用するテナントもある。そのような状況においては、クラウドプラットフォームサービスと文書生成サービスがお互いのテナントの情報を同期して保持することは、セキュリティの観点から避けるべきである。しかしながら、SSOを行うテナントに関しては、他方のサービスからアクセスしてきたテナントが、自サービスが扱うどのテナントに対応しているかを区別できなければ、認証装置に再度認証させてテナントを判断できるようにする必要がある。この場合、認証時にユーザによる再度のテナント情報の入力が生じ、SSOを実現できない。
上記課題を解決するために、本願発明は以下の構成を有する。すなわち、第一のサービス提供装置、第二のサービス提供装置、中継装置、および1以上の認証装置が連携して、クライアント端末のブラウザを介してユーザが利用するシングルサインオンによるサービスの提供を行うシステムであって、前記第二のサービス提供装置は、ユーザが属するグループを特定する所属情報を管理する管理手段と、当該第二のサービス提供装置によるサービスを提供している際に、ユーザから前記第一のサービス提供装置によるサービスの提供の指示を受け付けた場合、前記第一のサービス提供装置にアクセスするための情報と、当該ユーザが属するグループの所属情報が前記管理手段にて管理されている場合には当該所属情報とを、前記クライアント端末へ送信する送信手段とを有し、前記第一のサービス提供装置は、前記アクセスするための情報に従って行われるクライアント端末からのアクセスの認証が未完了である場合、前記中継装置に前記認証装置による認証処理を依頼する依頼手段と、前記認証装置による認証処理の結果に従って、サービスを提供する提供手段と、認証が完了しているクライアント端末からのアクセスにおいて、当該クライアント端末が前記第二のサービス提供装置から、当該第一のサービス提供装置にアクセスするための情報と共に所属情報を取得できたか否かを判定する第一の判定手段と、前記第一の判定手段により、前記第二のサービス提供装置から所属情報を取得できなかったと判定した場合、前記第二のサービス提供装置の管理手段に、前記中継装置がユーザから受け付けることによって取得される所属情報を保存させる指示手段とを有し、前記中継装置は、前記第一のサービス提供装置から依頼を受けた際に、前記クライアント端末が前記第二のサービス提供装置から、前記第一のサービス提供装置にアクセスするための情報と共に所属情報を取得できたか否かを判定する第二の判定手段と、前記第二の判定手段により、前記第二のサービス提供装置から所属情報を取得できなかったと判定した場合、ユーザから所属情報を受け付ける受付手段と、前記クライアント端末が前記第二のサービス提供装置から取得した所属情報、もしくは前記受付手段にて受け付けた所属情報を用いて、当該所属情報に対応付けられた前記1以上の認証装置のうちのいずれかに、認証処理を依頼する認証依頼手段とを有する。
本発明によれば、1度のみユーザにテナント情報を入力させ、以降はそのテナント情報を用いることで再度のテナント情報の入力をすることなくSSOを行える。
ネットワーク構成を示す図。 ハードウェア構成図。 モジュール構成例の図。 第一実施形態に係るサービス提供サービスAのモジュール構成図。 サービス提供サービスBのモジュール構成図。 管理モジュールが管理する情報の構成例を示す図。 サービス提供サービスBの業務データを表示する画面の例の図。 各種入力画面の例を示す図。 第一実施形態に係るボタン設定の記述例を示す図。 クライアントPCのブラウザによるフローチャート。 サービス提供サービスBにおけるフローチャート。 サービス提供サービスAにおけるフローチャート。 認証サービス決定サービスのフローチャート。 SSOを実現する際の認証サービスBにおけるフローチャート。 SSOを実現する際の認証サービスAにおけるフローチャート。 サービス提供サービスAのフローチャート。 サービス提供サービスBのフローチャート。 第二実施形態に係るサービス提供サービスAのモジュール構成図。 第二実施形態に係るボタン設定の記述例を示す図。 第二実施形態に係るクライアントPCのブラウザによるフローチャート。 第二実施形態に係るサービス提供サービスAにおけるフローチャート。 第三実施形態に係るサービス提供サービスAのモジュール構成図。 第三実施形態に係るサービス提供サービスBのモジュール構成図。 第三実施形態に係るボタン設定の記述例を示す図。 第三実施形態に係るサービス提供サービスAにおけるフローチャート。
本発明の目的は、認証を連携させたSSOシステムにおいて、1度のみテナント情報(企業ID)を入力させ、それ以降はテナント情報のための入力画面を表示させないことである。
<第一実施形態>
[システム構成]
以降、本発明を実施するための最良の形態について図面を用いて説明する。図1は、本発明の実施形態に係るシステム構成を示すブロック図である。WAN(Wide Area Network)100において、WWW(World Wide Web)システムが構築されている。LAN(Local Area Network)101は各構成要素を接続する。WAN100を介することで、LAN101に接続された互いの装置は通信可能になる。
ユーザが操作するクライアントPC200は、ブラウザ(不図示)を備える。また、クライアントPCは、後述するサービス提供サービスA500(第一のサービス提供装置)やサービス提供サービスB550(第二のサービス提供装置)に対してリクエストを発行する。認証サービス決定サービス300は、ネットワークに接続された1以上のIdP(アイデンティティプロバイダ装置)のうち、ユーザのアクセスを適切なIdPへと誘導する中継装置としての役割を担う。認証サービスA400、認証サービスB450はそれぞれ認証を行い、いずれもIdPとして動作する。なお認証サービスは2つに限定されるものではない。どのIdPが実際の認証を行うかはアクセスしてきたユーザによって異なる。
サービス提供サービスA500、サービス提供サービスB550はそれぞれ、認証サービスに正常に認証されたユーザに対して各種サービスを提供する。本実施形態では、サービス提供サービスA500は、クライアントPC200からのリクエストを受信して文書生成を行う(文書生成サービス)。また、サービス提供サービスB550は、クライアントPC200やサービス提供サービスA500からのリクエストに応じて保持するデータの表示・更新等を行う(クラウドプラットフォームサービス)。なお、サービス提供サービスA500、サービス提供サービスB550は、文書生成サービスやクラウドプラットフォームサービスに限定されるものではなく、別のサービスであってもよい。
クライアントPC200、認証サービス決定サービス300、認証サービスA400、認証サービスB450、サービス提供サービスA500、サービス提供サービスB550はそれぞれ、WAN100およびLAN101を介して接続されている。なおクライアントPC200および各サービスは、それぞれ別個のLAN上に構成されていてもよいし、同一のLAN上に構成されていてもよい。また、各サービスは、同一の装置にて提供されるように構成されていてもよい。認証サービス決定サービス300、認証サービスA400、サービス提供サービスA500は、同じネットワーク内(イントラネット内)に構築されたサーバ群である。また、認証サービスB450、サービス提供サービスB550は同じネットワーク内(イントラネット内)に構築されたサーバ群である。
クライアントPC200はまず、サービスを受けるため、サービス提供サービスB550にアクセスする。サービス提供サービスB550は未認証のユーザのアクセスを受け付けると、認証画面(不図示)を表示し、ユーザ認証を行う。サービス提供サービスB550は、ユーザを認証すると、業務データの表示を行うためのデータをクライアントPC200に提供する。そして、クライアントPC200は、提供されたデータを表示する。本実施形態では、データを表示する際には、クライアントPC200が備えるブラウザを用いることができる。
図7は、本実施形態に係るサービス提供サービスB550が提供する業務データの画面701の例である。業務データの画面701は、例えば「商談」「顧客」等のタブから構成されており、ここでは「商談」タブがアクティブに表示され、ある1つの商談レコードの詳細情報や商品が表示されている。
また、サービス提供サービスA500へリダイレクトを行うための設定がなされたボタン702が表示されている。ボタン702は、ボタン押下時の動作や、どのタブ(画面)に表示するか、等を任意に設定可能で、ユーザ(管理者)によって画面に配置される。ボタン702が押下されると、クライアントPC200はサービス提供サービスA500へアクセスのリダイレクトを行う。つまり、サービス提供サービスB550が提供するサービスと連携した、サービス提供サービスA500によるサービスの提供を指示することができる。このボタン702にて実行される機能については、図9等を用いて後述する。
サービス提供サービスA500はクライアントPC200から未認証のユーザのアクセスを受け付けると、アクセスを認証サービス決定サービス300にリダイレクトさせる。なお、アクセスしたユーザに対して未認証か否かについては、アクセス時にサービス提供サービスA500が取得可能な情報(例えば、SSOにてやり取りされる情報)に基づいて判断するものとし、ここでの詳細な説明は省略する。認証サービス決定サービス300は、未認証のアクセスを適切な認証サービスA400または認証サービスB450にリダイレクトさせる。認証サービスA400または認証サービスB450はユーザの認証を行うと、再度ユーザアクセスをサービス提供サービスA500にリダイレクトさせ、サービス提供サービスA500がユーザにサービスを提供する。
図2は、本実施形態に係るクライアントPC200の構成を示す図である。また認証サービス決定サービス300、認証サービスA400、認証サービスB450、サービス提供サービスA500、サービス提供サービスB550を提供するサーバコンピュータの構成も同様である。これらサービスはサーバとして構成され、図2に示されるハードウェアブロック図の構成を有する。このように、本実施形態のクライアントPC200およびサーバには一般的な情報処理装置のハードウェア構成を適用できる。
図2において、CPU201は、ROM203のプログラム用ROMに記憶された、或いはハードディスク211からRAM202にロードされたOSやアプリケーション等のプログラムを実行する。ここでOSとはコンピュータ上で稼動するオペレーティングシステムの略語であり、以下オペレーティングシステムのことをOSと呼ぶ。後述する各フローチャートの処理は、上記プログラムの実行により実現できる。
RAM202は、CPU201の主メモリ、ワークエリア等として機能する。キーボードコントローラ(KBC)205は、キーボード(KB)209やポインティングデバイス(不図示)からのキー入力を制御する。CRTコントローラ(CRTC)206は、CRTディスプレイ210の表示を制御する。ディスクコントローラ(DKC)207は各種データを記憶するハードディスク(HD)211やフロッピー(登録商標)ディスク(FD)等におけるデータアクセスを制御する。NC212はネットワークに接続されて、ネットワークに接続された他の機器との通信制御処理を実行する。
尚、後述の全ての説明においては、特に断りのない限り実行のハード上の主体はCPU201であり、ソフトウェア上の主体はハードディスク(HD)211にインストールされたアプリケーションプログラムである。
[モジュール構成]
以下に本実施形態に係る各サービスを構成するモジュールについて説明する。
(認証サービスのモジュール構成)
図3は、本実施形態に係るモジュール構成図である。図3(A)に認証サービス決定サービス300、図3(B)に認証サービスA400、図3(C)に認証サービスB450をそれぞれ示している。上記の2つの認証サービスはいずれもIdPとして機能するが、IdPが1つであっても良い。少なくとも1つ以上のIdPが存在すれば、本発明は実施可能である。また、第一実施形態においては、認証サービス決定サービス300、認証サービスA400、およびサービス提供サービスA500がSPとなる。SPは、IdPとシングルサインオン連携を行う。
図3(A)は、本実施形態に係る認証サービス決定サービス300のモジュール構成例の図である。なおここでユーザのグループ識別子として企業IDを用いているが、ユーザのグループ識別子は企業IDに限定されるものではない。ここでの企業IDとは、本システムを利用する組織や法人単位に一意に割り当てられた固有の所属情報であり、テナントIDとも称する。例えば、ユーザやユーザが用いるクライアント端末はいずれかのテナントに属しているものとし、その所属先を一意に特定することができる。
認証サービス決定サービス300は、管理モジュール301、第1のキー取出モジュール302、第1の取得モジュール303、および第1のアクセス誘導モジュール304を備える。さらに、認証サービス決定サービス300は、判断モジュール305、要求モジュール306、第2のキー取出モジュール307、第2の取得モジュール308、および第2のアクセス誘導モジュール309を備える。
管理モジュール301は、企業IDと、その企業IDに対応するユーザが認証を受ける認証サービスの情報とを関連付けて記憶する。認証サービス決定サービス300が未認証のユーザからのアクセスを受け付けると、判断モジュール305はユーザのアクセスのパラメータに企業IDが含まれるか否かを判断する。
企業IDが含まれている場合、第1のキー取出モジュール302は認証サービスを決定するキーとなる企業IDを取り出す。第1の取得モジュール303は、取り出した企業IDを用いて、管理モジュール301から認証サービスの情報を取得する。ここで管理モジュール301が保持する企業IDの情報については、図6を用いて後述する。第1のアクセス誘導モジュール304は管理モジュール301から取得した企業IDに従い、ユーザを適切な認証サービスにアクセスするように誘導する。
企業IDが含まれない場合、要求モジュール306が企業IDをユーザに入力するように要求する画面を表示させる。第2のキー取出モジュール307は、要求モジュール306が提示した画面で入力された企業IDを取り出す。第2の取得モジュール308は、取り出した企業IDを用いて、管理モジュール301から認証サービスの情報を取得する。第2のアクセス誘導モジュール309は取り出した認証サービスの情報に従い、認証サービス決定サービス300に対するユーザのアクセスを適切な認証サービスに誘導する。なお、認証サービスB450は、認証サービスA400とSSOを実現していることを想定している。
図3(B)は、本実施形態に係る認証サービスA400のモジュール構成例の図である。認証サービスA400は、サービスA認証モジュール401とアサーション検証モジュール402を備える。
認証サービスA400が未認証のアクセスを受け付けると、例えば図8(B)に示すような構成の認証画面810を提示し、ユーザにユーザIDとパスワードの入力を促し認証を行う。またSSOを実現させるために、認証サービスA400が他の認証サービスにより提供された認証結果をユーザのアクセスから受け取ると、アサーション検証モジュール402がその認証結果の妥当性を検証し、ユーザのアクセスを承認するか否かを決定する。なお本実施形態において認証結果としての情報はSAMLアサーションを想定するが、本発明に係るSSOはSAMLおよびSAMLアサーションを用いたものに限定するものではない。なお、アサーションとは、認証結果に応じて発行され、サービス間でやり取りされる認証情報を指す。
図3(C)は、本実施形態に係る認証サービスB450のモジュール構成図である。認証サービスB450は、サービスB認証モジュール451とアサーション発行モジュール452を備える。
認証サービスB450が未認証のアクセスを受け付けると、例えば図8(C)に示すような構成の認証画面820を提示し、そのアクセスを行っているユーザにユーザIDとパスワードの入力を促し認証を行う。認証に成功するとアサーション発行モジュール452が認証結果としてのSAMLアサーションを生成し、アサーションの検証を行うことが可能な認証サービスへ、ユーザのアクセスをリダイレクトさせる。
(サービス提供サービスのモジュール構成)
図4は、本実施形態に係るサービス提供サービスA500のモジュール構成例の図である。サービス提供サービスA500は、アクセス拒否モジュール501、企業ID保存判断モジュール502、企業ID取得モジュール503、企業ID保存モジュール504、データ取得モジュール505、文書生成モジュール506、およびページ生成モジュール507を備える。
サービス提供サービスA500は、ユーザからのアクセスを受け付けると、そのアクセスが認証済みであるか否かをアクセス拒否モジュール501が判断する。ここで、認証済みか否かの判断は、アクセス時にサービス提供サービスA500が取得可能な情報を用いて判断することとし、ここでは詳細な説明は省略する。未認証のアクセスである場合には、アクセス拒否モジュール501は、認証サービス決定サービス300へリダイレクトさせる。またアクセスが認証済みであれば、サービス提供サービスA500は、文書生成モジュール506によりユーザに対してサービスを提供する。
企業ID保存判断モジュール502は、認証サービスA400からのリダイレクトのURLパラメータに企業IDが含まれるかを判断する。ここで、アクセス先の位置情報であるURL(Uniform Resource Locator)に各種属性情報(設定値)を含めた情報をまとめて、URLパラメータと記載する。ユーザがアクセスする際に取得されるURLパラメータに企業IDが含まれない場合、企業ID取得モジュール503が何らかの方法で企業IDを取得し、企業ID保存モジュール504が取得した企業IDをユーザ(もしくはセッション等)に対応付けてサービス提供サービスB550に保存する。
企業ID取得モジュール503が企業IDを取得する方法は、例えば、認証サービスA400が企業IDをHTTPヘッダに設定するようにし、企業ID取得モジュール503がHTTPヘッダから取得することが考えられる。データ取得モジュール505は、サービス提供サービスB550から業務データを取得する。文書生成モジュール506は、フォーム管理モジュール(不図示)が管理するフォームを取得して、データ取得モジュール505が取得した業務データとフォームから文書データを生成する。ページ生成モジュール507はレスポンスページを生成してクライアントPC200に返す。
図5は、本実施形態に係るサービス提供サービスB550のモジュール構成例の図である。サービス提供サービスB550は、アクセス拒否モジュール551、企業ID管理モジュール5531、企業ID取得モジュール5532、業務データ管理モジュール5533、設定管理モジュール5534を備える。ここで、サービス提供サービスB550において、企業ID管理モジュール、企業ID取得モジュール、業務データ管理モジュール、設定管理モジュールはそれぞれ、テナント(企業もしくは契約)ごとに提供される。つまり、自身が属するテナントに割り当てられた各種モジュールを利用することとなる。以下の説明においては、1つのテナント(企業「11111111」)を例にとって説明するが、それぞれのモジュールは各テナントに関する要求に応じて動作するものとする。なお、これらテナント毎に割り当てられるモジュールは、同一のハードディスク(HD)211に記憶されてテナント毎のデータを論理的に分離して管理するようにしてもよいし、ハードディスク(HD)211を分けて物理的に分離して管理するようにしてもよい。
サービス提供サービスB550は、ユーザからのアクセスを受け付けると、そのアクセスが認証済みであるか否かをアクセス拒否モジュール551が判断する。未認証のアクセスである場合には、ページ生成モジュール552が認証画面を表示する。認証済みであれば、サービス提供サービスB550はサービスを提供する。
サービス提供サービスB550が業務データ表示のリクエストを受け付けると、業務データ管理モジュール5533が業務データを取得する。業務データを表示する画面にボタンが含まれる場合、設定管理モジュール5534がボタン設定を取得する。ここで取得されるボタンの設定については、後述する。ページ生成モジュール552は、レスポンスページを生成してクライアントPC200に返す。
図9は、本実施形態に係るボタン設定の記述例を示す図であり、例えば、図7に示した業務データの画面701に配置される。ここで、ボタン702に対応する表示名901が「文書作成」と設定され、ボタン702を押下した場合の動作902として、クライアントPC200のブラウザ上でJavaScript(登録商標)を実行するよう定義されている。また、実行するJavaScriptの内容903が図9に示す記述例の中に定義されている。
図9において、企業IDを取得するよう定義されている部分は、後述の企業ID取得モジュール5532から企業IDを取得する。企業IDを取得する方法として、例えば、企業IDを取得するWebサービスAPIが公開されており、クライアントPC側からそのWebサービスAPIを呼び出す方法が考えられる。
図9において、{!$Api.Session_ID}とは、認証したユーザのセッションIDをサービス提供サービスB550のセッション管理モジュール(不図示)から取得することを意味している。図9において、{!$Api.Server_URL}とは、サービス提供サービスB550にアクセスするためのURLを取得することを意味している。図9において、{!Opportunity.Id}とは、画面に表示した商談レコードのレコードIDを取得することを意味している。
図9のように設定されたボタン702を押下すると、クライアントPC200のブラウザ上でJavaScriptが実行され、別ウィンドウが表示されて「http://service_a/service」にリダイレクトする。ここでは、「http://service_a/service」は、サービス提供サービスA500のURLを示すものとする。リダイレクトのURLパラメータとして、上記URLに加え、「TENANT_ID」、「sessionid」、「serverurl」、「recordid」を含む。パラメータ「TENANT_ID」は企業IDを指す。パラメータ「sessionid」は認証したユーザのセッションIDを指す。パラメータ「serverurl」は、サービス提供サービスB550にアクセスするためのURLを指す。そして、パラメータ「recordid」は、商談レコードのレコードIDを指す。なお、以降、本実施形態においては、特に断りの無い限りURLパラメータに含まれる企業IDとは、パラメータ「TENANT_ID」の値のことを指す。
サービス提供サービスB550は企業IDを保存するリクエストを受け付けると、企業ID管理モジュール5531が記憶部に企業IDを保存する。通常、企業ID管理モジュールに保存される企業IDは、各テナントで1つである。しかし、これに限定するものではなく、複数の保存できるようにしても構わない。サービス提供サービスB550が企業ID取得のリクエストを受け付けると、企業ID取得モジュール5532は、企業ID管理モジュール5531から企業IDを取得して返す。企業ID取得モジュール5532はクライアントPC200のブラウザから企業ID取得リクエストを受け付けられるよう、例えばWebサービスAPIとして公開されている。
[処理フロー]
以下に各サービスが連携をして行う処理について説明する。なお、各サービス間の連携の流れに沿って順に説明を行う。
(クライアントPCにおける処理)
図10は本実施形態に係る、クライアントPC200のブラウザが実行するフローである。本フローは、クライアントPC200のブラウザに表示される図7に示す業務データの画面701において、ユーザがボタン702を押下することによって開始する。そして、ボタン702の押下時に、ブラウザがボタン702に設定されているJavaScriptを実行することで本フローが実行される。なお、本処理が開始される前提として、ユーザはサービス提供サービスB550にログインしており、セッションIDがサービス提供サービスB550から払いだされているものとする。また、ここで、ユーザは、図5に示す企業「11111111」にログインしているものとする。
S1001でクライアントPC200のブラウザは、サービス提供サービスB550から企業IDを取得するリクエストを行う。S1002でクライアントPC200のブラウザは、企業IDの取得処理がエラーなく終了したかを判断する。エラーにならずに終了した場合は(S1002にてNO)S1003に遷移し、エラーとなった場合は(S1002にてYES)S1007に遷移する。
S1003にてクライアントPC200のブラウザは、サービス提供サービスB550から取得した企業IDが空かどうかを判断する。取得した企業IDが空の場合(S1003にてYES)、S1004でブラウザは企業IDを空としてURLパラメータに設定する。取得した企業IDが空でなかった場合(S1003にてNO)、S1005でブラウザは取得した企業IDをURLパラメータに設定する。そして、S1004、S1005の処理の後、S1006にて、クライアントPC200のブラウザは、サービス提供サービスA500にアクセスする。ここで、URLパラメータとして、サービス提供サービスA500のURL(ここでは「http://service_a/service」)が設定されているものとする。
S1007にて、ブラウザは、画面をリロードする。S1002にてエラーとなるケースとして、例えば、サービス提供サービスB550で認証済のユーザのセッションが切れてしまった場合が挙げられる。この場合、ブラウザは画面をリロードすることで再び認証画面を表示し、認証成功後、直前に表示していた画面に戻ることができる。なお、ブラウザは、S1007で画面をリロードせずにエラー画面を表示するようにしてもよい。以上でクライアントPC200のブラウザによるフローが終了する。
(サービス提供サービスBにおける処理)
図11は本実施形態に係る、サービス提供サービスB550が実行するフローである。本フローは、図10のS1001に示した、クライアントPC200のブラウザがサービス提供サービスB550に対して企業ID取得リクエストを行うことに起因して開始される。
S1101でサービス提供サービスB550は、クライアントPC200から企業ID取得リクエストを受け付ける。S1102で企業ID取得モジュール5532は、企業ID管理モジュール5531から企業IDを取得する。そしてS1103において、企業ID取得モジュール5532は、取得した企業IDの値が空か判断する。企業IDの値が空と判断された場合(S1103にてYES)はS1107に遷移し、空でないと判断された場合は(S1103にてNO)S1104に遷移する。ここで企業IDが空とは、その時点で企業ID管理モジュールが要求を受けたユーザもしくはクライアントPCに対応する企業IDを保持していないことを意味する。
S1104で企業ID取得モジュール5532は、取得した企業IDが複数含まれているかを判断する。企業IDが単数と判断された場合は(S1104にてNO)S1105に遷移し、企業IDが複数と判断された場合は(S1104にてYES)S1106に遷移する。S1105で企業ID取得モジュール5532は、取得した企業IDをレスポンスとしてクライアントPC200へ返す。S1106で企業ID取得モジュール5532は、取得した企業IDのうち、1つ目の企業IDをレスポンスとしてクライアントPC200へ返す。なおS1106において、取得した企業IDは、企業ID管理モジュール5531から企業IDを保存した時刻の古い順に取得されるものとする。ただし、取得される順は企業IDを保存した時刻の古い順に限定されるものではなく、他の基準に従って順序付けをされてもよい。
S1107で企業ID取得モジュール5532は、企業IDが空であることをレスポンスとしてクライアントPC200へ返す。以上でフローを終了する。
(サービス提供サービスAにおける処理)
図12は本実施形態に係る、サービス提供サービスA500が実行するフローである。本フローは、図10に示すS1006において、アクセスがリダイレクトされた結果、ユーザがサービス提供サービスA500にアクセスすることによって開始される。
S1201でサービス提供サービスA500は、ユーザのアクセスを受け付ける。S1202でアクセス拒否モジュール501は、S1201で受け付けたアクセスが認証済みであるか否かを判定する。認証済みであれば(S1202にてYES)S1203に遷移し、未認証であれば(S1202にてNO)S1204に遷移する。ここで認証済みのアクセスか否かについては、アクセス時にサービス提供サービスA500が取得可能な情報(例えば、SSOにてやり取りされる情報)に従って判断するものとし、詳細な説明については省略する。
S1203でサービス提供サービスA500は、サービスを提供し、フローを終了する。S1203のサービスを提供する処理の詳細は、図16を用いて後述する。S1204でアクセス拒否モジュール501は、S1202で未認証と判断されたアクセスを、認証サービス決定サービス300へリダイレクトさせる。なおその際、サービス提供サービスA500は、認証処理の完了後に再度、サービス提供サービスA500にアクセスするための情報を付加しておく。ここでの情報とは、サービス提供サービスA500のURLなどが該当する。情報を付加してリダイレクトが済むと、フローが終了する。
(認証サービス決定サービスにおける処理)
図13は本実施形態に係る、認証サービス決定サービス300が実行するフローである。本フローは、ユーザが直接、認証サービス決定サービス300にアクセスするか、ユーザのアクセスがサービス提供サービスA500からリダイレクトされること(図12のS1204)によって開始される。
S1301で認証サービス決定サービス300は、未認証のユーザのアクセスを受け付ける。S1302で判断モジュール305は、未認証のユーザアクセスのURLパラメータに企業IDが含まれるか判断する(第二の判定)。企業IDが含まれていると判断された場合は(S1302にてYES)S1311に遷移し、含まれていないと判断された場合は(S1302にてNO)S1303に遷移する。
S1303で要求モジュール306は、図8(A)に示されるような企業ID入力画面800を表示させる。この画面により、企業IDに対する受付手段を実現する。S1304で第2のキー取出モジュール307は、ユーザから企業ID入力画面800に入力された企業IDを取り出す。S1305で第2の取得モジュール308は、S1304で取得した企業IDを用い、管理モジュール301から、企業IDに関連付けられた認証サービスの情報を取得する。ここで例えば、S1304で取り出した企業IDが「11111111」であれば、取得できる認証サービスの情報は図6の一覧601に示すように、認証サービスB450のURL「http://service_b/?sp=http%3A%2F%2Fservice_a%2F」である。認証サービス決定サービス300が用いるURLの例においては、認証サービスB450と認証サービスA400とがSSOする場合を想定している。
S1306で第2のアクセス誘導モジュール309は、S1305で取得した認証サービスの情報に従い、未認証のユーザのアクセスをリダイレクトさせる。なおその際、S1301で認証完了後のアクセス先情報を受け取っていれば、ここでもアクセス先情報を付加してリダイレクトさせる。このとき、取得した企業IDはアクセス先情報のパラメータ「TENANT_ID」に付加しない。本実施形態では、取得した企業IDをHTTPヘッダに付加してリダイレクトさせる。
S1311で第1のキー取出モジュール302は、未認証のユーザアクセスのURLパラメータから企業IDを抽出する。S1312で第1の取得モジュール303は、S1311で取得した企業IDを用い、管理モジュール301から、企業IDに関連付けられた認証サービスの情報を取得する。ここで例えば、S1311で取り出した企業IDが「11111111」であれば、取得できる認証サービスの情報は図6の一覧601に示すように、認証サービスB450のURL「http://service_b/?sp=http%3A%2F%2Fservice_a%2F」である。認証サービス決定サービス300が用いるURLの例においては、認証サービスB450と認証サービスA400とがSSOする場合を想定している。
S1313で第1のアクセス誘導モジュール304は、S1312で取得した認証サービスの情報に従い、未認証のユーザアクセスをリダイレクトさせる。なおその際、S1301で認証完了後のアクセス先情報を受け取っていれば、ここでもアクセス先情報を付加してリダイレクトさせる。リダイレクトが済むとフローが終了する。
図8は本実施形態に係る、企業ID入力画面800である。ユーザは本画面を介して、自身が所属する企業の企業IDを入力することができる。また、S1306、S1313の処理により、各認証サービスに対して、認証依頼を行うこととなる。
(認証サービスBにおける処理)
図14は本実施形態に係る、SSOを実現する際の認証サービスB450におけるフローである。本フローは、図13に示したように、ユーザのアクセスが認証サービス決定サービス300からリダイレクトされることによって開始される。
S1401で認証サービスB450は、認証サービス決定サービス300からリダイレクトされた認証要求を受け付ける。また認証成功時のリダイレクト先情報をURLパラメータから取得する。この例では「?sp=http%3A%2F%2Fservice_a%2F」の部分がリダイレクト先を表している。S1402でサービスB認証モジュール451は、図8(C)で示されるような認証画面820を表示させる。S1403でサービスB認証モジュール451は、認証画面820で入力された認証情報が正しいか確認する。認証情報が正しければ(S1403にてYES)S1404に遷移し、正しくなければ(S1403にてNO)S1405に遷移する。
S1404でアサーション発行モジュール452は、S1403で正しいと判断された認証情報に対応するアサーションを発行する。なお、アサーションを“クレデンシャル”と称する場合もある。アサーションを発行すると、認証サービスB450はS1401で取得したリダイレクト先情報であるURLにユーザのアクセスをリダイクトさせる。なおその際、S1401で認証完了後のアクセス先情報を受け取っていれば、認証サービスB450は、ここでもアクセス先情報(ここでは、サービス提供サービスA500のURL)を付加して認証サービスA400へリダイレクトさせる。リダイレクトが済むとフローが終了する。
S1405でサービスB認証モジュール451は、認証画面820で入力された認証情報が正しくないため認証失敗した旨を通知する画面を表示させ、フローを終了する。ここでクライアントPC200は、サービスB認証モジュール451から送信された認証失敗画面を表示する。この画面は再度S1402に遷移させユーザから認証情報を受け付ける画面であってもよいし、単に認証に失敗したことを示すだけの画面であってもよい。またそのいずれかに限定されるものでもない。
S1404の時点では、アサーションを発行したのみであるためユーザのアクセスの認証は未完了の状態である。そのため、ユーザが継続してサービス提供サービスA500にアクセスしようとしても、アクセスできない。したがって、認証サービスA400において図15に示されるフローが実施される。
(認証サービスAにおける処理)
図15は本実施形態に係る、SSOを実現する際の認証サービスA400におけるフローである。本フローはユーザのアクセスが認証サービスB450で認証に成功し、図14のS1404にてアクセスがリダイレクトされることによって開始される。
S1501で認証サービスA400は、認証サービスB450からのリダイレクトを受け付ける。S1502でアサーション検証モジュール402は、S1501で受け付けたリダイレクトに含まれるアサーションが妥当なものか検証する。検証の結果、妥当であると判断された場合は(S1502にてYES)S1503に遷移する。また妥当でないと判断された場合は(S1502にてNO)S1504に遷移する。
S1503でサービスA認証モジュール401は、S1501で受け付けたリダイレクトを認証し、当該サービスへのアクセスを許可する。つまり、サービス提供サービスA500によるサービスの提供が許可される。ここで、S1501で認証完了後のアクセス先情報を受け取っていれば、そのアクセス先情報に基づいてユーザのアクセスをリダイレクトさせる。上述したように、認証完了後のリダイレクト先としてサービス提供サービスA500が指定されていた場合は、ユーザのアクセスをサービス提供サービスA500にリダイレクトさせる。このとき、すでにユーザのアクセスは認証が済んでいるため、ユーザはサービス提供サービスA500が提供するサービスを受けることができる。リダイレクトが済むとフローが終了する。
S1504でサービスA認証モジュール401は、アサーションが妥当でなかったため認証失敗した旨を通知する画面を表示させ、フローを終了する。ここでクライアントPC200は、サービスA認証モジュール401から送信された認証失敗画面を表示する。この画面は単に認証に失敗したことを示すだけの画面であってもよいし、認証サービスB450にて再度認証を行わせるように画面遷移を行うような構成としても構わない。
(サービス提供サービスAにおける処理)
図16は本実施形態に係る、サービス提供サービスA500が実行するフローである。本フローは、図12のS1203の処理に対応する。
S1601で企業ID保存判断モジュール502は、URLパラメータに企業IDが含まれるか判断する。企業IDが含まれていると判断された場合は(S1601にてYES)S1605に遷移し、含まれていないと判断された場合は(S1601にてNO)S1602に遷移する。
S1602で企業ID取得モジュール503は、HTTPヘッダから企業IDを取得する。S1603で企業ID取得モジュール503は、企業IDを取得できたか判断する(第一の判定)。HTTPヘッダに企業IDが含まれない等、企業IDを取得できなかった場合(S1603にてNO)、ページ生成モジュール507はエラー画面を返してフローは終了する。
企業IDを取得できた場合(S1603にてYES)、S1604で企業ID保存モジュール504は、サービス提供サービスB550に対して取得した企業IDを保存させるためのリクエストを行う。企業IDを保存させるためのリクエストは、企業ID保存モジュール504がURLパラメータから「sessionid」、「serverurl」の値を取得してリクエストヘッダに設定し、企業IDレコードを追加するリクエストを実行することで行われる。
その後、S1605でデータ取得モジュール505がパラメータからパラメータ「recordid」を取得してサービス提供サービスB550に対して業務データの取得要求(クエリ)を行う。さらに、文書生成モジュール506はフォーム管理モジュール(不図示)が管理するフォームを取得して、取得した業務データとフォーム管理モジュール(不図示)から取得したフォームから文書データを生成する。S1605の文書生成処理は公知のため説明は割愛する。そして、ページ生成モジュール507は、レスポンスページを生成してクライアントPC200に返す。
(サービス提供サービスBにおける処理)
図17は本実施形態に係る、サービス提供サービスB550が実行するフローである。本フローは、図17のS1604による要求に応じて開始される。
S1701でサービス提供サービスB550は、サービス提供サービスA500からの企業ID保存リクエストを受け付ける。S1702で企業ID管理モジュール5531は、受け付けたリクエストに含まれる企業IDを取得し、S1703で取得した企業IDを記憶部に保存する。以上でフローが終了する。
本実施形態によれば、テナント情報が登録されていない場合には、1度のみユーザにテナント情報を入力させ、そのテナント情報を用いることで、以降はテナント情報を入力させることなくSSOを行えるようになる。
<第二実施形態>
次に、本発明に係る第二実施形態について図面を用いて説明する。なお第一実施形態と共通の部分については説明を省略し、以下では差異部分のみ説明する。
[サービス提供サービスAのモジュール構成]
図18は、本実施形態に係る、サービス提供サービスA500のモジュール構成図である。なお、図4と同様のモジュールにおいては同じ符号を付与しており、以下、差異部分のみ説明する。本実施形態に係るサービス提供サービスA500は、初期処理判断モジュール508を更に備える。初期処理判断モジュール508は、URLパラメータにパラメータ「init」が含まれるかを判断する。
図19は本実施形態に係る、ボタン設定の記述例を示す図である。なお、図9と同様の構成においては同じ符号を付与しており、以下、差異部分のみ説明する。実行するJavaScript(登録商標)の内容1903が定義されている。
図19のように設定されたボタン702を押下すると、クライアントPC200のブラウザ上でJavaScript(登録商標)を実行され、別ウィンドウが表示されて「http://service_a/service」にアクセスをリダイレクトする。このとき、リダイレクトのURLパラメータとして、取得した企業IDが空だった場合にはパラメータ「init」が含まれる。
[処理フロー]
本実施形態に係る処理について述べる。なお、ここでは第一実施形態との処理の差異があるクライアントPCおよびサービス提供サービスAの処理について説明するものとする。
(クライアントPCにおける処理)
図20は本実施形態に係る、クライアントPC200のブラウザが実行するフローである。なお、第一実施形態にて説明した図10と同様の処理については、同じ符号を付与しており、以下、差異部分のみ説明する。
クライアントPC200のブラウザは、S1003で取得した企業IDの値が空かどうかを判断する。取得した企業IDの値が空の場合(S1003にてYES)、S2001でクライアントPC200のブラウザは、パラメータ「init」を“true”としてURLパラメータに設定する。パラメータ「init」は、企業IDが空であるか否かを示すものであり、パラメータ「TENANT_ID」とは別のパラメータとしてURLパラメータに追加して設定する。なお、パラメータ名は「init」に限定されるものではない。
(サービス提供サービスAにおける処理)
図21は、本実施形態に係る、サービス提供サービスA500が実行するフローである。なお、図16と同様のフローにおいては、同じ符号を付与しており、以下、差異部分のみ説明する。S2101で初期処理判断モジュール508は、URLパラメータにパラメータ「init」が含まれるか判断する。パラメータ「init」が含まれていないと判断された場合は(S2101にてNO)S1605に遷移し、含まれていると判断された場合は(S2101にてYES)S1602に遷移する。S1602で企業ID取得モジュール503は、HTTPヘッダから企業IDを取得する。以降の処理については、第一実施形態の図16にて述べたものと同様である。
本実施形態によれば、第一実施形態と同様に、1度のみユーザにテナント情報を入力させ、以降はテナント情報を入力させることなくSSOを行える。
<第三実施形態>
次に、本発明に係る第三実施形態について図面を用いて説明する。なお第一実施形態と共通の部分については説明を省略し、以下では差異部分のみ説明する。
[サービス提供サービスAのモジュール構成]
図22は、本実施形態に係る、サービス提供サービスA500のモジュール構成図である。なお、図4と同様のモジュールにおいては同じ符号を付与しており、以下、差異部分のみ説明する。サービス提供サービスA500は、設定取得モジュール521、設定判断モジュール522、設定更新モジュール523を備える。設定取得モジュール521は、サービス提供サービスB550からボタン設定を取得する。設定判断モジュール522は、取得したボタン設定のURLを判断する。設定更新モジュール523は、ボタン設定のURLを変更してサービス提供サービスB550のボタン設定を更新する。
[サービス提供サービスAのモジュール構成]
図23は本実施形態に係る、サービス提供サービスB550のモジュール構成図である。なお、本実施形態の構成(図23)が第一実施形態の構成(図5)異なる点は、企業ID管理モジュール5531、企業ID取得モジュール5532が存在していないことであり、それ以外は同様のモジュール構成となっている。つまり、サービス提供サービスB550にて企業IDは保持・管理していないこととなる。なお、本実施形態においても、業務データ管理モジュール、設定管理モジュールはそれぞれ、企業(テナント)ごとに定義される。以下の説明においては、1つのテナントを例にとって説明するが、それぞれのモジュールは要求に応じて動作するものとする。なお、これらテナント毎に管理されるモジュールは、同一のハードディスク(HD)211に記憶されてテナント毎のデータを論理的に分離して管理するようにしてもよいし、ハードディスク(HD)211を分けて物理的に分離して管理するようにしてもよい。
図24は、本実施形態に係る、ボタン設定の記述例を示す図である。なお、図9と同様のものにおいては同じ符号を付与しており、以下、差異部分のみ説明する。図24は、図7に示すボタン702を押下した場合、動作2402として、内容2403で指定したURLにアクセスするよう設定されている。
図24のように設定されたボタン702を押下すると、クライアントPC200のブラウザは、「http://service_a/service」にリダイレクトする。リダイレクトのURLパラメータとしてパラメータ「TENANT_ID」(初期値は空)、パラメータ「sessionid」、パラメータ「serverurl」、パラメータ「recordid」が含まれる。パラメータ「sessionid」は、認証したユーザのセッションIDを指す。パラメータ「serverurl」は、サービス提供サービスB550にアクセスするためのURLを指す。パラメータ「recordid」は、商談レコードのレコードIDを指す。
[サービス提供サービスAにおける処理]
図25は本実施形態に係る、サービス提供サービスA500が実行するフローである。なお、図16と同様のフローにおいては、同じ符号を付与しており、以下、差異部分のみ説明する。
S1603において、企業IDを取得できた場合(S1603にてYES)、S2501で設定取得モジュール521は、サービス提供サービスB550からボタン設定を取得する。ここでのボタン設定とは、図24に示した設定である。S2502で設定判断モジュール522は、取得したボタン設定のURLがサービス提供サービスA500のURLかどうかを判断する。サービス提供サービスA500のURLと判断された場合は(S2502にてYES)S2503に遷移し、サービス提供サービスA500のURLでないと判断された場合は(S2502にてNO)S2504へ遷移する。
S2503で設定更新モジュール523は、ボタン設定のURLのパラメータ「TENANT_ID」にS1602で取得した企業IDを付加する。つまり、取得した企業IDの具体的な値をボタン設定に付与する。そして設定更新モジュール523は、サービス提供サービスB550に対してボタン設定更新をリクエストする。つまり、具体的な企業IDが設定された内容(図24の内容2403に対応)をボタン702に対応付けように、サービス提供サービスB550に要求することとなる。S2504で、設定更新モジュール523は、取得できたボタン設定が他にあるかを判断する。他にボタン設定があると判断された場合は(S2504にてNO)S2502、S2503を繰り返す。他にボタン設定がないと判断された場合は(S2504にてYES)、S1605に遷移する。
本実施形態によれば、第一実施形態の効果に加え、ボタン設定として直接テナント情報を設定させるようにする。これにより、サービス提供サービスB550上に、テナント情報を管理するためのモジュールやテナント情報を取得するためのモジュールを別途用意する必要が無くなる。また、予め管理するためのモジュールを所持していたとしても、新たに追加する必要がなくなる。
<その他の実施形態>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。

Claims (18)

  1. 第一のサービス提供装置、第二のサービス提供装置、中継装置、および1以上の認証装置が連携して、クライアント端末のブラウザを介してユーザが利用するシングルサインオンによるサービスの提供を行うシステムであって、
    前記第二のサービス提供装置は、
    ユーザが属するグループを特定する所属情報を管理する管理手段と、
    当該第二のサービス提供装置によるサービスを提供している際に、ユーザから前記第一のサービス提供装置によるサービスの提供の指示を受け付けた場合、前記第一のサービス提供装置にアクセスするための情報と、当該ユーザが属するグループの所属情報が前記管理手段にて管理されている場合には当該所属情報とを、前記クライアント端末へ送信する送信手段と
    を有し、
    前記第一のサービス提供装置は、
    前記アクセスするための情報に従って行われるクライアント端末からのアクセスの認証が未完了である場合、前記中継装置に前記認証装置による認証処理を依頼する依頼手段と、
    前記認証装置による認証処理の結果に従って、サービスを提供する提供手段と、
    認証が完了しているクライアント端末からのアクセスにおいて、当該クライアント端末が前記第二のサービス提供装置から、当該第一のサービス提供装置にアクセスするための情報と共に所属情報を取得できたか否かを判定する第一の判定手段と、
    前記第一の判定手段により、前記第二のサービス提供装置から所属情報を取得できなかったと判定した場合、前記第二のサービス提供装置の管理手段に、前記中継装置がユーザから受け付けることによって取得される所属情報を保存させる指示手段と
    を有し、
    前記中継装置は、
    前記第一のサービス提供装置から依頼を受けた際に、前記クライアント端末が前記第二のサービス提供装置から、前記第一のサービス提供装置にアクセスするための情報と共に所属情報を取得できたか否かを判定する第二の判定手段と、
    前記第二の判定手段により、前記第二のサービス提供装置から所属情報を取得できなかったと判定した場合、ユーザから所属情報を受け付ける受付手段と、
    前記クライアント端末が前記第二のサービス提供装置から取得した所属情報、もしくは前記受付手段にて受け付けた所属情報を用いて、当該所属情報に対応付けられた前記1以上の認証装置のうちのいずれかに、認証処理を依頼する認証依頼手段と
    を有することを特徴とするシステム。
  2. 前記第二のサービス提供装置の管理手段は、前記第一のサービス提供装置の指示手段による指示に従って、前記中継装置が取得した所属情報を保存することを特徴とする請求項1に記載のシステム。
  3. 前記第二のサービス提供装置の送信手段は、前記管理手段にて所属情報を管理していないクライアント端末から前記第一のサービス提供装置のサービスの提供の指示を受け付けた場合、前記第一のサービス提供装置にアクセスするための情報のみを送信することを特徴とする請求項1または2に記載のシステム。
  4. 前記第一のサービス提供装置にアクセスするための情報とは、当該第一のサービス提供装置のURLであることを特徴とする請求項1乃至3のいずれか一項に記載のシステム。
  5. 前記所属情報は、前記URLのパラメータとして設定されることを特徴とする請求項4に記載のシステム。
  6. 前記第二のサービス提供装置の送信手段は、前記第一のサービス提供装置の指示手段より保存を行った所属情報に対応するユーザから再度、前記第一のサービス提供装置のサービスの提供の指示を受け付けた場合、当該保存した所属情報を送信することを特徴とする請求項1乃至5のいずれか一項に記載のシステム。
  7. 前記第二のサービス提供装置は、前記第一のサービス提供装置によるサービスの提供の指示を受け付けるための画面、および当該指示を受け付けた際に前記クライアント端末にて実行されるプログラムを提供する提供手段を更に有することを特徴とする請求項1乃至6のいずれか一項に記載のシステム。
  8. 前記第二のサービス提供装置の送信手段は、前記プログラムが実行されることにより発行された指示に起因して、処理を行うことを特徴とする請求項7に記載のシステム。
  9. 前記第二のサービス提供装置の送信手段は、前記管理手段にて所属情報が管理されていない場合に、その旨を示す情報を更に送信し、
    前記第一のサービス提供装置の第一の判定手段は、当該クライアント端末が前記第二のサービス提供装置から、前記所属情報が管理されていない旨の情報を受信したか否かを判定し、
    前記第一のサービス提供装置の指示手段は、前記第一の判定手段により、前記所属情報を管理していない旨の情報を受信したと判定した場合、前記第二のサービス提供装置の管理手段に、前記中継装置がユーザから受け付けることで取得した所属情報を保存させる
    ことを特徴とする請求項1乃至4のいずれか一項に記載のシステム。
  10. 第一のサービス提供装置、第二のサービス提供装置、中継装置、および1以上の認証装置が連携して、クライアント端末のブラウザを介してユーザが利用するシングルサインオンによるサービスの提供を行うシステムであって、
    前記第二のサービス提供装置は、
    当該第二のサービス提供装置によるサービスを提供する際に、前記第一のサービス提供装置によるサービスの提供の指示を受け付けるための画面、および当該指示を受け付けた際に前記クライアント端末にて実行されるプログラムを提供する提供手段を有し、
    前記第一のサービス提供装置は、
    前記プログラムの実行によって行われるクライアント端末からのアクセスの認証が未完了である場合、前記中継装置に前記認証装置による認証処理を依頼する依頼手段と、
    前記認証装置による認証処理の結果に従って、サービスを提供する提供手段と、
    認証が完了しているクライアント端末からのアクセスにおいて、当該クライアント端末から前記ユーザが属するグループを特定する所属情報を取得できたか否かを判定する第一の判定手段と、
    前記第一の判定手段により、前記所属情報を取得できなかったと判定した場合、前記プログラムを前記第二のサービス提供装置から取得し、当該プログラムが実行された際に前記第一のサービス提供装置に対して前記中継装置がユーザから受けつけることで取得される所属情報を送信するようにプログラムを更新する更新手段と、
    前記第二のサービス提供装置の提供手段に対して、以降のプログラムの提供の際に、前記更新手段にて更新したプログラムを前記クライアント端末に提供させる指示手段と
    を有し、
    前記中継装置は、
    前記第一のサービス提供装置から依頼を受けた際に、前記第一のサービス提供装置が前記クライアント端末から、所属情報を取得できたか否かを判定する第二の判定手段と、
    前記第二の判定手段により、前記所属情報を取得できなかったと判定した場合、ユーザから所属情報を受け付ける受付手段と、
    前記クライアント端末から取得した所属情報、もしくは前記受付手段にて受け付けた所属情報を用いて、当該所属情報に対応付けられた前記1以上の認証装置のうちのいずれかに、認証処理を依頼する認証依頼手段と
    を有することを特徴とするシステム。
  11. 第一のサービス提供装置、第二のサービス提供装置、中継手段、および1以上の認証手段が連携して、クライアント端末のブラウザを介してユーザが利用するシングルサインオンによるサービスの提供を行うシステムの第一のサービス提供装置であって、
    前記第二のサービス提供装置が提供する、当該第一のサービス提供装置にアクセスするための情報に従って行われるクライアント端末からのアクセスの認証が未完了である場合、前記中継手段に認証手段による認証処理を依頼する依頼手段と、
    前記認証手段による認証処理の結果に従って、サービスを提供する提供手段と、
    認証が完了しているクライアント端末からのアクセスにおいて、当該クライアント端末が前記第二のサービス提供装置から、当該第一のサービス提供装置にアクセスするための情報と共に所属情報を取得できたか否かを判定する判定手段と、
    前記判定手段により、前記第二のサービス提供装置から所属情報を取得できなかったと判定した場合、前記第二のサービス提供装置に、前記中継手段がユーザから受け付けることで取得される所属情報を保存させる指示手段と
    を有することを特徴とする第一のサービス提供装置。
  12. 第一のサービス提供装置、第二のサービス提供装置、中継手段、および1以上の認証手段が連携して、クライアント端末のブラウザを介してユーザが利用するシングルサインオンによるサービスの提供を行うシステムの第二のサービス提供装置であって、
    ユーザが属するグループを特定する所属情報を管理する管理手段と、
    当該第二のサービス提供装置によるサービスを提供している際に、ユーザから前記第一のサービス提供装置によるサービスの提供の指示を受け付けた場合、前記第一のサービス提供装置にアクセスするための情報と、当該ユーザが属するグループの所属情報が前記管理手段にて管理されている場合には当該所属情報とを、前記クライアント端末へ送信する送信手段と
    を有し、
    前記管理手段は、前記第一のサービス提供装置による指示に従って、前記第一のサービス提供装置から取得する所属情報を保存することを特徴とする第二のサービス提供装置。
  13. 第一のサービス提供装置、第二のサービス提供装置、中継手段、および1以上の認証手段が連携して、クライアント端末のブラウザを介してユーザが利用するシングルサインオンによるサービスの提供を行うシステムの中継手段であって、
    前記第一のサービス提供装置から依頼を受けた際に、前記クライアント端末が前記第二のサービス提供装置から、前記第一のサービス提供装置にアクセスするための情報と共にユーザが属するグループを特定する所属情報を取得できたか否かを判定する判定手段と、
    前記判定手段により、前記第二のサービス提供装置から所属情報を取得できなかったと判定した場合、ユーザから所属情報を受け付ける受付手段と、
    前記クライアント端末が前記第二のサービス提供装置から取得した所属情報、もしくは前記受付手段にて受け付けた所属情報を用いて、当該所属情報に対応付けられた前記1以上の認証手段のうちのいずれかに、認証処理を依頼する認証依頼手段と
    を有することを特徴とする中継手段。
  14. 第一のサービス提供装置、第二のサービス提供装置、中継装置、および1以上の認証装置が連携して、クライアント端末のブラウザを介してユーザが利用するシングルサインオンによるサービスの提供を行うシステムの制御方法であって、
    前記第二のサービス提供装置において、
    管理手段が、ユーザが属するグループを特定する所属情報を管理する管理工程と、
    送信手段が、当該第二のサービス提供装置によるサービスを提供している際に、ユーザから前記第一のサービス提供装置によるサービスの提供の指示を受け付けた場合、前記第一のサービス提供装置にアクセスするための情報と、当該ユーザが属するグループの所属情報が前記管理工程にて管理されている場合には当該所属情報とを、前記クライアント端末へ送信する送信工程と
    を有し、
    前記第一のサービス提供装置において、
    依頼手段が、前記アクセスするための情報に従って行われるクライアント端末からのアクセスの認証が未完了である場合、前記中継装置に前記認証装置による認証処理を依頼する依頼工程と、
    提供手段が、前記認証装置による認証処理の結果に従って、サービスを提供する提供工程と、
    第一の判定手段が、認証が完了しているクライアント端末からのアクセスにおいて、当該クライアント端末が前記第二のサービス提供装置から、当該第一のサービス提供装置にアクセスするための情報と共に所属情報を取得できたか否かを判定する第一の判定工程と、
    指示手段が、前記第一の判定工程により、前記第二のサービス提供装置から所属情報を取得できなかったと判定した場合、前記第二のサービス提供装置の管理工程にて、前記中継装置がユーザから受け付けることによって取得される所属情報を保存させる指示工程と
    を有し、
    前記中継装置において、
    第二の判定手段が、前記第一のサービス提供装置から依頼を受けた際に、前記クライアント端末が前記第二のサービス提供装置から、前記第一のサービス提供装置にアクセスするための情報と共に所属情報を取得できたか否かを判定する第二の判定工程と、
    受付手段が、前記第二の判定工程により、前記第二のサービス提供装置から所属情報を取得できなかったと判定した場合、ユーザから所属情報を受け付ける受付工程と、
    認証依頼手段が、前記クライアント端末が前記第二のサービス提供装置から取得した所属情報、もしくは前記受付手段にて受け付けた所属情報を用いて、当該所属情報に対応付けられた前記1以上の認証装置のうちのいずれかに、認証処理を依頼する認証依頼工程と
    を有することを特徴とする制御方法。
  15. 第一のサービス提供装置、第二のサービス提供装置、中継装置、および1以上の認証装置が連携して、クライアント端末のブラウザを介してユーザが利用するシングルサインオンによるサービスの提供を行うシステムの制御方法であって、
    前記第二のサービス提供装置において、
    提供手段が、当該第二のサービス提供装置によるサービスを提供する際に、前記第一のサービス提供装置によるサービスの提供の指示を受け付けるための画面、および当該指示を受け付けた際に前記クライアント端末にて実行されるプログラムを提供する提供工程を有し、
    前記第一のサービス提供装置において、
    依頼手段が、前記プログラムの実行によって行われるクライアント端末からのアクセスの認証が未完了である場合、前記中継装置に前記認証装置による認証処理を依頼する依頼工程と、
    提供手段が、前記認証装置による認証処理の結果に従って、サービスを提供する提供工程と、
    第一の判定手段が、認証が完了しているクライアント端末からのアクセスにおいて、当該クライアント端末から前記ユーザが属するグループを特定する所属情報を取得できたか否かを判定する第一の判定工程と、
    更新手段が、前記第一の判定工程により、前記所属情報を取得できなかったと判定した場合、前記プログラムを前記第二のサービス提供装置から取得し、当該プログラムが実行された際に前記第一のサービス提供装置に対して前記中継装置がユーザから受けつけることで取得される所属情報を送信するようにプログラムを更新する更新工程と、
    指示手段が、前記第二のサービス提供装置の提供工程に対して、以降のプログラムの提供の際に、前記更新工程にて更新したプログラムを前記クライアント端末に提供させる指示工程と
    を有し、
    前記中継装置において、
    第二の判定手段が、前記第一のサービス提供装置から依頼を受けた際に、前記第一のサービス提供装置が前記クライアント端末から、所属情報を取得できたか否かを判定する第二の判定工程と、
    受付手段が、前記第二の判定工程により、前記所属情報を取得できなかったと判定した場合、ユーザから所属情報を受け付ける受付工程と、
    認証依頼手段が、前記クライアント端末から取得した所属情報、もしくは前記受付工程にて受け付けた所属情報を用いて、当該所属情報に対応付けられた前記1以上の認証装置のうちのいずれかに、認証処理を依頼する認証依頼工程と
    を有することを特徴とする制御方法。
  16. コンピュータを、
    認証が完了しているクライアント端末からのアクセスの際に、当該クライアント端末が他のコンピュータから、当該コンピュータにアクセスするための情報と共にユーザが属する所属情報を取得できたか否かを判定する判定手段、
    前記判定手段により、前記他のコンピュータから所属情報を取得できなかったと判定した場合、前記他のコンピュータに、ユーザの入力により取得される所属情報を保存させる指示手段
    として機能させるためのプログラム。
  17. コンピュータを、
    ユーザが属するグループを特定する所属情報を管理する管理手段、
    当該コンピュータによるサービスを提供している際に、ユーザから他のコンピュータによるサービスの提供の指示を受け付けた場合、前記他のコンピュータにアクセスするための情報と、当該ユーザが属するグループの所属情報が前記管理手段にて管理されている場合には当該所属情報とを、ユーザが利用しているクライアント端末へ送信する送信手段
    として機能させ、
    前記管理手段は、前記他のコンピュータによる指示に従って、前記他のコンピュータから取得する所属情報を保存することを特徴とするプログラム。
  18. コンピュータを、
    第一のサービス提供装置から認証手段による認証処理の依頼を受けた際に、前記第一のサービス提供装置からサービスの提供を受けるクライアント端末が第二のサービス提供装置から、前記第一のサービス提供装置にアクセスするための情報と共にユーザが属するグループを特定する所属情報を取得できたか否かを判定する判定手段、
    前記判定手段により、前記第二のサービス提供装置から所属情報を取得できなかったと判定した場合、ユーザから所属情報を受け付ける受付手段、
    前記第二のサービス提供装置から取得した所属情報、もしくは前記受付手段にて受け付けた所属情報を用いて、当該所属情報に対応付けられた認証手段に、前記クライアント端末の認証を依頼する認証依頼手段
    として機能させるためのプログラム。
JP2011157125A 2011-07-15 2011-07-15 シングルサインオンを提供するシステムおよびその制御方法、サービス提供装置、中継装置、並びにプログラム Expired - Fee Related JP5744656B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2011157125A JP5744656B2 (ja) 2011-07-15 2011-07-15 シングルサインオンを提供するシステムおよびその制御方法、サービス提供装置、中継装置、並びにプログラム
US13/523,343 US9021570B2 (en) 2011-07-15 2012-06-14 System, control method therefor, service providing apparatus, relay apparatus and computer-readable medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011157125A JP5744656B2 (ja) 2011-07-15 2011-07-15 シングルサインオンを提供するシステムおよびその制御方法、サービス提供装置、中継装置、並びにプログラム

Publications (3)

Publication Number Publication Date
JP2013025405A true JP2013025405A (ja) 2013-02-04
JP2013025405A5 JP2013025405A5 (ja) 2014-08-21
JP5744656B2 JP5744656B2 (ja) 2015-07-08

Family

ID=47519734

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011157125A Expired - Fee Related JP5744656B2 (ja) 2011-07-15 2011-07-15 シングルサインオンを提供するシステムおよびその制御方法、サービス提供装置、中継装置、並びにプログラム

Country Status (2)

Country Link
US (1) US9021570B2 (ja)
JP (1) JP5744656B2 (ja)

Cited By (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018142332A (ja) * 2016-05-11 2018-09-13 オラクル・インターナショナル・コーポレイション マルチテナントアイデンティティおよびデータセキュリティ管理クラウドサービス
US10200358B2 (en) 2016-05-11 2019-02-05 Oracle International Corporation Microservices based multi-tenant identity and data security management cloud service
US10218705B2 (en) 2016-05-11 2019-02-26 Oracle International Corporation Multi-tenant identity and data security management cloud service
US10255061B2 (en) 2016-08-05 2019-04-09 Oracle International Corporation Zero down time upgrade for a multi-tenant identity and data security management cloud service
US10261836B2 (en) 2017-03-21 2019-04-16 Oracle International Corporation Dynamic dispatching of workloads spanning heterogeneous services
US10263947B2 (en) 2016-08-05 2019-04-16 Oracle International Corporation LDAP to SCIM proxy service
US10341410B2 (en) 2016-05-11 2019-07-02 Oracle International Corporation Security tokens for a multi-tenant identity and data security management cloud service
US10341354B2 (en) 2016-09-16 2019-07-02 Oracle International Corporation Distributed high availability agent architecture
US10348858B2 (en) 2017-09-15 2019-07-09 Oracle International Corporation Dynamic message queues for a microservice based cloud service
US10425386B2 (en) 2016-05-11 2019-09-24 Oracle International Corporation Policy enforcement point for a multi-tenant identity and data security management cloud service
US10445395B2 (en) 2016-09-16 2019-10-15 Oracle International Corporation Cookie based state propagation for a multi-tenant identity cloud service
US10454940B2 (en) 2016-05-11 2019-10-22 Oracle International Corporation Identity cloud service authorization model
US10454915B2 (en) 2017-05-18 2019-10-22 Oracle International Corporation User authentication using kerberos with identity cloud service
US10484243B2 (en) 2016-09-16 2019-11-19 Oracle International Corporation Application management for a multi-tenant identity cloud service
US10484382B2 (en) 2016-08-31 2019-11-19 Oracle International Corporation Data management for a multi-tenant identity cloud service
US10505941B2 (en) 2016-08-05 2019-12-10 Oracle International Corporation Virtual directory system for LDAP to SCIM proxy service
US10511589B2 (en) 2016-09-14 2019-12-17 Oracle International Corporation Single logout functionality for a multi-tenant identity and data security management cloud service
US10530578B2 (en) 2016-08-05 2020-01-07 Oracle International Corporation Key store service
US10567364B2 (en) 2016-09-16 2020-02-18 Oracle International Corporation Preserving LDAP hierarchy in a SCIM directory using special marker groups
US10581820B2 (en) 2016-05-11 2020-03-03 Oracle International Corporation Key generation and rollover
US10585682B2 (en) 2016-08-05 2020-03-10 Oracle International Corporation Tenant self-service troubleshooting for a multi-tenant identity and data security management cloud service
US10594684B2 (en) 2016-09-14 2020-03-17 Oracle International Corporation Generating derived credentials for a multi-tenant identity cloud service
US10616224B2 (en) 2016-09-16 2020-04-07 Oracle International Corporation Tenant and service management for a multi-tenant identity and data security management cloud service
US10693861B2 (en) 2016-05-11 2020-06-23 Oracle International Corporation Task segregation in a multi-tenant identity and data security management cloud service
US10705823B2 (en) 2017-09-29 2020-07-07 Oracle International Corporation Application templates and upgrade framework for a multi-tenant identity cloud service
US10715564B2 (en) 2018-01-29 2020-07-14 Oracle International Corporation Dynamic client registration for an identity cloud service
US10735394B2 (en) 2016-08-05 2020-08-04 Oracle International Corporation Caching framework for a multi-tenant identity and data security management cloud service
US10764273B2 (en) 2018-06-28 2020-09-01 Oracle International Corporation Session synchronization across multiple devices in an identity cloud service
US10791087B2 (en) 2016-09-16 2020-09-29 Oracle International Corporation SCIM to LDAP mapping using subtype attributes
US10798165B2 (en) 2018-04-02 2020-10-06 Oracle International Corporation Tenant data comparison for a multi-tenant identity cloud service
US10831789B2 (en) 2017-09-27 2020-11-10 Oracle International Corporation Reference attribute query processing for a multi-tenant cloud service
US10834137B2 (en) 2017-09-28 2020-11-10 Oracle International Corporation Rest-based declarative policy management
US10846390B2 (en) 2016-09-14 2020-11-24 Oracle International Corporation Single sign-on functionality for a multi-tenant identity and data security management cloud service
US10878079B2 (en) 2016-05-11 2020-12-29 Oracle International Corporation Identity cloud service authorization model with dynamic roles and scopes
US10904074B2 (en) 2016-09-17 2021-01-26 Oracle International Corporation Composite event handler for a multi-tenant identity cloud service
US10931656B2 (en) 2018-03-27 2021-02-23 Oracle International Corporation Cross-region trust for a multi-tenant identity cloud service
US11012444B2 (en) 2018-06-25 2021-05-18 Oracle International Corporation Declarative third party identity provider integration for a multi-tenant identity cloud service
US11061929B2 (en) 2019-02-08 2021-07-13 Oracle International Corporation Replication of resource type and schema metadata for a multi-tenant identity cloud service
US11165634B2 (en) 2018-04-02 2021-11-02 Oracle International Corporation Data replication conflict detection and resolution for a multi-tenant identity cloud service
US11258775B2 (en) 2018-04-04 2022-02-22 Oracle International Corporation Local write for a multi-tenant identity cloud service
US11271969B2 (en) 2017-09-28 2022-03-08 Oracle International Corporation Rest-based declarative policy management
US11321343B2 (en) 2019-02-19 2022-05-03 Oracle International Corporation Tenant replication bootstrap for a multi-tenant identity cloud service
US11321187B2 (en) 2018-10-19 2022-05-03 Oracle International Corporation Assured lazy rollback for a multi-tenant identity cloud service
US11356454B2 (en) 2016-08-05 2022-06-07 Oracle International Corporation Service discovery for a multi-tenant identity and data security management cloud service
US11423111B2 (en) 2019-02-25 2022-08-23 Oracle International Corporation Client API for rest based endpoints for a multi-tenant identify cloud service
US11611548B2 (en) 2019-11-22 2023-03-21 Oracle International Corporation Bulk multifactor authentication enrollment
US11651357B2 (en) 2019-02-01 2023-05-16 Oracle International Corporation Multifactor authentication without a user footprint
US11669321B2 (en) 2019-02-20 2023-06-06 Oracle International Corporation Automated database upgrade for a multi-tenant identity cloud service
US11687378B2 (en) 2019-09-13 2023-06-27 Oracle International Corporation Multi-tenant identity cloud service with on-premise authentication integration and bridge high availability
US11693835B2 (en) 2018-10-17 2023-07-04 Oracle International Corporation Dynamic database schema allocation on tenant onboarding for a multi-tenant identity cloud service
US11792226B2 (en) 2019-02-25 2023-10-17 Oracle International Corporation Automatic api document generation from scim metadata
US11870770B2 (en) 2019-09-13 2024-01-09 Oracle International Corporation Multi-tenant identity cloud service with on-premise authentication integration

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8925050B2 (en) * 2012-10-29 2014-12-30 Oracle International Corporation Communication between authentication plug-ins of a single-point authentication manager and client systems
JP6354132B2 (ja) * 2013-10-09 2018-07-11 富士ゼロックス株式会社 中継装置、中継システム及びプログラム
JP7414617B2 (ja) * 2020-03-31 2024-01-16 キヤノン株式会社 システム、サーバー装置、および方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003346061A (ja) * 2002-05-27 2003-12-05 Nippon Telegr & Teleph Corp <Ntt> 特典ポイントサービスシステム、特典ポイント管理装置、特典ポイントサービスの提供方法および特典ポイント管理方法
JP2007272492A (ja) * 2006-03-31 2007-10-18 Mitsubishi Electric Corp 認証認可サーバ、認証認可システム、認証認可方法及び認証認可プログラム
JP2010086435A (ja) * 2008-10-02 2010-04-15 Hitachi Ltd 情報処理方法およびコンピュータ
WO2010050406A1 (ja) * 2008-10-29 2010-05-06 高光産業株式会社 サービス提供システム
JP2010526366A (ja) * 2007-05-03 2010-07-29 スンジュ キム 統合認証方法及び統合認証サーバ
JP2011060233A (ja) * 2009-09-14 2011-03-24 Ntt Communications Kk 認証システム、認証方法、認証装置、プログラム
WO2011080874A1 (ja) * 2009-12-28 2011-07-07 日本電気株式会社 ユーザ情報活用システム、装置、方法およびプログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10187560A (ja) 1996-12-20 1998-07-21 Mitsubishi Electric Corp 文書配送システム及び配送情報管理プログラムを記録した媒体
US7784092B2 (en) * 2005-03-25 2010-08-24 AT&T Intellectual I, L.P. System and method of locating identity providers in a data network
KR100953092B1 (ko) * 2007-11-06 2010-04-19 한국전자통신연구원 Sso서비스 방법 및 시스템
JP5426925B2 (ja) 2009-05-13 2014-02-26 キヤノン株式会社 Web環境で動作するシステム及びその制御方法
JP5582721B2 (ja) 2009-05-13 2014-09-03 キヤノン株式会社 Web環境で動作するシステム及びその制御方法
US20110072512A1 (en) * 2009-09-24 2011-03-24 Electronics And Telecommunications Research Institute Apparatus and method for providing communication service using common authentication
JP5803544B2 (ja) * 2010-11-04 2015-11-04 ブラザー工業株式会社 通信システム、中継装置、通信装置、中継方法、および通信方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003346061A (ja) * 2002-05-27 2003-12-05 Nippon Telegr & Teleph Corp <Ntt> 特典ポイントサービスシステム、特典ポイント管理装置、特典ポイントサービスの提供方法および特典ポイント管理方法
JP2007272492A (ja) * 2006-03-31 2007-10-18 Mitsubishi Electric Corp 認証認可サーバ、認証認可システム、認証認可方法及び認証認可プログラム
JP2010526366A (ja) * 2007-05-03 2010-07-29 スンジュ キム 統合認証方法及び統合認証サーバ
JP2010086435A (ja) * 2008-10-02 2010-04-15 Hitachi Ltd 情報処理方法およびコンピュータ
WO2010050406A1 (ja) * 2008-10-29 2010-05-06 高光産業株式会社 サービス提供システム
JP2011060233A (ja) * 2009-09-14 2011-03-24 Ntt Communications Kk 認証システム、認証方法、認証装置、プログラム
WO2011080874A1 (ja) * 2009-12-28 2011-07-07 日本電気株式会社 ユーザ情報活用システム、装置、方法およびプログラム

Cited By (65)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10454940B2 (en) 2016-05-11 2019-10-22 Oracle International Corporation Identity cloud service authorization model
US10200358B2 (en) 2016-05-11 2019-02-05 Oracle International Corporation Microservices based multi-tenant identity and data security management cloud service
US10218705B2 (en) 2016-05-11 2019-02-26 Oracle International Corporation Multi-tenant identity and data security management cloud service
US10581820B2 (en) 2016-05-11 2020-03-03 Oracle International Corporation Key generation and rollover
US11088993B2 (en) 2016-05-11 2021-08-10 Oracle International Corporation Policy enforcement point for a multi-tenant identity and data security management cloud service
US10693861B2 (en) 2016-05-11 2020-06-23 Oracle International Corporation Task segregation in a multi-tenant identity and data security management cloud service
US10341410B2 (en) 2016-05-11 2019-07-02 Oracle International Corporation Security tokens for a multi-tenant identity and data security management cloud service
JP2018142332A (ja) * 2016-05-11 2018-09-13 オラクル・インターナショナル・コーポレイション マルチテナントアイデンティティおよびデータセキュリティ管理クラウドサービス
US10878079B2 (en) 2016-05-11 2020-12-29 Oracle International Corporation Identity cloud service authorization model with dynamic roles and scopes
US10425386B2 (en) 2016-05-11 2019-09-24 Oracle International Corporation Policy enforcement point for a multi-tenant identity and data security management cloud service
US10848543B2 (en) 2016-05-11 2020-11-24 Oracle International Corporation Security tokens for a multi-tenant identity and data security management cloud service
US10263947B2 (en) 2016-08-05 2019-04-16 Oracle International Corporation LDAP to SCIM proxy service
US11601411B2 (en) 2016-08-05 2023-03-07 Oracle International Corporation Caching framework for a multi-tenant identity and data security management cloud service
US11356454B2 (en) 2016-08-05 2022-06-07 Oracle International Corporation Service discovery for a multi-tenant identity and data security management cloud service
US10585682B2 (en) 2016-08-05 2020-03-10 Oracle International Corporation Tenant self-service troubleshooting for a multi-tenant identity and data security management cloud service
US10505941B2 (en) 2016-08-05 2019-12-10 Oracle International Corporation Virtual directory system for LDAP to SCIM proxy service
US10735394B2 (en) 2016-08-05 2020-08-04 Oracle International Corporation Caching framework for a multi-tenant identity and data security management cloud service
US10530578B2 (en) 2016-08-05 2020-01-07 Oracle International Corporation Key store service
US10721237B2 (en) 2016-08-05 2020-07-21 Oracle International Corporation Hierarchical processing for a virtual directory system for LDAP to SCIM proxy service
US10579367B2 (en) 2016-08-05 2020-03-03 Oracle International Corporation Zero down time upgrade for a multi-tenant identity and data security management cloud service
US10255061B2 (en) 2016-08-05 2019-04-09 Oracle International Corporation Zero down time upgrade for a multi-tenant identity and data security management cloud service
US11258797B2 (en) 2016-08-31 2022-02-22 Oracle International Corporation Data management for a multi-tenant identity cloud service
US10484382B2 (en) 2016-08-31 2019-11-19 Oracle International Corporation Data management for a multi-tenant identity cloud service
US10594684B2 (en) 2016-09-14 2020-03-17 Oracle International Corporation Generating derived credentials for a multi-tenant identity cloud service
US10511589B2 (en) 2016-09-14 2019-12-17 Oracle International Corporation Single logout functionality for a multi-tenant identity and data security management cloud service
US10846390B2 (en) 2016-09-14 2020-11-24 Oracle International Corporation Single sign-on functionality for a multi-tenant identity and data security management cloud service
US11258786B2 (en) 2016-09-14 2022-02-22 Oracle International Corporation Generating derived credentials for a multi-tenant identity cloud service
US10445395B2 (en) 2016-09-16 2019-10-15 Oracle International Corporation Cookie based state propagation for a multi-tenant identity cloud service
US10616224B2 (en) 2016-09-16 2020-04-07 Oracle International Corporation Tenant and service management for a multi-tenant identity and data security management cloud service
US10791087B2 (en) 2016-09-16 2020-09-29 Oracle International Corporation SCIM to LDAP mapping using subtype attributes
US10567364B2 (en) 2016-09-16 2020-02-18 Oracle International Corporation Preserving LDAP hierarchy in a SCIM directory using special marker groups
US10484243B2 (en) 2016-09-16 2019-11-19 Oracle International Corporation Application management for a multi-tenant identity cloud service
US11023555B2 (en) 2016-09-16 2021-06-01 Oracle International Corporation Cookie based state propagation for a multi-tenant identity cloud service
US10341354B2 (en) 2016-09-16 2019-07-02 Oracle International Corporation Distributed high availability agent architecture
US10904074B2 (en) 2016-09-17 2021-01-26 Oracle International Corporation Composite event handler for a multi-tenant identity cloud service
US10261836B2 (en) 2017-03-21 2019-04-16 Oracle International Corporation Dynamic dispatching of workloads spanning heterogeneous services
US10454915B2 (en) 2017-05-18 2019-10-22 Oracle International Corporation User authentication using kerberos with identity cloud service
US10348858B2 (en) 2017-09-15 2019-07-09 Oracle International Corporation Dynamic message queues for a microservice based cloud service
US11308132B2 (en) 2017-09-27 2022-04-19 Oracle International Corporation Reference attributes for related stored objects in a multi-tenant cloud service
US10831789B2 (en) 2017-09-27 2020-11-10 Oracle International Corporation Reference attribute query processing for a multi-tenant cloud service
US10834137B2 (en) 2017-09-28 2020-11-10 Oracle International Corporation Rest-based declarative policy management
US11271969B2 (en) 2017-09-28 2022-03-08 Oracle International Corporation Rest-based declarative policy management
US10705823B2 (en) 2017-09-29 2020-07-07 Oracle International Corporation Application templates and upgrade framework for a multi-tenant identity cloud service
US11463488B2 (en) 2018-01-29 2022-10-04 Oracle International Corporation Dynamic client registration for an identity cloud service
US10715564B2 (en) 2018-01-29 2020-07-14 Oracle International Corporation Dynamic client registration for an identity cloud service
US10931656B2 (en) 2018-03-27 2021-02-23 Oracle International Corporation Cross-region trust for a multi-tenant identity cloud service
US11528262B2 (en) 2018-03-27 2022-12-13 Oracle International Corporation Cross-region trust for a multi-tenant identity cloud service
US10798165B2 (en) 2018-04-02 2020-10-06 Oracle International Corporation Tenant data comparison for a multi-tenant identity cloud service
US11165634B2 (en) 2018-04-02 2021-11-02 Oracle International Corporation Data replication conflict detection and resolution for a multi-tenant identity cloud service
US11652685B2 (en) 2018-04-02 2023-05-16 Oracle International Corporation Data replication conflict detection and resolution for a multi-tenant identity cloud service
US11258775B2 (en) 2018-04-04 2022-02-22 Oracle International Corporation Local write for a multi-tenant identity cloud service
US11012444B2 (en) 2018-06-25 2021-05-18 Oracle International Corporation Declarative third party identity provider integration for a multi-tenant identity cloud service
US10764273B2 (en) 2018-06-28 2020-09-01 Oracle International Corporation Session synchronization across multiple devices in an identity cloud service
US11411944B2 (en) 2018-06-28 2022-08-09 Oracle International Corporation Session synchronization across multiple devices in an identity cloud service
US11693835B2 (en) 2018-10-17 2023-07-04 Oracle International Corporation Dynamic database schema allocation on tenant onboarding for a multi-tenant identity cloud service
US11321187B2 (en) 2018-10-19 2022-05-03 Oracle International Corporation Assured lazy rollback for a multi-tenant identity cloud service
US11651357B2 (en) 2019-02-01 2023-05-16 Oracle International Corporation Multifactor authentication without a user footprint
US11061929B2 (en) 2019-02-08 2021-07-13 Oracle International Corporation Replication of resource type and schema metadata for a multi-tenant identity cloud service
US11321343B2 (en) 2019-02-19 2022-05-03 Oracle International Corporation Tenant replication bootstrap for a multi-tenant identity cloud service
US11669321B2 (en) 2019-02-20 2023-06-06 Oracle International Corporation Automated database upgrade for a multi-tenant identity cloud service
US11423111B2 (en) 2019-02-25 2022-08-23 Oracle International Corporation Client API for rest based endpoints for a multi-tenant identify cloud service
US11792226B2 (en) 2019-02-25 2023-10-17 Oracle International Corporation Automatic api document generation from scim metadata
US11687378B2 (en) 2019-09-13 2023-06-27 Oracle International Corporation Multi-tenant identity cloud service with on-premise authentication integration and bridge high availability
US11870770B2 (en) 2019-09-13 2024-01-09 Oracle International Corporation Multi-tenant identity cloud service with on-premise authentication integration
US11611548B2 (en) 2019-11-22 2023-03-21 Oracle International Corporation Bulk multifactor authentication enrollment

Also Published As

Publication number Publication date
US20130019300A1 (en) 2013-01-17
US9021570B2 (en) 2015-04-28
JP5744656B2 (ja) 2015-07-08

Similar Documents

Publication Publication Date Title
JP5744656B2 (ja) シングルサインオンを提供するシステムおよびその制御方法、サービス提供装置、中継装置、並びにプログラム
JP5289480B2 (ja) 情報処理システム、情報処理装置の制御方法、およびそのプログラム。
CN102638454B (zh) 一种面向http身份鉴别协议的插件式单点登录集成方法
US9407627B2 (en) Establishing and maintaining an improved single Sign-on (SSO) facility
US7631346B2 (en) Method and system for a runtime user account creation operation within a single-sign-on process in a federated computing environment
JP5988699B2 (ja) 連携システム、その連携方法、情報処理システム、およびそのプログラム。
US20030226036A1 (en) Method and apparatus for single sign-on authentication
WO2013099065A1 (ja) 認証連携システムおよびidプロバイダ装置
EP1617620A1 (en) Method and apparatus for user authentication and authorization
CN112468481A (zh) 一种基于CAS的单页和多页web应用身份集成认证方法
US20170026361A1 (en) Federated Single Sign-On to Hadoop Cluster
EP2207303B1 (en) Method, system and entity for bill authentication in network serving
US10735399B2 (en) System, service providing apparatus, control method for system, and storage medium
US10623396B2 (en) System and method for controlling system
JP2018060259A (ja) 情報処理装置、情報処理システム、ユーザ認証方法、およびユーザ認証プログラム
CN113973017A (zh) 一种商业智能平台数据处理系统及方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140708

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140708

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150120

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150227

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150306

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150430

R151 Written notification of patent or utility model registration

Ref document number: 5744656

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees