以下に、本発明の実施の形態にかかるサービス統合認証認可システムおよびサービス統合認証認可方法を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態1.
図1は、本発明の実施の形態1にかかる情報処理システムの構成例を示す図である。図1に示すように、実施の形態1にかかる情報処理システム100は、サービス統合認証認可システム1と、サービス提供装置21,22と、複数の端末装置31,32,・・・,3nとを備える。複数の端末装置31,32,・・・,3nは、複数のユーザU1,U2,・・・,Unによって用いられる。nは、例えば、3以上の整数である。複数のユーザU1,U2,・・・,Unは、例えば、後述するクラウドサービスを契約した企業の従業員などである。
以下、サービス提供装置21,22の各々を区別せずに示す場合、サービス提供装置2と記載する。また、複数の端末装置31,32,・・・,3nの各々を区別せずに示す場合、端末装置3と記載し、複数のユーザU1,U2,・・・,Unの各々を区別せずに示す場合、ユーザUと記載する。なお、図1に示す例では、サービス提供装置2は2台であるが、サービス提供装置2は3台以上であってもよい。
サービス統合認証認可システム1と各端末装置3とは、互いにネットワーク4を介して通信可能に接続される。ネットワーク4は、インターネットであるが、例えば、インターネット以外のWAN(Wide Area Network)であってもよい。
サービス統合認証認可システム1およびサービス提供装置21,22の各々は、インターネット上に配置されたクラウドサービスプラットフォーム10に配置される1以上の仮想装置から構成される。クラウドサービスプラットフォーム10は、物理的なサーバおよびネットワーク機器などのIT(Information Technology)リソースを、論理的に分割したテナントと呼ばれる単位で提供する。
テナントには、論理的に分割されたサーバ上で動作する仮想的な計算機であるVM(Virtual Machine)および仮想的なネットワークなどが含まれる。仮想的なネットワークは、例えば、VLAN(Virtual Local Area Network)などである。サービス統合認証認可システム1およびサービス提供装置21,22の各々は、互いに異なるテナントに割り当てられる。以下、説明の便宜上、サービス提供装置21が提供するサービスをサービスAとし、サービス提供装置22が提供するサービスをサービスBとする。サービスA,Bは、クラウドサービスであり、例えば、PaaS(Platform as a Service)またはIaaS(Infrastructure as a Service)によって提供されるサービスである。
サービス統合認証認可システム1は、統合認可装置11と統合認証装置12とを備え、端末装置3のユーザUが一度の認証によって、複数のサービス提供装置2が提供するサービスの利用をユーザUに認可する。統合認証装置12は、ユーザUの統合認証を行う。統合認可装置11は、統合認証の結果に基づき、各々サービスを提供する複数のサービス提供装置2とユーザUの端末装置3とを連携する統合認可装置11とを備える。統合認可装置11と統合認証装置12とは、互いに異なる仮想装置で構成されるが、同一の仮想装置で構成されてもよい。
なお、統合認証とは、複数のサービス提供装置2が提供するサービスの利用を一括して認可するための認証である。また、サービス提供装置2とユーザUの端末装置3との連携とは、端末装置3のユーザUにサービス提供装置2が提供するサービスを利用可能にサービス提供装置2と端末装置3とを接続することを意味する。
統合認証装置12は、端末装置3から送信されるユーザUの統合認証情報に基づいて、ユーザUの統合認証を行う。統合認証情報は、サービス統合認証認可システム1において、各サービス提供装置2が提供するサービスを一括して認証および認可するための認証情報であり、サービス統合認証認可システム1におけるユーザUのアカウント情報である。統合認可装置11は、統合認証装置12による統合認証の結果に基づき、各サービス提供装置2が提供するサービスの利用をユーザUに認可する。
統合認可装置11は、例えば、統合認証装置12による統合認証が完了した場合、統合認証装置12からユーザUのサービスA,Bのアカウント情報であるサービスアカウント情報を暗号化した暗号化サービスアカウント情報を取得する。統合認可装置11は、取得した暗号化サービスアカウント情報をサービスアカウント情報に復号し、復号したサービスアカウント情報をサービス提供装置21,22へ送信する。これにより、サービス提供装置21,22において、サービスA,Bの認証が行われ、ユーザUは、サービスA,Bのサービスアカウント情報を端末装置3に入力することなく、一つの統合認証情報でサービスA,Bを利用することができる。暗号化サービスアカウント情報は、暗号化情報の一例である。
以下、サービス統合認証認可システム1およびサービス提供装置21,22についてさらに詳細に説明する。図2は、実施の形態1にかかるサービス統合認証認可システムおよびサービス提供装置の構成例を示す図である。なお、図2に示す例では、端末装置3を一つのみ示しているが、図1に示すように、端末装置3は複数設けられる。
図2に示すように、サービス統合認証認可システム1の統合認可装置11は、端末装置3と各サービス提供装置2とを連携する統合認可部111と、統合認証装置12から暗号化されたサービスA,Bのサービスアカウント情報である暗号化サービスアカウント情報を取得する取得部112とを備える。また、統合認可装置11は、取得部112で取得された暗号化サービスアカウント情報をサービスアカウント情報に復号する復号部113を備える。
統合認可部111は、端末装置3からのログイン情報を受け付けると、統合認証装置12に統合認証を要求する。統合認証装置12において統合認可部111から取得したログイン情報が統合認証情報として記憶されている場合、統合認証装置12において統合認証が成功する。
統合認可部111は、統合認証装置12において統合認証が成功した場合、復号部113からユーザUのサービスA,Bのサービスアカウント情報を取得し、取得したサービスアカウント情報をサービス提供装置21,22へ送信する。これにより、ユーザUは、サービスA,Bの認証情報であるサービスアカウント情報を入力することなく、端末装置3を用いて、サービスA,Bを利用することができる。
サービス統合認証認可システム1の統合認証装置12は、統合認可装置11からの要求に基づいて、端末装置3のユーザUの統合認証を行う統合認証部121と、ユーザUの統合サービスアカウント情報とサービスA,Bのサービスアカウント情報とを記憶する認証情報記憶部122とを備える。また、統合認証装置12は、サービス提供装置21,22からユーザUのサービスA,Bのサービスアカウント情報を取得し、取得したサービスアカウント情報を暗号化して認証情報記憶部122に記憶する収集部123を備える。
統合認証部121は、統合認可装置11からの要求に基づいて、認証情報記憶部122に記憶されたサービスA,Bのサービスアカウント情報を取得し、取得したサービスA,Bのサービスアカウント情報を統合認可装置11へ送信する。
図3は、実施の形態1にかかる認証認可テーブルの一例を示す図である。図3に示すように、認証情報記憶部122に記憶される認証認可テーブル50は、「統合認証情報」、「サービスURL」、「暗号化サービスアカウント情報」、および「復号鍵」が互いに関連付けられた情報を含む。
「統合認証情報」は、統合認証部121による統合認証に用いられる情報であり、統合ユーザID(Identifier)と統合ユーザPW(Password)とを含む。統合ユーザIDは、ユーザU毎に割り当てられる識別情報であり、統合ユーザPWは、統合ユーザPW毎に設定されるパスワードである。統合ユーザID「UID001」は、ユーザU1の統合ユーザIDであり、統合ユーザID「UID002」は、ユーザU2の統合ユーザIDである。
「サービスURL」は、クラウドサービスプラットフォーム10内におけるサービス提供装置2のURL(Uniform Resource Locator)である。図3に示す例では、サービス提供装置21のURLは、「http://A.co.jp」であり、サービス提供装置22のURLは、「http://B.co.jp」である。かかる「サービスURL」は、サービス統合認証認可システム1がサービス提供装置2へアクセスする際にサービス統合認証認可システム1によって宛先URLとして用いられる。
「暗号化サービスアカウント情報」は、サービス提供装置2が提供するサービスを利用するためのユーザUのアカウント情報を暗号化した情報である。図3に示す例では、サービスAの暗号化サービスアカウント情報「Spojsprog4w04psr」とサービスBの暗号化サービスアカウント情報「aspoj39pdfjp39kff」とが統合ユーザID「UID001」に関連付けられている。「復号鍵」は、暗号化サービスアカウント情報を復号するための復号鍵の情報である。
図2に戻って、サービス提供装置21,22の説明を行う。サービス提供装置21は、ユーザUの認証およびサービスAの利用をユーザUに認可するサービス認証認可部211と、認証および認可されたユーザUにサービスAを提供するサービス提供部221と、サービスAのサービスアカウント情報をユーザU毎に記憶するサービス認証情報記憶部231とを備える。
同様に、サービス提供装置22は、ユーザUの認証およびサービスBの利用をユーザUに認可するサービス認証認可部212と、認証および認可されたユーザUにサービスBを提供するサービス提供部222と、サービスBのサービスアカウント情報をユーザU毎に記憶するサービス認証情報記憶部232とを備える。
図4および図5は、実施の形態1にかかるサービスアカウントテーブルの一例を示す図である。図4に示すサービスアカウントテーブル51は、サービス認証情報記憶部231に記憶される情報であり、ユーザU毎のサービスAのサービスアカウント情報を含む。図4に示すサービスアカウントテーブル51は、サービスAのユーザIDであるサービスユーザIDとサービスAのユーザPWであるサービスユーザPWとが関連付けられた情報を含む。図4に示す例では、サービスユーザID「AID001」は、ユーザU1のサービスユーザIDであり、サービスユーザID「AID002」は、ユーザU2のサービスユーザIDである。
また、図5に示すサービスアカウントテーブル52は、サービス認証情報記憶部232に記憶される情報であり、ユーザU毎のサービスBのサービスアカウント情報を含む。図5に示すサービスアカウントテーブル52は、サービスBのユーザIDであるサービスユーザIDとサービスBのユーザPWであるサービスユーザPWとが関連付けられた情報を含む。図5に示す例では、サービスユーザID「BID001」は、ユーザU1のサービスユーザIDであり、サービスユーザID「BID002」は、ユーザU2のサービスユーザIDである。
以下、サービス認証認可部211,212の各々を区別せずに示す場合、サービス認証認可部21と記載し、サービス提供部221,222の各々を区別せずに示す場合、サービス提供部22と記載する。また、サービス認証情報記憶部231,232の各々を区別せずに示す場合、サービス認証情報記憶部23と記載する。
次に、サービス統合認証認可システム1およびサービス提供装置21,22の動作についてさらに詳細に説明する。図6は、実施の形態1にかかるサービス統合認証認可システムの処理の一例を示すフローチャートであり、サービス統合認証認可システム1によって繰り返し実行される。
図6に示すように、サービス統合認証認可システム1における統合認可装置11の統合認可部111は、端末装置3からアクセスがあるか否かを判定する(ステップS11)。サービス統合認証認可システム1は、統合認可部111が端末装置3からアクセスがあると判定した場合(ステップS11:Yes)、統合認証処理を実行する(ステップS12)。かかるステップS12の処理は、図7に示すステップS21からS26の処理であり、後で詳述する。なお、以下において、サービス統合認証認可システム1にアクセスした端末装置3のユーザUをアクセスユーザと記載する場合がある。
サービス統合認証認可システム1は、ステップS12の処理が終了した場合、サービス認証処理を実行する(ステップS13)。かかるステップS13の処理は、図8に示すステップS31からS38の処理であり、後で詳述する。
サービス統合認証認可システム1は、ステップS13の処理が終了した場合、または、端末装置3からアクセスがないと判定した場合(ステップS11:No)、図6に示す処理を終了する。
図7は、実施の形態1にかかる統合認証処理の一例を示すフローチャートである。図7に示すように、統合認可装置11の統合認可部111は、アクセスユーザが認証済であるか否かを統合認証装置12の統合認証部121へ問い合わせる(ステップS21)。
統合認証部121は、統合認可部111からアクセスユーザが認証済であるか否かの問い合わせがあると、アクセスユーザが認証済であるか否かを判定する(ステップS22)。統合認証部121は、例えば、各ユーザUの認証状態を示す認証状態情報を有しており、かかる認証状態情報に基づいて、アクセスユーザが認証済であるか否かを判定することができる。
統合認証部121は、アクセスユーザが認証済ではないと判定した場合(ステップS22:No)、統合ログイン画面の情報を統合認可部111経由でアクセスユーザの端末装置3へ送信する(ステップS23)。これにより、アクセスユーザの端末装置3には、統合ログイン画面が表示される。統合ログイン画面は、統合ユーザIDおよび統合ユーザPWを含むログイン情報をアクセスユーザに入力させるための画面である。アクセスユーザは、端末装置3を操作して統合ログイン画面にユーザIDおよびユーザPWを含むログイン情報である統合ログイン情報を入力し、かかる統合ログイン情報を端末装置3からサービス統合認証認可システム1へ送信させる。
統合認証部121は、統合認可部111経由でアクセスユーザの端末装置3から統合ログイン情報を取得したか否かを判定する(ステップS24)。統合認証部121は、統合ログイン情報を取得していないと判定した場合(ステップS24:No)、ステップS24の処理を繰り返す。
統合認証部121は、統合ログイン情報を取得したと判定した場合(ステップS24:Yes)、ステップS24で取得したと判定した統合ログイン情報を認証情報記憶部122に記憶されている統合認証情報と比較する(ステップS25)。
統合認証部121は、ステップS25における比較の結果に基づいて、アクセスユーザの認証である統合認証が成功したか否かを判定する(ステップS26)。ステップS26において、統合認証部121は、統合ログイン情報と一致する統合認証情報が認証情報記憶部122に記憶されている場合、統合認証が成功したと判定し、統合ログイン情報と一致する統合認証情報が認証情報記憶部122に記憶されていない場合、統合認証が失敗したと判定する。
サービス統合認証認可システム1は、統合認証部121によって統合認証が成功していないと判定された場合(ステップS26:No)、処理をステップS23へ移行する。また、サービス統合認証認可システム1は、統合認証部121によって統合認証が成功したと判定された場合(ステップS26:Yes)、または、統合認証部121によってアクセスユーザが認証済であると判定された場合(ステップS22:Yes)、図7に示す処理を終了する。
図8は、実施の形態1にかかるサービス認証処理の一例を示すフローチャートである。図8に示すように、統合認証部121は、サービス選択画面の情報を統合認可部111経由でアクセスユーザの端末装置3へ送信する(ステップS31)。これにより、アクセスユーザの端末装置3には、サービス選択画面が表示される。
サービス選択画面には、例えば、サービスAを選択するための選択ボタンと、サービスBを選択するための選択ボタンが表示されている。アクセスユーザは、端末装置3を操作して選択ボタンを選択することで、選択されたサービスを示す選択情報が端末装置3からサービス統合認証認可システム1へ送信される。
統合認証部121は、アクセスユーザがサービスを選択したか否かを判定する(ステップS32)。ステップS32において、統合認証部121は、アクセスユーザの端末装置3から選択情報を取得した場合に、アクセスユーザがサービスを選択したと判定する。
統合認証部121は、アクセスユーザがサービスを選択していないと判定した場合(ステップS32:No)、ステップS32の処理を繰り返す。統合認証部121は、アクセスユーザがサービスを選択したと判定した場合(ステップS32:Yes)、認証情報記憶部122に選択されたサービスにおけるアクセスユーザの暗号化サービスアカウント情報があるか否かを判定する(ステップS33)。
例えば、認証認可テーブル50が図3に示す状態であり、且つアクセスユーザの統合ユーザIDが「UID002」であるとする。この場合、統合認証部121は、アクセスユーザがサービスAを選択した場合に、暗号化サービスアカウント情報があると判定し、アクセスユーザがサービスBを選択した場合に、暗号化サービスアカウント情報がないと判定する。
統合認証装置12は、統合認証部121によって暗号化サービスアカウント情報がないと判定された場合(ステップS33:No)、暗号化サービスアカウントを生成して記憶する暗号化サービスアカウント処理を実行する(ステップS34)。かかるステップS34の処理は、図9に示すステップS41からS48の処理であり、後で詳述する。
取得部112は、統合認証部121によって暗号化サービスアカウント情報があると判定された場合(ステップS33:Yes)、アクセスユーザの統合ユーザIDと選択されたサービスとに関連付けられた暗号化サービスアカウント情報と復号鍵とを認証情報記憶部122から取得する(ステップS35)。
復号部113は、取得部112によって取得された復号鍵を用いて、取得部112によって取得された暗号化サービスアカウント情報をサービスアカウント情報に復号する(ステップS36)。例えば、認証認可テーブル50が図3に示す状態であり、アクセスユーザの統合ユーザIDが「UID001」であり、かつ選択されたサービスがサービスAであるとする。この場合、復号部113によって復号されたサービスアカウント情報は、サービスユーザID「AID001」およびサービスユーザPWM「aesijpf9eupi43topjaef」を含む。
統合認可部111は、復号部113によって復号されたサービスアカウント情報をリクエストに格納し、かかるリクエストを選択されたサービスを提供するサービス提供装置2へ送信する(ステップS37)。例えば、認証認可テーブル50が図3に示す状態であり、アクセスユーザの統合ユーザIDが「UID001」であり、かつ選択されたサービスがサービスAであるとする。この場合、統合認可部111は、サービスユーザID「AID001」およびサービスユーザPW「aesijpf9eupi43topjaef」を含むリクエストを「http://A.co.jp」を宛先URLとしてサービス提供装置21へ送信する。
統合認可部111からリクエストを受信したサービス提供装置2のサービス認証認可部21は、受信したリクエストに含まれるサービスユーザIDおよびサービスユーザPWの組み合わせがサービス認証情報記憶部23に記憶されているか否かを判定する。サービス認証認可部21は、受信したリクエストに含まれるサービスユーザIDおよびサービスユーザPWの組み合わせがサービス認証情報記憶部23に記憶されている場合に、アクセスユーザの認証が成功したと判定する。
サービス認証認可部21は、アクセスユーザの認証が成功したと判定すると、サービスAを利用するための利用画面の情報を統合認可部111経由でアクセスユーザの端末装置3へ送信する。また、サービス認証認可部21は、アクセスユーザの認証が失敗したと判定すると、認証が失敗したことを示す情報を統合認可部111へ送信する。
統合認可部111は、ステップS37で送信したリクエストに応答してサービス提供装置2から送信される情報に基づいて、サービス認証が成功したか否かを判定する(ステップS38)。例えば、統合認可部111は、サービスAを利用するための利用画面の情報をサービス提供装置2から受信した場合にサービス認証が成功したと判定する。また、統合認可部111は、サービス提供装置2からサービス認証が失敗したことを示す情報を受信すると、サービス認証が失敗したと判定する。
統合認可部111は、サービス認証が失敗したと判定した場合(ステップS38:No)、処理をステップS31へ移行する。また、統合認可部111は、サービス認証が成功したと判定した場合(ステップS38:Yes)、または、ステップS34の処理が終了した場合、図8に示す処理を終了する。なお、統合認可部111は、サービス認証が失敗したと判定した場合(ステップS38:No)、処理をステップS34へ移行することもできる。
図9は、実施の形態1にかかる暗号化サービスアカウント処理の一例を示すフローチャートである。かかる暗号化サービスアカウント処理は、未登録の暗号化サービスアカウント情報を統合認証装置12に登録するための処理である。図9に示すように、統合認可部111は、ステップS32で選択されたと判定したサービスを提供するサービス提供装置2へリクエストを送信する(ステップS41)。
統合認可部111は、ステップS41で送信したリクエストに応答してサービス提供装置2から送信されるサービスログイン画面の情報をアクセスユーザの端末装置3へ送信する(ステップS42)。これにより、アクセスユーザの端末装置3には、サービスログイン画面が表示される。アクセスユーザは、端末装置3を操作してサービスログイン画面にユーザIDおよびユーザPWを含むサービスログイン情報を入力し、端末装置3からサービス統合認証認可システム1へ送信させる。
統合認可部111は、アクセスユーザの端末装置3から送信されたサービスログイン情報を選択されたサービス提供装置2へ送信する(ステップS43)。統合認可部111からサービスログイン情報を受信したサービス提供装置2のサービス認証認可部21は、受信したサービスログイン情報と一致するサービスアカウント情報がサービス認証情報記憶部23に記憶されているか否かを判定する。
サービス認証認可部21は、サービスログイン情報と一致するサービスアカウント情報がサービス認証情報記憶部23に記憶されている場合に、アクセスユーザの認証が成功したと判定し、サービスログイン情報と一致するサービスアカウント情報がサービス認証情報記憶部23に記憶されていない場合に、アクセスユーザの認証が失敗したと判定する。
サービス認証認可部21は、アクセスユーザの認証が成功したと判定すると、サービスAを利用するための利用画面の情報を統合認可部111経由でアクセスユーザの端末装置3へ送信する。また、サービス認証認可部21は、アクセスユーザの認証が失敗したと判定すると、認証が失敗したことを示す情報を統合認可部111へ送信する。
統合認可部111は、ステップS43で送信したサービスログイン情報に応答してサービス提供装置2から送信される情報に基づいて、選択されたサービスを提供するサービス提供装置2による認証であるサービス認証が成功したか否かを判定する(ステップS44)。例えば、統合認可部111は、サービスAを利用するための利用画面の情報をサービス提供装置2から受信した場合にサービス認証が成功したと判定する。また、統合認可部111は、サービス提供装置2から認証が失敗したことを示す情報を受信すると、サービス認証が失敗したと判定する。
統合認可部111は、サービス認証が失敗したと判定した場合(ステップS44:No)、処理をステップS42へ移行する。なお、サービス提供装置2から認証が失敗したことを示す情報は、例えば、ログイン情報の再入力を促すサービスログイン画面の情報であり、かかるサービスログイン画面の情報がステップS42において端末装置3へ送信される。
また、統合認可部111は、サービス認証が成功したと判定した場合(ステップS44:Yes)、サービス提供装置2からの利用画面の情報を端末装置3へ送信する(ステップS45)。これにより、アクセスユーザは、端末装置3において、選択したサービスの利用が可能になる。
統合認証装置12の収集部123は、サービス認証が成功したアクセスユーザのサービスアカウント情報をサービス提供装置2から取得する(ステップS46)。収集部123は、サービス提供装置2から取得したサービスアカウント情報を暗号化して暗号化サービスアカウント情報を生成する(ステップS47)。
具体的には、収集部123は、サービスユーザIDとサービスユーザPWを組み合わせた文字列に対し、暗号鍵を使用し暗号化する。このとき、収集部123は、復号時にサービスユーザIDとサービスユーザPWとを各々認識できるように、サービスユーザIDとサービスユーザPWを組み合わせた文字列を、サービスユーザIDまたはサービスユーザPWを識別子で囲んだ状態にする。例えば、サービスユーザIDが「AID001」であり、サービスユーザPWが「aesijpf9eupi43topjaef」である場合、サービスユーザIDまたはサービスユーザPWを組み合わせた文字列は、「AID001$aesijpf9eupi43topjaef$」である。
収集部123は、生成した暗号化サービスアカウント情報をアクセスユーザの統合ユーザIDに関連付けて認証情報記憶部122に記憶する(ステップS48)。ステップS48の処理が終了すると、図9に示す処理が終了する。
なお、収集部123は、サービス認証が成功したアクセスユーザのサービスアカウント情報をサービス提供装置2から統合認可装置11を介して収集することができる。また、統合認可部111は、ステップS43でサービス提供装置2へ送信したサービスログイン情報をアクセスユーザのサービスアカウント情報として取得し、取得したサービスアカウント情報を収集部123へ出力することもできる。
図10は、実施の形態1にかかるサービス統合認証認可システムのハードウェア構成の一例を示す図である。図10に示すように、サービス統合認証認可システム1は、プロセッサ101と、メモリ102と、インタフェース回路103とを備えるコンピュータを含む。
プロセッサ101、メモリ102およびインタフェース回路103は、バス104によって互いにデータの送受信が可能である。プロセッサ101は、メモリ102に記憶されたプログラムを読み出して実行することによって、統合認可装置11および統合認証装置12の機能を実行する。プロセッサ101は、処理回路の一例であり、CPU(Central Processing Unit)、DSP(Digital Signal Processer)、およびシステムLSI(Large Scale Integration)のうち一つ以上を含む。
メモリ102は、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、およびEPROM(Erasable Programmable Read Only Memory)のうち一つ以上を含む。また、メモリ102は、コンピュータが読み取り可能な上述のプログラムが記録された記録媒体を含む。かかる記録媒体は、不揮発性または揮発性の半導体メモリ、磁気ディスク、フレキシブルメモリ、光ディスク、コンパクトディスク、およびDVDのうち一つ以上を含む。なお、サービス統合認証認可システム1は、ASIC(Application Specific Integrated Circuit)およびFPGA(Field Programmable Gate Array)などの集積回路を含んでいてもよい。また、統合認可装置11および統合認証装置は各々図10に示すハードウェア構成を有していてもよい。
以上のように、実施の形態1にかかるサービス統合認証認可システム1は、ユーザUの認証を行う統合認証装置12と、統合認証装置12による認証の結果に基づき、ユーザUの端末装置3と各サービス提供装置2とを連携する統合認可装置11とを備える。統合認証装置12は、ユーザUの端末装置3から送信される統合認証情報に基づいてユーザUの認証を行う統合認証部121と、各サービス提供装置2が提供するサービスにおけるユーザUのアカウント情報であるサービスアカウント情報を暗号化した暗号化サービスアカウント情報を記憶する認証情報記憶部122とを備える。暗号化サービスアカウント情報は、暗号化情報の一例である。統合認可装置11は、統合認証装置12から暗号化サービスアカウント情報を取得する取得部112と、暗号化サービスアカウント情報をサービスアカウント情報に復号する復号部113と、復号されたサービスアカウント情報に基づき、統合認証装置12による認証が行われたユーザUのサービス認証と各サービス提供装置2に実行させる統合認可部111とを備える。これにより、既存サービスの認証認可機能の改修を行うことなく、ユーザUが一度の認証で複数のサービスを利用することができる。
また、統合認証装置12は、各サービス提供装置2からサービスアカウント情報を収集し、暗号化する収集部123を備える。これにより、ユーザUは、手動でサービスアカウント情報を設定する手間を省くことができる。
また、統合認可部111は、統合認証装置12によるユーザUの認証後、ユーザUによって選択されたサービスを提供するサービス提供装置2にユーザUの認証を実行させる。これにより、ユーザUが利用したサービスのみが認証されるため、認証処理の負荷を低減することができる。
また、複数のサービス提供装置2は、クラウドサービスにおけるマルチテナントによって構成される。これにより、クラウドサービスにおいて、既存サービスの認証認可機能の改修を行うことなく、ユーザUが一度の認証で複数のサービスを利用することができる。
実施の形態2.
実施の形態2では、統合認証情報と暗号化サービスアカウント情報とを分離して記憶する点で、実施の形態1と異なる。以下においては、実施の形態1にかかるサービス統合認証認可システム1と同様の構成については同一符号を付して説明を省略し、実施の形態1にかかるサービス統合認証認可システム1と異なる構成について主に説明するものとする。
図11は、本発明の実施の形態2にかかるサービス統合認証認可システムおよびサービス提供装置の構成例を示す図である。図11に示すように、実施の形態2にかかる情報処理システム100Aは、サービス統合認証認可システム1Aと、サービス提供装置21,22と、端末装置3を備える。なお、図11に示す例では、端末装置3を一つのみ示しているが、実施の形態1と同様に、端末装置3は複数設けられる。
サービス統合認証認可システム1Aは、統合認可装置11と、統合認証装置12Aとを備える。統合認証装置12Aは、図2に示す認証情報記憶部122に代えて、統合情報記憶部124および認証情報記憶部122Aを有する点で、図2に示す統合認証装置12と異なる。
統合情報記憶部124には、各ユーザUの統合認証情報が記憶される。統合認証部121は、統合情報記憶部124に記憶される統合認証情報に基づいて、ユーザUの統合認証を行う。
図12は、実施の形態2にかかる統合認証テーブルの一例を示す図である。図12に示すように、統合情報記憶部124に記憶される統合認証テーブル53は、「統合ユーザID」および「統合ユーザPW」が互いに関連付けられた情報を含む。統合認証部121は、統合認証テーブル53に含まれる統合認証情報に基づいて、ユーザUの統合認証を行う。
認証情報記憶部122Aには、各ユーザUの暗号化サービスアカウント情報が記憶される。統合認可装置11は、統合認証装置12Aにおいて統合認証が成功した場合、認証情報記憶部122Aに記憶された暗号化サービスアカウント情報を取得する。統合認可装置11は、取得した暗号化サービスアカウント情報をサービスアカウント情報に復号し、復号したサービスアカウント情報をサービス提供装置2へ送信する。
図13は、実施の形態2にかかるサービスアカウントテーブルの一例を示す図である。図13に示すように、認証情報記憶部122Aに記憶されるサービスアカウントテーブル54は、「統合ユーザID」、「サービスURL」、「暗号化サービスアカウント情報」、および「復号鍵」が互いに関連付けられた情報を含む。
取得部112は、サービスアカウントテーブル54からアクセスユーザの暗号化サービスアカウント情報を取得し、復号部113は、取得部112によって取得された暗号化サービスアカウント情報をサービスアカウント情報に復号する。統合認可部111は、復号部113によって復号されたサービスアカウント情報を用いて、サービス提供装置2にサービス認証を実行させる。
図14は、実施の形態2にかかる統合認証処理の一例を示すフローチャートである。図14に示すステップS21からS24の処理は、図7に示すステップS21からS24の処理と同じであるため説明を省略する。
統合認証部121は、ステップS24で取得したと判定した統合ログイン情報を統合情報記憶部124に記憶されている統合認証情報と比較する(ステップS25A)。そして、統合認証部121は、ステップS25Aにおける比較の結果に基づいて、アクセスユーザの認証である統合認証が成功したか否かを判定する(ステップS26A)。ステップS26Aにおいて、統合認証部121は、統合ログイン情報と一致する統合認証情報が統合情報記憶部124に記憶されている場合、統合認証が成功したと判定し、統合ログイン情報と一致する統合認証情報が統合情報記憶部124に記憶されていない場合、統合認証が失敗したと判定する。
統合認証部121は、統合認証が成功したと判定した場合(ステップS26A:Yes)、ステップS24で取得したと判定したアクセスユーザの統合ユーザIDを保持する(ステップS27)。また、統合認証部121は、アクセスユーザが認証済であると判定した場合(ステップS22)、アクセスユーザのCookie情報を参照し、統合ユーザIDを保持する(ステップS27)。
図15は、実施の形態2にかかるサービス認証処理の一例を示すフローチャートである。図15に示すステップS31からS34,S36からS38の処理は、図8に示すステップS31からS34,S36からS38の処理と同じであるため説明を省略する。
取得部112は、ステップS35Aにおいて、ステップS27で保持した統合ユーザIDと選択されたサービスとに関連付けられた暗号化サービスアカウント情報と復号鍵とを認証情報記憶部122Aから取得する。取得部112で取得された暗号化サービスアカウント情報は復号部113でサービスアカウント情報に復号され、選択されたサービスを提供するサービス提供装置2へ送信される。
なお、実施の形態2にかかるサービス統合認証認可システム1Aのハードウェア構成例は、実施の形態1にかかるサービス統合認証認可システム1と同じである。例えば、図10に示すプロセッサ101は、メモリ102に記憶されたプログラムを読み出して実行することによって、統合認可装置11および統合認証装置12Aの機能を実行することができる。
以上のように、実施の形態2にかかるサービス統合認証認可システム1Aは、統合認証を行うためユーザUの統合認証情報を記憶する統合情報記憶部124と、認証情報記憶部122Aとを備える。統合認証部121は、統合情報記憶部124に記憶された統合認証情報に基づいて、統合認証を行う。また、統合認可部111は、認証情報記憶部122Aに記憶された暗号化サービスアカウント情報を復号して生成されるサービスアカウント情報に基づいて、統合認証が行われたユーザUの認証を各サービス提供装置2に実行させる。これにより、統合認証情報と暗号化サービスアカウント情報とを分離して管理することができるため、セキュリティを強化した状態で、端末装置3と各サービス提供装置2とを連携することができる。
実施の形態3.
実施の形態3では、セキュリティキーが記憶されたデバイスを用いて統合認証処理が行われる点で、ユーザがユーザIDとユーザPWを手作業で入力する実施の形態1と異なる。以下においては、実施の形態1にかかるサービス統合認証認可システム1と同様の構成については同一符号を付して説明を省略し、実施の形態1にかかるサービス統合認証認可システム1と異なる構成について主に説明するものとする。
図16は、本発明の実施の形態3にかかるサービス統合認証認可システムおよびサービス提供装置の構成例を示す図である。図16に示すように、実施の形態2にかかる情報処理システム100Bは、サービス統合認証認可システム1Bと、サービス提供装置21,22と、端末装置3とを備える。端末装置3には、セキュリティキーが記憶されたデバイス5が接続される。かかるデバイス5は、例えば、端末装置3にUSB(Universal Serial Bus)接続されるドングルである。なお、図16に示す例では、端末装置3を一つのみ示しているが、実施の形態1と同様に端末装置3は複数設けられる。
サービス統合認証認可システム1Bは、統合認可装置11と、統合認証装置12Bとを備える。統合認証装置12Bは、図2に示す認証情報記憶部122に代えて、認証情報記憶部122Bを有する点で、図2に示す統合認証装置12と異なる。
図17は、実施の形態3にかかる認証認可テーブルの一例を示す図である。図17に示すように、認証情報記憶部122Bに記憶され認証認可テーブル55は、「セキュリティキー」、「サービスURL」、「暗号化サービスアカウント情報」、および「復号鍵」が互いに関連付けられた情報を含む。「セキュリティキー」は、デバイス5が記憶している固有のセキュリティキーであり、サービス統合認証認可システム1Bへのログイン時に認証情報として用いられる。かかるセキュリティキーは、統合認証情報の一例である。
ここで、サービス統合認証認可システム1Bによる統合認証処理について説明する。サービス統合認証認可システム1Bによる統合認証処理は、図7に示すサービス統合認証認可システム1による統合認証処理と同様の処理であるが、統合認証情報がセキュリティキーである点で異なる。
デバイス5が接続された端末装置3は、サービス統合認証認可システム1Bから統合ログイン画面の情報を受信すると、デバイス5に記憶されたセキュリティキーをデバイス5から読み出し、読み出したセキュリティキーをサービス統合認証認可システム1Bへ送信する。なお、端末装置3は、統合ログイン画面の情報を受信していない状態で、セキュリティキーをサービス統合認証認可システム1Bへ送信することもできる。統合認証部121は、図7に示すステップS24で端末装置3からセキュリティキーを取得したか否かを判定する。統合認証部121は、セキュリティキーを取得したと判定した場合(ステップS24:Yes)、ステップS24で取得したと判定したセキュリティキーを認証情報記憶部122Bに記憶されているセキュリティキーと比較する(ステップS25)。
統合認証部121は、ステップS25における比較の結果に基づいて、アクセスユーザの認証である統合認証が成功したか否かを判定する(ステップS26)。ステップS26において、統合認証部121は、ステップS24で取得したと判定したセキュリティキーと一致する統合セキュリティキーが認証情報記憶部122Bに記憶されている場合、アクセスユーザの認証である統合認証が成功したと判定し、ステップS24で取得したと判定したセキュリティキーと一致する統合セキュリティキーが認証情報記憶部122Bに記憶されていない場合、統合認証が失敗したと判定する。
なお、実施の形態3にかかるサービス統合認証認可システム1Bのハードウェア構成例は、実施の形態1にかかるサービス統合認証認可システム1と同じである。例えば、図10に示すプロセッサ101は、メモリ102に記憶されたプログラムを読み出して実行することによって、統合認可装置11および統合認証装置12Bの機能を実行することができる。
また、統合認証装置12Bは、実施の形態2の統合認証装置12Aと同様に、統合認証情報の一例であるセキュリティキーと暗号化サービスアカウント情報とを分離して記憶する構成であってもよい。すなわち、統合認証装置12Bは、認証情報記憶部122Bに代えて、セキュリティキーと統合ユーザIDとを記憶する統合情報記憶部と、統合ユーザID、暗号化サービスアカウント情報、および復号鍵を記憶する認証情報記憶部とを含む構成であってもよい。
以上のように、実施の形態3にかかる統合認証部121は、セキュリティキーが記憶されたデバイス5が接続された端末装置3から送信されるセキュリティキーと認証情報記憶部122Bに記憶された統合認証情報の一例であるセキュリティキーとを比較することで、統合認証を行う。これにより、例えば、ドングルなどの外部USB機器による認証動作が可能となり、ユーザIDおよびパスワードを管理する必要がない。また、固有のセキュリティキーによる認証が可能となるため、セキュリティを強化することができる。なお、実施の形態1のように、ユーザIDおよびパスワードを入力する方法と組み合わせてもよく、これにより、セキュリティをさらに強化することができる。
実施の形態4.
実施の形態4では、バイオメトリクスにより統合認証処理が行われる点で、ユーザがユーザIDとユーザPWを手作業で入力する実施の形態1と異なる。以下においては、実施の形態1にかかるサービス統合認証認可システム1と同様の構成については同一符号を付して説明を省略し、実施の形態1にかかるサービス統合認証認可システム1と異なる構成について主に説明するものとする。
図18は、本発明の実施の形態4にかかるサービス統合認証認可システムおよびサービス提供装置の構成例を示す図である。図18に示すように、実施の形態2にかかる情報処理システム100Cは、サービス統合認証認可システム1Cと、サービス提供装置21,22と、端末装置3とを備える。端末装置3には、ユーザUの身体特徴情報を検出するバイオメトリクス装置6が接続される。
バイオメトリクス装置6は、例えば、端末装置3にUSB接続されるが、端末装置3に内蔵されていてもよい。バイオメトリクス装置6は、例えば、ユーザUの指紋、顔、虹彩、声紋、および掌形の少なくとも一つの情報である身体特徴情報をユーザUのユーザ固有身体特徴情報として取得する。なお、図18に示す例では、端末装置3を一つのみ示しているが、実施の形態1と同様に端末装置3は複数設けられる。
サービス統合認証認可システム1Cは、統合認可装置11と、統合認証装置12Cとを備える。統合認証装置12Cは、図2に示す認証情報記憶部122に代えて、認証情報記憶部122Cを有する点で、図2に示す統合認証装置12と異なる。
図19は、実施の形態4にかかる認証認可テーブルの一例を示す図である。図19に示すように、認証情報記憶部122Cに記憶された認証認可テーブル56は、「ユーザ固有身体特徴情報」、「サービスURL」、「暗号化サービスアカウント情報」、および「復号鍵」が互いに関連付けられた情報を含む。「ユーザ固有身体特徴情報」は、例えば、ユーザUの指紋、顔、虹彩、声紋、および掌形の少なくとも一つの情報であり、サービス統合認証認可システム1Cへのログイン時に認証情報として用いられる。かかるユーザ固有身体特徴情報は、統合認証情報の一例である。
ここで、サービス統合認証認可システム1Cによる統合認証処理について説明する。サービス統合認証認可システム1Cによる統合認証処理は、図7に示すサービス統合認証認可システム1による統合認証処理と同様の処理であるが、統合認証情報がユーザ固有身体特徴情報である点で異なる。
バイオメトリクス装置6が接続された端末装置3は、サービス統合認証認可システム1Cから統合ログイン画面の情報を受信すると、バイオメトリクス装置6から出力されるユーザ固有身体特徴情報をサービス統合認証認可システム1Cへ送信する。なお、端末装置3は、統合ログイン画面の情報を受信していない状態で、ユーザ固有身体特徴情報をサービス統合認証認可システム1Bへ送信することもできる。統合認証部121は、図7に示すステップS24で端末装置3からユーザ固有身体特徴情報を取得したか否かを判定する。統合認証部121は、ユーザ固有身体特徴情報を取得したと判定した場合(ステップS24:Yes)、ステップS24で取得したと判定したユーザ固有身体特徴情報を認証情報記憶部122Cに記憶されているユーザ固有身体特徴情報と比較する(ステップS25)。
統合認証部121は、ステップS25における比較の結果に基づいて、アクセスユーザの認証である統合認証が成功したか否かを判定する(ステップS26)。ステップS26において、統合認証部121は、ステップS24で取得したと判定したユーザ固有身体特徴情報と一致するユーザ固有身体特徴情報が認証情報記憶部122Cに記憶されている場合、アクセスユーザの認証である統合認証が成功したと判定する。統合認証部121は、ステップS24で取得したと判定したユーザ固有身体特徴情報と一致するユーザ固有身体特徴情報が認証情報記憶部122Cに記憶されていない場合、統合認証が失敗したと判定する。
なお、実施の形態4にかかるサービス統合認証認可システム1Cのハードウェア構成例は、実施の形態1にかかるサービス統合認証認可システム1と同じである。例えば、図10に示すプロセッサ101は、メモリ102に記憶されたプログラムを読み出して実行することによって、統合認可装置11および統合認証装置12Cの機能を実行することができる。
また、統合認証装置12Cは、実施の形態2の統合認証装置12Aと同様に、統合認証情報の一例であるユーザ固有身体特徴情報と暗号化サービスアカウント情報とを分離して記憶する構成であってもよい。すなわち、統合認証装置12Cは、認証情報記憶部122Cに代えて、ユーザ固有身体特徴情報と統合ユーザIDとを記憶する統合情報記憶部と、統合ユーザID、暗号化サービスアカウント情報、および復号鍵を記憶する認証情報記憶部とを含む構成であってもよい。
以上のように、実施の形態4にかかる統合認証部121は、バイオメトリクス装置6によって取得され端末装置3から送信されるユーザUの身体特徴情報と認証情報記憶部122Cに記憶された統合認証情報の一例であるユーザ固有身体特徴情報とを比較することで、統合認証を行う。これにより、バイオメトリクスによる認証動作が可能となり、ユーザIDおよびパスワードを管理する必要がない。また、ユーザ固有の身体特徴情報による認証が可能となるため、セキュリティを強化することができる。なお、実施の形態1のように、ユーザIDおよびパスワードを入力する方法と組み合わせてもよく、これにより、セキュリティをさらに強化することができる。
実施の形態5.
実施の形態5では、ユーザによるサービスの選択の前に、複数のサービス提供装置に端末装置のユーザの認証を実行させる点、サービスユーザIDおよびサービスユーザPWを統合認証情報として用いる点、およびサービスを提供するサービス提供装置をクラウドに移行するための処理を行う点で、実施の形態1と異なる。以下においては、実施の形態1にかかるサービス統合認証認可システム1と同様の構成については同一符号を付して説明を省略し、実施の形態1にかかるサービス統合認証認可システム1と異なる構成について主に説明するものとする。
図20は、本発明の実施の形態5にかかるサービス統合認証認可システムおよびサービス提供装置の構成例を示す図である。図20に示すように、実施の形態5にかかる情報処理システム100Dは、サービス統合認証認可システム1Dと、サービス提供装置21,22,71,72と、複数の端末装置31,32,・・・,3nを備える。
サービス提供装置71は、サービスAを提供し、サービス提供装置72は、サービスBを提供する。実施の形態5にかかる情報処理システム100Dでは、サービスA,Bの提供をサービス提供装置71,72からサービス提供装置21,22へ移行する過程にある。以下、サービス提供装置71,72の各々を区別せずに示す場合、サービス提供装置7と記載する場合がある。
サービス提供装置7は、端末装置3からアクセスがあると、ログイン画面の情報を端末装置3へ送信する。端末装置3のユーザUが端末装置3を操作してログイン画面にサービスユーザIDおよびサービスユーザPWを含むサービスアカウント情報を入力し、かかるサービスアカウント情報を端末装置3からサービス提供装置7へ送信させる。サービス提供装置7は、端末装置3から送信されるサービスアカウント情報でサービス認証が成功すると、認証されたサービスアカウント情報を含み且つサービス統合認証認可システム1Dをアクセス先とするリダイレクト情報を端末装置3へ送信する。端末装置3は、サービス提供装置7からリダイレクト情報を取得すると、リダイレクト情報によるリクエストをサービス統合認証認可システム1Dへ送信する。かかるリクエストには、リダイレクト情報に含まれるサービスアカウント情報が含まれる。
サービス統合認証認可システム1Dは、統合認可装置11Dと、統合認証装置12Dとを備える。統合認可装置11Dは、図2に示す統合認可部111に代えて、統合認可部111Dを備える。統合認可部111Dは、ユーザUによるサービスの選択の前に複数のサービス提供装置2にユーザUの認証を実行させる処理と、サービスの提供をサービス提供装置71,72からサービス提供装置21,22へ移行するための処理とを行う点で、図2に示す統合認可部111の処理と異なる。
統合認証装置12Dは、図2に示す統合認証部121および認証情報記憶部122に代えて、統合認証部121Dおよび認証情報記憶部122Dを有する点で、図2に示す統合認証装置12と異なる。統合認証部121Dは、統合認証部121の処理に加え、サービスの提供をサービス提供装置71,72からサービス提供装置21,22へ移行するための処理を行う点で異なる。
認証情報記憶部122Dは、サービスユーザIDおよびサービスユーザPWを統合認証情報として記憶する点で、図2に示す認証情報記憶部122と異なる。図21は、実施の形態5にかかる認証認可テーブルの一例を示す図である。図21に示すように、認証情報記憶部122Dに記憶される認証認可テーブル57は、「統合認証情報」、「サービスURL」、「暗号化サービスアカウント情報」、および「復号鍵」が互いに関連付けられた情報を含む。
認証認可テーブル57は、「統合認証情報」として、ユーザUが利用できるサービスのうち選択された一つのサービスアカウント情報が設定される。具体的には、統合ユーザIDとして、ユーザUによって選択されたサービスユーザIDが設定され、サービスユーザPWとして、ユーザUによって選択された統合ユーザPWが設定される。
次に、サービス統合認証認可システム1Dの動作についてさらに詳細に説明する。図22は、実施の形態1にかかるサービス統合認証認可システムの処理の一例を示すフローチャートであり、サービス統合認証認可システム1Dによって繰り返し実行される。なお、図22に示すステップS53からS55,S57からS59の処理は、図7に示すステップS21からS26の処理と同じ処理であるため、説明を一部省略する。
図22に示すように、サービス統合認証認可システム1Dにおける統合認可装置11Dの統合認可部111Dは、ステップS51の処理において、端末装置3からアクセスがあると判定した場合(ステップS51:Yes)、端末装置3のアクセスがサービス提供装置7からのリダイレクト情報によるリクエストであるか否かを判定する(ステップS52)。
統合認可部111Dは、リダイレクト情報によるリクエストではないと判定した場合(ステップS52:No)、ステップS53の処理へ移行する。また、リダイレクト情報によるリクエストであると判定した場合(ステップS52:Yes)、移行処理を行う(ステップS61)。かかるステップS61の処理は、図24に示すステップS81からS83の処理であり、後で詳述する。
ステップS55の処理において、統合認証部121Dが統合ログイン画面の情報を統合認可部111D経由で端末装置3へ送信すると、端末装置3には、統合ログイン画面が表示される。かかるログイン画面には、統合認証情報を入力する入力枠の他に、統合認証情報の設定ボタンが配置されている。端末装置3のユーザUが統合ログイン画面の設定ボタンを操作すると、端末装置3から統合認証情報の設定要求がサービス統合認証認可システム1Dへ送信される。
統合認証部121Dは、統合認可部111D経由でアクセスユーザの端末装置3から統合認証情報の設定要求があるか否かを判定する(ステップS56)。統合認証部121Dは、統合認証情報の設定要求があると判定した場合(ステップS56:Yes)、統合認証情報設定処理を行う(ステップS62)。かかるステップS62の処理は、図25に示すステップS91からS97の処理であり、後で詳述する。
統合認証部121Dは、統合認証情報の設定要求がないと判定した場合(ステップS56:No)、処理をステップS57に移行する。統合認証部121Dは、統合ログイン情報を取得していないと判定した場合(ステップS57:No)、ステップS56の処理へ移行する。
サービス統合認証認可システム1Dは、統合認証部121Dによって統合認証が失敗したと判定された場合(ステップS59:No)、処理をステップS55へ移行する。また、サービス統合認証認可システム1Dは、統合認証部121Dによって統合認証が成功したと判定された場合(ステップS59:Yes)、または、アクセスユーザが認証済であると判定した場合(ステップS54:Yes)、サービス認証処理を行う(ステップS60)。サービス統合認証認可システム1Dは、サービス認証処理が終了した場合、図22に示す処理を終了する。なお、サービス統合認証認可システム1Dは、ステップS61の処理が終了した後、ステップS60の処理を行うこともできる。
ここで、ステップS60のサービス認証処理について説明する。図23は、実施の形態5にかかるサービス認証処理の一例を示すフローチャートである。図23のステップS70,S74,S75,S76,S78,S79,S80の処理は、図8に示すステップS33,S38,S31,S32,S31,S32,S34の処理と同様の処理であり、一部説明を省略する。
統合認証部121Dは、認証情報記憶部122Dにアクセスユーザの暗号化サービスアカウント情報があるか否かを判定する(ステップS70)。取得部112は、統合認証部121Dによって暗号化サービスアカウント情報があると判定された場合(ステップS70:Yes)、アクセスユーザの統合ユーザIDに関連付けられたすべての暗号化サービスアカウント情報と復号鍵とを取得する(ステップS71)。復号部113は、取得部112によって取得された復号鍵を用いて、取得部112によって取得された暗号化サービスアカウント情報を暗号化サービスアカウント情報に復号する(ステップS72)。
統合認可部111Dは、復号部113によって復号されたサービスアカウント情報をリクエストに格納して各サービスアカウント情報に対応するサービス提供装置2へ送信する(ステップS73)。統合認可部111Dは、ステップS73で送信したリクエストに応答してサービス提供装置2から送信される情報に基づいて、サービス認証が成功したか否かを判定する(ステップS74)。
統合認証部121Dは、統合認可部111Dによってサービス認証が成功したと判定された場合(ステップS74:Yes)、サービス選択画面の情報を統合認可部111D経由でアクセスユーザの端末装置3へ送信する(ステップS75)。そして、統合認証部121Dは、アクセスユーザがサービスを選択したか否かを判定する(ステップS76)。統合認証部121Dは、アクセスユーザがサービスを選択したと判定した場合(ステップS76:Yes)、アクセスユーザが選択したサービスを提供するサービス提供装置2からの利用画面の情報を端末装置3へ送信する(ステップS77)。
統合認証部121Dは、統合認可部111Dによって暗号化サービスアカウント情報がないと判定された場合(ステップS70:No)、サービス選択画面の情報を統合認可部111D経由でアクセスユーザの端末装置3へ送信する(ステップS78)。そして、統合認証部121Dは、アクセスユーザがサービスを選択したか否かを判定する(ステップS79)。統合認証部121Dは、アクセスユーザがサービスを選択したと判定した場合(ステップS79:Yes)、暗号化サービスアカウントを生成して記憶する暗号化サービスアカウント処理を実行する(ステップS80)。
サービス統合認証認可システム1Dは、ステップS77の処理が終了した場合、またはステップS80の処理が終了した場合、図23に示す処理を終了する。なお、上述した例では、統合認証部121Dは、ユーザUの選択前にアクセスユーザが利用可能な全てのサービスを認証するが、かかる例に限定されない。
例えば、統合認可装置11Dは、ユーザUの利用頻度が高いサービスについてのみユーザUの選択前に認証することもできる。この場合、統合認可部111Dは、各ユーザUのアクセス履歴の情報を有しており、利用頻度が高い順に予め決められた数のサービスを判定し、判定したサービスについてのみアクセスユーザの選択前に認証することができる。この場合、取得部112は、アクセスユーザの利用頻度が高い順に予め決められた数のサービスの暗号化サービスアカウント情報を取得する。なお、ユーザUの利用頻度とは、ユーザU毎の利用頻度であってもよく、ユーザU全体の利用頻度であってもよい。
また、統合認可部111Dは、サービス統合認証認可システム1Dまたは統合認可装置11Dの処理負荷に応じて、上述した予め決められた数を変更することができる。例えば、統合認可部111Dは、サービス統合認証認可システム1Dまたは統合認可装置11Dの処理負荷が高いほど、上述した予め決められた数を減少させることができる。これにより、サービス統合認証認可システム1Dまたは統合認可装置11Dの処理負荷が高くなりすぎることを防止することができる。
また、統合認可部111Dは、ユーザU毎またはユーザU全体でサービス提供装置2が提供するサービスを利用する頻度であるサービス利用頻度に基づいて、上述した予め決められた数を変更することができる。例えば、統合認可部111Dは、サービス利用頻度が低いほど、上述した予め決められた数を減少させることができる。これによっても、サービス統合認証認可システム1Dまたは統合認可装置11Dの処理負荷が高くなりすぎることを防止することができる。
また、統合認可部111Dは、サービス利用頻度が閾値以上のアクセスユーザについては、図23に示すサービス認証処理を行い、サービス利用頻度が閾値未満のアクセスユーザについては、図8に示すサービス認証処理を行うこともできる。これによっても、サービス統合認証認可システム1Dまたは統合認可装置11Dの処理負荷が高くなりすぎることを防止することができる。
なお、サービス統合認証認可システム1Dは、図23に示すステップS71からS74の処理と、ステップS75およびS76の処理とを並行して実行することもできる。
次に、ステップS61の移行処理について説明する。図24は、実施の形態5にかかる移行処理の一例を示すフローチャートである。図24に示すように、統合認証部121Dは、統合認可部111D経由で端末装置3のリクエストに含まれるサービスアカウント情報を取得する(ステップS81)。
取得部112は、統合認証部121Dによって取得されたサービスアカウント情報を暗号化して暗号化サービスアカウント情報を生成し(ステップS82)、生成した暗号化サービスアカウント情報を認証情報記憶部122Dに記憶する(ステップS83)。サービス統合認証認可システム1Dは、ステップS83の処理を終了した場合、図24に示す処理を終了する。
次に、ステップS62の統合認証情報設定処理について説明する。図25は、実施の形態5にかかる統合認証情報設定処理の一例を示すフローチャートである。図25に示すように、統合認証部121Dは、サービスアカウント情報を入力するための入力画面の情報
を統合認可部111D経由でアクセスユーザの端末装置3へ送信する(ステップS91)。
これにより、アクセスユーザの端末装置3には、入力画面が表示される。入力画面は、サービスユーザIDおよびサービスユーザPWを含むサービスアカウント情報をアクセスユーザに入力させるための画面である。アクセスユーザは、端末装置3を操作して入力画面にサービスアカウント情報を入力し、かかる統合ログイン情報を端末装置3からサービス統合認証認可システム1Dへ送信させる。
統合認証部121Dは、端末装置3からのサービスアカウント情報を取得すると、端末装置3からのサービスアカウント情報を含むリクエストをサービス提供装置2へ統合認可部111D経由で送信する(ステップS92)。統合認可部111Dは、ステップS92で送信したリクエストに応答してサービス提供装置2から送信される情報に基づいて、上述したステップS38の処理と同様の処理によって、サービス認証が成功したか否かを判定する(ステップS93)。
統合認証部121Dは、サービス認証が成功したと判定された場合(ステップS93:Yes)、端末装置3から取得したサービスアカウント情報を統合認証情報として認証情報記憶部122Dに設定する(ステップS94)。また、収集部123は、統合認証部121Dによって取得されたサービスアカウント情報を暗号化して暗号化サービスアカウント情報を生成し(ステップS95)、生成した暗号化サービスアカウント情報を認証情報記憶部122Dに記憶する(ステップS96)。
統合認証部121Dは、認証が失敗したと判定された場合(ステップS93:No)、統合認可部111D経由でアクセスユーザの端末装置3へエラー画面の情報を送信する(ステップS97)。サービス統合認証認可システム1Dは、ステップS96の処理が終了した場合、または、ステップS97の処理が終了した場合、図25に示す処理を終了する。
なお、実施の形態5にかかるサービス統合認証認可システム1Dのハードウェア構成例は、実施の形態1にかかるサービス統合認証認可システム1と同じである。例えば、図10に示すプロセッサ101は、メモリ102に記憶されたプログラムを読み出して実行することによって、統合認可装置11Dおよび統合認証装置12Dの機能を実行することができる。
また、統合認証装置12Dは、実施の形態2の統合認証装置12Aと同様に、統合認証情報と暗号化サービスアカウント情報とを分離して記憶する構成であってもよい。すなわち、統合認証装置12Dは、認証情報記憶部122Dに代えて、統合認証情報を記憶する統合情報記憶部と、統合ユーザID、暗号化サービスアカウント情報、および復号鍵を記憶する認証情報記憶部とを含む構成であってもよい。また、統合認証情報は、セキュリティキーであってもよく、ユーザUの身体特徴情報であってもよい。
以上のように、実施の形態5にかかるサービス統合認証認可システム1Dの統合認可部111Dは、統合認証後、ユーザUによるサービスの選択の前に、複数のサービス提供装置2に端末装置3のユーザUの認証を実行させる。これにより、端末装置3のユーザUは、サービス提供装置2が提供するサービスを迅速に利用することができる。
また、実施の形態5にかかるサービス統合認証認可システム1Dでは、統合認証部121Dは、端末装置3のリクエストに含まれるサービスアカウント情報を取得する。そして、収集部123は、統合認証部121Dによって取得されたサービスアカウント情報を暗号化して暗号化サービスアカウント情報を生成する。生成した暗号化サービスアカウント情報を認証情報記憶部122Dに記憶する。これにより、クラウドサービスプラットフォーム10外のサービス提供装置7が提供するサービスをクラウドサービスプラットフォーム10のサービス提供装置2へ容易に移行することができる。
また、実施の形態5にかかるサービス統合認証認可システム1Dでは、統合認証部121Dは、ユーザUによって選択されたサービスのサービスアカウント情報を統合認証情報として設定する。これにより、ユーザUは、例えば、主に使用するサービスのサービスアカウント情報を用いて、複数のサービスを利用することができる。
また、上述した実施の形態1にかかるサービス統合認証認可システム1では、統合認可装置11と統合認証装置12とは別体で構成されるが、統合認可装置11と統合認証装置12とは一体的に構成されてもよい。このことは、サービス統合認証認可システム1A,1B,1C,1Dについても同様である。
以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。