(57)【要約】【課題】アプリケーションへのログインの代行で使用される情報をアプリケーションシステムと同期できるログイン代行システムを提供する。【解決手段】ログイン代行サーバ７０１〜ログイン代行サーバ７０Ｋは、ログインで求められる情報であるログイン情報を用いてログインを代行する代行部７１と、代行部７１によるログインの代行結果を示す情報である代行結果情報を記憶する第１記憶部７２とを有し、管理サーバ６０は、ログイン情報を記憶する第２記憶部６１と、ログインの代行が失敗した代行部７１を有するログイン代行サーバ７０１以外のログイン代行サーバ７０２〜ログイン代行サーバ７０Ｋが有する第１記憶部７２から代行結果情報を取得する取得部６２と、取得された代行結果情報のうち所定の条件を満たす代行結果情報の内容を第２記憶部６１に記憶されている失敗したログインの代行で用いられたログイン情報に反映する反映部６３とを有する。【選択図】図８
2019168956.tif 000002
【特許請求の範囲】
【請求項１】
管理サーバと、複数のログイン代行サーバとを含むログイン代行システムであって、
前記ログイン代行サーバは、
ログインで求められる情報であるログイン情報を用いてログインを代行する代行部と、
前記代行部によるログインの代行結果を示す情報である代行結果情報を記憶する第１記憶部とを有し、
前記管理サーバは、
前記ログイン情報を記憶する第２記憶部と、
ログインの代行が失敗した代行部を有するログイン代行サーバ以外のログイン代行サーバが有する第１記憶部から代行結果情報を取得する取得部と、
取得された代行結果情報のうち所定の条件を満たす代行結果情報の内容を前記第２記憶部に記憶されている失敗したログインの代行で用いられたログイン情報に反映する反映部とを有する
ことを特徴とするログイン代行システム。
【請求項２】
取得部は、ログインの代行が失敗した代行部に所定の条件を満たす代行結果情報の内容が反映されたログイン情報を用いてログインを代行することを指示する情報である指示情報を入力する
請求項１記載のログイン代行システム。
【請求項３】
代行部は、
入力された指示情報に基づいてログインを代行し、
ログインの代行が成功したことを示す情報である成功情報を取得部に入力する
請求項２記載のログイン代行システム。
【請求項４】
反映部は、取得部に入力された成功情報に基づいて所定の条件を満たす代行結果情報の内容が反映されたログイン情報に含まれている試行状態であることを示す情報を削除する
請求項３記載のログイン代行システム。
【請求項５】
所定の条件は、最新のログインの代行結果を示す情報であることである
請求項１から請求項４のうちのいずれか１項に記載のログイン代行システム。
【請求項６】
管理サーバと、複数のログイン代行サーバとを含むログイン代行システムで実行されるログイン代行方法であって、
前記ログイン代行サーバは、
ログインで求められる情報であるログイン情報を用いてログインを代行し、
ログインの代行結果を示す情報である代行結果情報を第１記憶部に記憶させ、
前記管理サーバは、
前記ログイン情報を第２記憶部に記憶させ、
ログインの代行が失敗したログイン代行サーバ以外のログイン代行サーバが有する第１記憶部から代行結果情報を取得し、
取得された代行結果情報のうち所定の条件を満たす代行結果情報の内容を前記第２記憶部に記憶されている失敗したログインの代行で用いられたログイン情報に反映する
ことを特徴とするログイン代行方法。
【請求項７】
管理サーバは、ログインの代行が失敗したログイン代行サーバに所定の条件を満たす代行結果情報の内容が反映されたログイン情報を用いてログインを代行することを指示する情報である指示情報を入力する
請求項６記載のログイン代行方法。
【請求項８】
ログイン代行サーバは、
入力された指示情報に基づいてログインを代行し、
ログインの代行が成功したことを示す情報である成功情報を管理サーバに入力する
請求項７記載のログイン代行方法。
【請求項９】
管理サーバは、入力された成功情報に基づいて所定の条件を満たす代行結果情報の内容が反映されたログイン情報に含まれている試行状態であることを示す情報を削除する
請求項８記載のログイン代行方法。
【請求項１０】
所定の条件は、最新のログインの代行結果を示す情報であることである
請求項６から請求項９のうちのいずれか１項に記載のログイン代行方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ログイン代行システムおよびログイン代行方法に関する。
【背景技術】
【０００２】
１度の認証で複数の業務アプリケーションに対するログインおよびアクセスが可能になるシングルサインオン(Single Sign-ON:SSO)技術が知られている。シングルサインオン技術の方式には、以下の３つがある。
【０００３】
１つ目の方式は、各業務アプリケーションに認証機能が用意されず、全ての認証がシングルサインオンシステムで実行される方式である。
【０００４】
２つ目の方式は、各業務アプリケーションが有する認証機能に対してシングルサインオンシステムがログインを代行する方式であるログイン代行方式である。
【０００５】
２つ目の方式を実現する方法として、例えば、業務アプリケーションが表示するログイン画面に対してIDの文字列、およびパスワードの文字列を入力する方法がある。また、業務アプリケーションサーバに対して、BASIC認証や統合Windows（登録商標）認証等の認証ヘッダを送信する方法、またはFORM認証等のPOSTデータを送信する方法がある。
【０００６】
３つ目の方式は、シングルサインオンシステムが認証したことを示す情報を各業務アプリケーションへ送信し、各業務アプリケーションが送信された情報を信頼する方式である。３つ目の方式を実現する方法として、例えば、SAML(Security Assertion Markup Language)やOpenID等のプロトコルを使用する方法がある。
【０００７】
運用中の多くの業務アプリケーションは、既に認証機能を個別に有している。よって、シングルサインオンシステムが導入される場合、シングルサインオンシステムに１つ目の方式のシングルサインオン技術が採用されることは無意味である。
【０００８】
また、運用中の多くの業務アプリケーションは、SAMLやOpenID等のプロトコルに対応していない。よって、導入されるシングルサインオンシステムに、３つ目の方式のシングルサインオン技術は、採用されにくい。
【０００９】
しかし、上記の業務アプリケーションに対して、２つ目の方式であるログイン代行方式によるログインは実行可能である。よって、導入されるシングルサインオンシステムにログイン代行方式が採用されることが多い。
【００１０】
上記のように、シングルサインオン技術の方式の１つに、業務アプリケーションに対してIDとパスワードを利用者に代わって入力するログイン代行方式がある。ログイン代行方式が用いられると、利用者が何も対応することなく、ログインが自動で実行される。
【００１１】
ログイン代行方式が採用されたシングルサインオンシステムであるログイン代行システムには、業務アプリケーションへのログインに要する業務アカウントIDとパスワードとを管理することが求められる。また、ログイン代行システムと業務アプリケーションとの間で、同じ内容の業務アカウントIDとパスワードとが同期されていることが求められる。
【００１２】
また、ログイン代行システムは、業務アプリケーションのパスワードを示す情報を利用者に通知する形態で運用されていてもよいし、利用者に通知しない形態で運用されていてもよい。
【００１３】
パスワードを示す情報を利用者に通知する形態でログイン代行システムが運用されている場合、利用者は、パスワードを把握できる。よって、利用者は、ログイン代行システムを介さずに直接業務アプリケーションにログインできる。上記の形態は、例えば、利用者が容易に業務アプリケーションを利用できることが求められる場合に取られる。
【００１４】
パスワードを示す情報を利用者に通知しない形態でログイン代行システムが運用されている場合、利用者は、パスワードを把握できない。よって、利用者は、ログイン代行システムを介してのみ業務アプリケーションにログインできる。上記の形態は、例えば、業務アプリケーションへのログインが可能な限りIT(Information Technology)技術で統制されることが求められる場合に取られる。
【００１５】
パスワード等を同期させる方法の１つに、ログイン代行システムと業務アプリケーションシステムの両システムにおいて、一方のシステムがパスワードを示す情報を出力し、他方のシステムが出力された情報を取り込む方法がある。
【００１６】
また、特許文献１には、パスワード変更画面を有するアプリケーションプログラムのパスワード変更方法が記載されている。特許文献１に記載されているパスワード変更方法は、クライアント側でパスワード変更が検知された後に両システムで管理されているパスワードを更新する方法である。
【先行技術文献】
【特許文献】
【００１７】
【特許文献１】特開２００２−１４９２６号公報
【発明の概要】
【発明が解決しようとする課題】
【００１８】
上記の２つ目の方式では、２つのシステムのいずれかで障害が発生した際、例えばバックアップされたデータが用いられて復旧が行われる。しかし、復旧が行われると、両システム間でパスワードの不一致が生じる。
【００１９】
業務アプリケーションシステムにおいて障害が発生した際のパスワードの不一致を解消する方法は、既に提示されている。しかし、上記の２つ目の方式では、ログイン代行システムにおいて障害が発生した場合が考慮されていない。
【００２０】
ログイン代行システムで何らかの障害が発生した際にバックアップされたデータが用いられて復旧が行われると、ログイン代行システムで管理されているパスワードが、過去に使用されたパスワードに戻る。
【００２１】
ログイン代行システムで管理されているパスワードが過去に使用されたパスワードに戻ると、ログイン代行システムと業務アプリケーションシステムとの間で、パスワードの不一致が生じる。シングルサインオンが実行されるためには再度のパスワードの同期が求められるが、再度のパスワードの同期の実行には以下の課題がある。
【００２２】
業務アプリケーションシステムにパスワードを示す情報を抽出するためのインタフェースが用意されていない場合、業務アプリケーションシステムがログイン代行システムからパスワードを示す情報を取り込む方法は、使用されない。
【００２３】
上記の抽出用のインタフェースが用意されているログイン代行システムは、業務アプリケーションシステムからパスワードを示す情報を取り込むことができる。しかし、業務アプリケーションシステムが暗号化された状態のパスワード、またはハッシュ化された状態のパスワードを保持していれば、抽出用のインタフェースが用意されていても、ログイン代行システムは、パスワードを示す情報を取り込むことができない場合がある。
【００２４】
また、クライアント側からログイン代行システムで管理されているパスワードと業務アプリケーションシステムで管理されているパスワードを更新する場合、そもそもパスワードが不一致の状態であるため、クライアントは、業務アプリケーションにログインできない。すなわち、クライアントはパスワード変更画面にアクセスできないため、特許文献１に記載されている方法は、使用されない。
【００２５】
パスワードの不一致を解消するために、利用者自身が過去に使用されたパスワードを業務アプリケーションシステムに登録し直す方法も考えられる。しかし、利用者が過去に使用されたパスワードを覚えていない可能性は高い。
【００２６】
また、パスワードの不一致を解消するために、利用者自身がログイン代行システム側のパスワードを最新のパスワードに変更する方法も考えられる。しかし、パスワードを利用者に通知しない形態でログイン代行システムが運用されている場合、利用者は、最新のパスワードを把握していない。
【００２７】
［発明の目的］
そこで、本発明は、上述した課題を解決する、アプリケーションへのログインの代行で使用される情報をアプリケーションシステムと同期できるログイン代行システムおよびログイン代行方法を提供することを目的とする。
【課題を解決するための手段】
【００２８】
本発明によるログイン代行システムは、管理サーバと、複数のログイン代行サーバとを含むログイン代行システムであって、ログイン代行サーバは、ログインで求められる情報であるログイン情報を用いてログインを代行する代行部と、代行部によるログインの代行結果を示す情報である代行結果情報を記憶する第１記憶部とを有し、管理サーバは、ログイン情報を記憶する第２記憶部と、ログインの代行が失敗した代行部を有するログイン代行サーバ以外のログイン代行サーバが有する第１記憶部から代行結果情報を取得する取得部と、取得された代行結果情報のうち所定の条件を満たす代行結果情報の内容を第２記憶部に記憶されている失敗したログインの代行で用いられたログイン情報に反映する反映部とを有することを特徴とする。
【００２９】
本発明によるログイン代行方法は、管理サーバと、複数のログイン代行サーバとを含むログイン代行システムで実行されるログイン代行方法であって、ログイン代行サーバは、ログインで求められる情報であるログイン情報を用いてログインを代行し、ログインの代行結果を示す情報である代行結果情報を第１記憶部に記憶させ、管理サーバは、ログイン情報を第２記憶部に記憶させ、ログインの代行が失敗したログイン代行サーバ以外のログイン代行サーバが有する第１記憶部から代行結果情報を取得し、取得された代行結果情報のうち所定の条件を満たす代行結果情報の内容を第２記憶部に記憶されている失敗したログインの代行で用いられたログイン情報に反映することを特徴とする。
【発明の効果】
【００３０】
本発明によれば、アプリケーションへのログインの代行で使用される情報をアプリケーションシステムと同期できる。
【図面の簡単な説明】
【００３１】
【図１】本発明によるログイン代行システムの第１の実施形態の構成例を示すブロック図である。
【図２】ログイン代行情報データベース２１０に格納されている利用者アカウント情報の例を示す説明図である。
【図３】ログイン代行情報データベース２１０に格納されている業務アプリケーション画面定義情報の例を示す説明図である。
【図４】ログイン代行情報データベース２１０に格納されている業務アプリケーションアカウント情報の例を示す説明図である。
【図５】業務システムパスワード履歴情報データベース１６０に格納されている業務システムパスワード履歴情報の例を示す説明図である。
【図６】第１の実施形態のログイン代行システム１０によるログイン代行処理の動作を示すフローチャートである。
【図７】第１の実施形態のログイン代行システム１０によるパスワード同期処理の動作を示すフローチャートである。
【図８】本発明によるログイン代行システムの概要を示すブロック図である。
【発明を実施するための形態】
【００３２】
実施形態１．
［構成の説明］
以下、本発明の実施形態を、図面を参照して説明する。図１は、本発明によるログイン代行システムの第１の実施形態の構成例を示すブロック図である。
【００３３】
図１に示すように、本実施形態のログイン代行システム１０は、ログイン代行サーバ１００１〜ログイン代行サーバ１００Ｎと、管理サーバ２００と、クライアント端末３００１〜クライアント端末３００Ｍと、業務アプリケーションサーバ４００とを含む（Ｎは２以上の自然数、Ｍは自然数）。
【００３４】
ログイン代行サーバ１００１〜ログイン代行サーバ１００Ｎは、それぞれ異なるクライアント端末に対応している。以下、ログイン代行サーバ１００１〜ログイン代行サーバ１００Ｎをまとめてログイン代行サーバ１００とも記載する。また、クライアント端末３００１〜クライアント端末３００Ｍをまとめてクライアント端末３００とも記載する。
【００３５】
図１に示すログイン代行サーバ１００は、業務アプリケーションのログイン画面へのIDとパスワードの入力を代行することによって、シングルサインオン技術を実現するサーバである。
【００３６】
本実施形態のログイン代行サーバ１００は、例えば、クライアント端末３００において稼働するエージェントソフトウェアに業務アプリケーションへのログインを代行させるサーバである。すなわち、ログイン代行サーバ１００の一部がクライアント端末３００に配置される。
【００３７】
ログイン代行サーバ１００は、各業務アプリケーションとパスワードを示す情報を同期する。また、各業務アプリケーションとの間でパスワードの不一致が生じた場合、ログイン代行サーバ１００は、自身が管理するパスワードを補正する。
【００３８】
図１に示すように、ログイン代行サーバ１００は、ログイン処理部１１０と、ログイン画面検知部１２０と、入力代行部１３０と、ログイン後画面検知部１４０と、業務システムパスワード履歴処理部１５０と、業務システムパスワード履歴情報データベース１６０とを有する。
【００３９】
ログイン処理部１１０は、利用者のログイン代行サーバ１００へのログインを許可するか否かを判定する機能を有する。また、ログイン画面検知部１２０は、業務アプリケーションログイン画面が表示されたことを検知する機能を有する。
【００４０】
また、入力代行部１３０は、利用者による業務アプリケーションログイン画面へのログインを代行する機能を有する。ログインを代行するために、入力代行部１３０は、ログインに求められる情報の業務アプリケーションログイン画面への入力を代行する。
【００４１】
また、ログイン後画面検知部１４０は、業務アプリケーションログイン画面が遷移した画面を検知する機能を有する。また、業務システムパスワード履歴処理部１５０は、ログイン代行の結果を示す情報である業務システムパスワード履歴情報を生成する機能を有する。
【００４２】
業務システムパスワード履歴処理部１５０は、生成された業務システムパスワード履歴情報を業務システムパスワード履歴情報データベース１６０に格納する。業務システムパスワード履歴情報データベース１６０は、格納された業務システムパスワード履歴情報を暗号化して所定期間保持する機能を有する。
【００４３】
業務システムパスワード履歴情報には、ログイン代行対象の業務アプリケーションに対するパスワード変更時またはログイン代行成功時の時刻と、業務アカウントパスワードとが含まれる。
【００４４】
また、図１に示すように、管理サーバ２００は、ログイン代行情報データベース２１０と、認証情報復旧処理部２２０とを有する。
【００４５】
ログイン代行情報データベース２１０は、利用者のアカウント情報、業務アプリケーションの画面の定義情報、および業務アプリケーションのアカウント情報を保持する機能を有する。保持される各情報は、認証情報復旧処理部２２０によりログイン代行情報データベース２１０に格納される。
【００４６】
認証情報復旧処理部２２０は、バックアップデータが用いられた復旧が行われた際にパスワードが過去に使用されたパスワードに戻った場合、業務アプリケーションの各アカウント情報に復旧直後の状態であることを記録する。
【００４７】
また、図１に示すように、クライアント端末３００は、ログイン代行サーバログイン画面、業務アプリケーションログイン画面、業務アプリケーションログイン成功画面、および業務アプリケーションログイン失敗画面を表示する。以下、業務アプリケーションログイン画面、業務アプリケーションログイン成功画面、および業務アプリケーションログイン失敗画面を、まとめて業務アプリケーション画面と呼ぶ。
【００４８】
Web型アプリケーションの業務アプリケーション画面は、Webブラウザで表示される。また、クライアント／サーバ型アプリケーションの業務アプリケーション画面は、独自のユーザインタフェースで表示される。
【００４９】
業務アプリケーションサーバ４００は、クライアント端末３００１〜クライアント端末３００Ｍに業務アプリケーション画面の表示に使用される情報を送信する機能を有する。業務アプリケーションサーバ４００は、各端末に同じ情報を送信する。
【００５０】
以下、本実施形態のログイン代行システム１０の使用例を説明する。利用者は、クライアント端末３００においてログイン代行サーバログイン画面を表示する。次いで、利用者は、表示された画面に利用者のIDおよびパスワードを入力して、ログイン代行サーバ１００へのログインを要求する。
【００５１】
ログイン代行サーバ１００のログイン処理部１１０は、クライアント端末３００から入力された利用者からのログイン要求を受け付ける。次いで、ログイン処理部１１０は、管理サーバ２００のログイン代行情報データベース２１０に格納されている利用者アカウント情報を参照する。
【００５２】
図２は、ログイン代行情報データベース２１０に格納されている利用者アカウント情報の例を示す説明図である。図２に示すように、利用者アカウント情報は、利用者IDと、利用者パスワードとで構成されている。
【００５３】
ログイン要求に含まれている利用者のIDおよびパスワードがいずれかの利用者アカウント情報の利用者IDおよび利用者パスワードと一致する場合、ログイン処理部１１０は、利用者のログイン代行サーバ１００へのログインを許可する。
【００５４】
ログイン要求に含まれている利用者のIDおよびパスワードがいずれの利用者アカウント情報の利用者IDおよび利用者パスワードとも一致しない場合、ログイン処理部１１０は、利用者のログイン代行サーバ１００へのログインを拒否する。
【００５５】
ログイン代行サーバ１００へのログインが許可された利用者は、クライアント端末３００において業務アプリケーションログイン画面を表示する。業務アプリケーションログイン画面が表示されると、ログイン代行サーバ１００のログイン画面検知部１２０は、画面が表示されたことを検知する。
【００５６】
次いで、ログイン画面検知部１２０は、ログイン代行情報データベース２１０に格納されている業務アプリケーション画面定義情報を利用して、どの業務アプリケーション画面が表示されているかを特定する。
【００５７】
図３は、ログイン代行情報データベース２１０に格納されている業務アプリケーション画面定義情報の例を示す説明図である。図３に示すように、業務アプリケーション画面定義情報は、業務アプリケーションIDと、種別と、業務アプリケーション画面定義とで構成されている。
【００５８】
業務アプリケーションIDは、業務アプリケーションの識別情報である。また、種別は、表示される画面の種別であり、ログイン画面、ログイン成功画面、またはログイン失敗画面のいずれかを示す。
【００５９】
また、業務アプリケーション画面定義は、業務アプリケーションIDと種別とで特定される業務アプリケーション画面の定義情報である。図３に示すように、業務アプリケーション画面定義には、画面タイトルや、プロセス名が含まれる。
【００６０】
ログイン画面検知部１２０は、ログイン代行サーバ１００にログインしている利用者の利用者IDと、特定された業務アプリケーションログイン画面に関する業務アプリケーションIDを入力代行部１３０に入力する。次いで、入力代行部１３０は、ログイン代行情報データベース２１０に格納されている業務アプリケーションアカウント情報の業務アカウントIDおよび業務アカウントパスワードを取得する。
【００６１】
図４は、ログイン代行情報データベース２１０に格納されている業務アプリケーションアカウント情報の例を示す説明図である。図４に示すように、業務アプリケーションアカウント情報は、利用者IDと、業務アプリケーションIDと、業務アカウントIDと、業務アカウントパスワードと、更新日時と、復旧状態とで構成されている。
【００６２】
利用者IDは、利用者アカウント情報の利用者IDである。また、業務アプリケーションIDは、業務アプリケーション画面定義情報の業務アプリケーションIDである。また、業務アカウントIDおよび業務アカウントパスワードは、業務アプリケーションログイン画面に入力される情報である。また、更新日時は、業務アプリケーションアカウント情報が更新された日時を示す情報である。
【００６３】
また、復旧状態は、業務アプリケーションアカウント情報の状態を示す情報である。復旧状態の「０」は、復旧済の状態であることを意味する。また、復旧状態の「１」は、復旧試行済の状態であることを意味する。また、復旧状態の「２」は、復旧直後の状態であることを意味する。
【００６４】
管理サーバ２００において障害が発生した場合、システム管理者が、バックアップデータを用いてログイン代行情報データベース２１０を復旧する。ログイン代行情報データベース２１０が復旧される際、認証情報復旧処理部２２０は、ログイン代行情報データベース２１０に格納されている各業務アプリケーションアカウント情報の復旧状態を、復旧直後であることを意味する「２」に設定する。
【００６５】
入力代行部１３０は、現在ログイン代行サーバ１００にログインしている利用者の利用者ID、および表示されている業務アプリケーションログイン画面に関する業務アプリケーションIDをキーとして、業務アカウントIDおよび業務アカウントパスワードを取得する。
【００６６】
次いで、入力代行部１３０は、取得された情報の業務アプリケーションログイン画面への入力を代行する。情報が入力された後、業務アプリケーションログイン画面は、業務アプリケーションログイン成功画面、または業務アプリケーションログイン失敗画面のいずれかに遷移する。
【００６７】
ログイン代行サーバ１００のログイン後画面検知部１４０は、画面が遷移したことを検知する。次いで、ログイン後画面検知部１４０は、ログイン代行情報データベース２１０に格納されている業務アプリケーション画面定義情報を利用して、ログイン成功画面とログイン失敗画面のどちらが表示されているかを判別する。
【００６８】
業務アプリケーションログイン成功画面が表示されていると判別された場合、業務システムパスワード履歴処理部１５０は、業務システムパスワード履歴情報を業務システムパスワード履歴情報データベース１６０に暗号化して保存する。
【００６９】
図５は、業務システムパスワード履歴情報データベース１６０に格納されている業務システムパスワード履歴情報の例を示す説明図である。図５に示すように、業務システムパスワード履歴情報は、利用者IDと、業務アプリケーションIDと、業務アカウントIDと、処理種別と、業務アカウントパスワードと、処理日時とで構成されている。
【００７０】
利用者ID、業務アプリケーションID、業務アカウントID、および業務アカウントパスワードは、それぞれ業務アプリケーションアカウント情報の利用者ID、業務アプリケーションID、業務アカウントID、および業務アカウントパスワードである。
【００７１】
また、処理種別は、ログイン代行の結果の種別であり、認証成功、またはパスワード変更のいずれかを示す。また、処理日時は、ログイン代行が実行された日時を示す情報である。
【００７２】
業務システムパスワード履歴情報データベース１６０に利用者IDが同一、業務アプリケーションIDが同一、処理種別が同一の業務システムパスワード履歴情報が既に格納されている場合、業務システムパスワード履歴処理部１５０は、格納されている情報を更新する。
【００７３】
なお上述したように、本実施形態のログイン代行システム１０には、複数のクライアント端末が含まれている。よって、利用者IDが同一である業務システムパスワード履歴情報も、複数のログイン代行サーバに分散されて保持されている。
【００７４】
業務アプリケーションログイン失敗画面が表示されていると判別された場合、業務システムパスワード履歴処理部１５０は、ログイン代行情報データベース２１０に格納されている、ログイン代行に使用された情報を含む業務アプリケーションアカウント情報を参照する。
【００７５】
参照された業務アプリケーションアカウント情報の復旧状態が「２（復旧直後）」である場合、業務システムパスワード履歴処理部１５０は、認証情報復旧処理部２２０にログイン代行失敗情報を送信する。送信されるログイン代行失敗情報には、ログイン代行に失敗した際の利用者ID、業務アプリケーションID、業務アカウントID、およびログイン失敗の結果を示す情報が含まれる。
【００７６】
ログイン代行失敗情報を受信した場合、認証情報復旧処理部２２０は、クライアント端末３００１〜クライアント端末３００Ｍに対して稼働する各業務システムパスワード履歴処理部１５０に、受信されたログイン代行失敗情報を送信する。
【００７７】
ログイン代行失敗情報を受信した業務システムパスワード履歴処理部１５０は、業務システムパスワード履歴情報データベース１６０に、受信されたログイン代行失敗情報に含まれる利用者ID、業務アプリケーションID、および業務アカウントIDを含む業務システムパスワード履歴情報が格納されているか否かを確認する。
【００７８】
該当する業務システムパスワード履歴情報の存在が確認された場合、業務システムパスワード履歴処理部１５０は、確認された業務システムパスワード履歴情報を認証情報復旧処理部２２０に送信する。
【００７９】
認証情報復旧処理部２２０は、各業務システムパスワード履歴処理部１５０から業務システムパスワード履歴情報を収集する。次いで、認証情報復旧処理部２２０は、収集された情報のうち処理日時が最新の業務システムパスワード履歴情報に基づいて、ログイン代行情報データベース２１０に格納されている業務アプリケーションアカウント情報を更新する。更新する際、認証情報復旧処理部２２０は、業務アプリケーションアカウント情報の復旧状態を「１（復旧試行済）」に更新する。
【００８０】
次いで、認証情報復旧処理部２２０は、最初にログイン代行失敗情報を送信した業務システムパスワード履歴処理部１５０に対してログイン代行再試行指示を通知する。認証情報復旧処理部２２０からログイン代行再試行指示が通知された後、業務システムパスワード履歴処理部１５０は、入力代行部１３０に対してログイン代行の再試行を指示する。
【００８１】
入力代行部１３０は、ログイン代行情報データベース２１０に格納されている、ログイン代行再試行指示に対応する業務アプリケーションアカウント情報の業務アカウントIDおよび業務アカウントパスワードを取得する。次いで、入力代行部１３０は、取得された情報を用いて再度業務アプリケーションログイン画面への入力を代行する。
【００８２】
ログイン代行が成功した場合、ログイン後画面検知部１４０は、ログイン代行の成功を示す情報を業務システムパスワード履歴処理部１５０に入力する。次いで、業務システムパスワード履歴処理部１５０は、認証情報復旧処理部２２０にログイン代行の成功を示す情報を送信する。
【００８３】
ログイン代行の成功を示す情報を受信した後、認証情報復旧処理部２２０は、ログイン代行情報データベース２１０に格納されている情報のうち、該当する利用者ID、業務アプリケーションID、および業務アカウントIDを含む業務アプリケーションアカウント情報の復旧状態を「０（復旧済）」に変更する。
【００８４】
なお、本実施形態における同期処理のトリガは、クライアント端末３００でのログイン代行処理の実行である。しかし、管理サーバ２００がバックアップされたデータを用いて復旧処理を行った後、全てのログイン代行サーバ１００１〜ログイン代行サーバ１００Ｎに対してログイン代行失敗情報に準ずる情報を送信し、送信への応答として業務パスワードシステム履歴情報を受信した後にパスワードの同期処理を実行してもよい。
【００８５】
［動作の説明］
以下、本実施形態のログイン代行システム１０においてログインが代行される動作を図６を参照して説明する。図６は、第１の実施形態のログイン代行システム１０によるログイン代行処理の動作を示すフローチャートである。
【００８６】
最初に、利用者は、クライアント端末３００においてログイン代行サーバログイン画面を表示し、ログイン代行サーバ１００１へのログインを要求する（ステップS110）。クライアント端末３００は、ログイン処理部１１０にログイン要求を入力する。
【００８７】
次いで、ログイン処理部１１０は、ログイン代行情報データベース２１０に格納されている利用者アカウント情報を参照して、ログインを要求した利用者のログイン代行サーバ１００へのログインを許可するか否かを判定する（ステップS120）。ログインが拒否された場合（ステップS130におけるNo）、ログイン代行システム１０は、ログイン代行処理を終了する。
【００８８】
ログインが許可された場合（ステップS130におけるYes）、利用者は、クライアント端末３００において業務アプリケーションログイン画面を表示する（ステップS140）。
【００８９】
次いで、ログイン画面検知部１２０は、画面が表示されたことを検知し、ログイン代行情報データベース２１０に格納されている業務アプリケーション画面定義情報を参照して表示されている業務アプリケーション画面を特定する（ステップS150）。ログイン画面検知部１２０は、特定された業務アプリケーションログイン画面に関する業務アプリケーションIDを入力代行部１３０に入力する。
【００９０】
次いで、入力代行部１３０は、利用者IDと、入力された業務アプリケーションIDを用いて、ログイン代行情報データベース２１０に格納されている業務アプリケーションアカウント情報の業務アカウントIDおよび業務アカウントパスワードを取得する（ステップS160）。
【００９１】
次いで、入力代行部１３０は、取得された情報の業務アプリケーションログイン画面への入力を代行する（ステップS170）。ログイン後画面検知部１４０は、入力が代行された後に画面が遷移したことを検知し、ログイン代行情報データベース２１０に格納されている業務アプリケーション画面定義情報を参照して表示されている業務アプリケーション画面を特定する（ステップS180）。
【００９２】
業務アプリケーションログイン成功画面が表示されていると特定された場合（ステップS190におけるYes）、業務システムパスワード履歴処理部１５０は、業務システムパスワード履歴情報を業務システムパスワード履歴情報データベース１６０に保存する（ステップS200）。保存した後、ログイン代行システム１０は、ログイン代行処理を終了する。
【００９３】
業務アプリケーションログイン失敗画面が表示されていると特定された場合（ステップS190におけるNo）、業務システムパスワード履歴処理部１５０は、パスワード同期処理を実行する（ステップS210）。パスワード同期処理を実行した後、ログイン代行システム１０は、ログイン代行処理を終了する。
【００９４】
次に、図６に示すログイン代行処理を構成する副処理であるステップS210のパスワード同期処理を図７を参照して説明する。図７は、第１の実施形態のログイン代行システム１０によるパスワード同期処理の動作を示すフローチャートである。
【００９５】
業務システムパスワード履歴処理部１５０は、ログイン代行情報データベース２１０に格納されている業務アプリケーションアカウント情報に基づいて、認証情報復旧処理部２２０にログイン代行失敗情報を送信する（ステップS211）。
【００９６】
次いで、認証情報復旧処理部２２０は、他のログイン代行サーバ１００２〜ログイン代行サーバ１００Ｎの各業務システムパスワード履歴処理部１５０に、受信されたログイン代行失敗情報を送信する（ステップS212）。
【００９７】
次いで、各業務システムパスワード履歴処理部１５０は、業務システムパスワード履歴情報データベース１６０に格納されている、受信されたログイン代行失敗情報に対応する業務システムパスワード履歴情報を認証情報復旧処理部２２０に送信する（ステップS213）。
【００９８】
次いで、認証情報復旧処理部２２０は、送信された情報のうち処理日時が最新の業務システムパスワード履歴情報に基づいて、ログイン代行情報データベース２１０に格納されている業務アプリケーションアカウント情報を更新する（ステップS214）。
【００９９】
次いで、認証情報復旧処理部２２０は、ログイン代行サーバ１００１の業務システムパスワード履歴処理部１５０に対してログイン代行再試行指示を通知する（ステップS215）。ログイン代行再試行指示が通知された業務システムパスワード履歴処理部１５０は、入力代行部１３０に対してログイン代行の再試行を指示する。
【０１００】
次いで、入力代行部１３０は、ログイン代行情報データベース２１０に格納されている、ログイン代行再試行指示に対応する業務アプリケーションアカウント情報の業務アカウントIDおよび業務アカウントパスワードを取得する（ステップS216）。
【０１０１】
次いで、入力代行部１３０は、取得された情報の業務アプリケーションログイン画面への入力を代行する（ステップS217）。ログイン後画面検知部１４０は、入力が代行された後に画面が遷移したことを検知し、ログイン代行情報データベース２１０に格納されている業務アプリケーション画面定義情報を参照して表示されている業務アプリケーション画面を特定する（ステップS218）。
【０１０２】
業務アプリケーションログイン失敗画面が表示されていると特定された場合（ステップS219におけるNo）、業務システムパスワード履歴処理部１５０は、再度ステップS211の処理を行う。
【０１０３】
業務アプリケーションログイン成功画面が表示されていると特定された場合（ステップS219におけるYes）、ログイン後画面検知部１４０は、ログイン代行の成功を示す情報を業務システムパスワード履歴処理部１５０に入力する。
【０１０４】
次いで、業務システムパスワード履歴処理部１５０は、業務システムパスワード履歴情報を業務システムパスワード履歴情報データベース１６０に保存する（ステップS220）。次いで、業務システムパスワード履歴処理部１５０は、認証情報復旧処理部２２０にログイン代行の成功を示す情報を送信する（ステップS221）。
【０１０５】
次いで、認証情報復旧処理部２２０は、ログイン代行情報データベース２１０に格納されている該当する業務アプリケーションアカウント情報の復旧状態を「０（復旧済）」に変更する（ステップS222）。変更した後、ログイン代行システム１０は、パスワード同期処理を終了する。
【０１０６】
［効果の説明］
本実施形態のログイン代行システム１０の利用者が業務アプリケーションを起動した後、ログイン代行サーバ１００は、業務アプリケーションへのログインを代行する。ログインの代行が失敗した場合、管理サーバ２００で管理されている利用者の業務アプリケーションのアカウント情報が復旧直後の状態であれば、業務システムパスワード履歴処理部１５０は、ログインに失敗した業務アプリケーションを示す情報を含むログイン代行失敗情報を管理サーバ２００に送信する。
【０１０７】
ログイン代行失敗情報を受信した場合、管理サーバ２００は、各ログイン代行サーバに対して利用者の業務システムパスワード履歴情報の送信を要求する。業務システムパスワード履歴情報の送信要求を受信した各ログイン代行サーバは、利用者の業務システムパスワード履歴情報を保持している場合、保持している情報を管理サーバ２００に送信する。
【０１０８】
管理サーバ２００は、各ログイン代行サーバから収集された情報のうち、最新の業務システムパスワード履歴情報の内容をログイン代行情報データベース２１０に格納することによって、不整合を解消する。
【０１０９】
さらに、管理サーバ２００は、ログイン代行失敗情報を送信した業務システムパスワード履歴処理部１５０に対して、復旧試行の完了を通知する。一部がクライアント端末３００で稼働するログイン代行失敗情報を送信したログイン代行サーバ１００は、業務アプリケーションへのログイン代行を再度試みる。
【０１１０】
本実施形態のログイン代行サーバ１００１〜ログイン代行サーバ１００Ｎは、ログイン代行対象の業務アプリケーションに対するパスワード変更時およびログイン代行成功時の時刻および業務アカウントパスワードを含む業務システムパスワード履歴情報を、暗号化して所定期間保持する。
【０１１１】
また、本実施形態の管理サーバ２００は、バックアップされたデータを用いて復旧を行った際にパスワードが過去に使用されたパスワードに戻った場合、適切なタイミングで各ログイン代行サーバに保持されている業務システムパスワード履歴情報を収集してパスワードの同期を試みる。
【０１１２】
ログイン代行方式のシングルサインオンシステム（ログイン代行システム１０）に含まれる管理サーバ２００側で障害が発生した際、管理サーバ２００は、バックアップデータを用いて復旧を行う。復旧が行われた後、ログイン代行に使用されるパスワードが過去に使用されたパスワードに戻ってしまっても、上記の構成の管理サーバ２００は、パスワードの再同期を実行できる。
【０１１３】
パスワードの再同期は利用者側の操作を契機に自動的に行われるため、管理者は、パスワードの再同期のために対応を行わなくてもよい。
【０１１４】
また、各ログイン代行サーバが業務システムパスワード履歴情報を管理し、自動でパスワードを同期する。よって、本実施形態のログイン代行システム１０は、利用者が業務アカウントパスワードを覚えていない場合や、業務アカウントパスワードが利用者に通知されない運用が行われている場合にも対応できる。
【０１１５】
また、本実施形態では、ログイン代行サーバ１００側のパスワードが復旧されることによってパスワードが同期される。よって、本実施形態のログイン代行システム１０は、業務アプリケーション側にパスワードを出力するインタフェースが設けられていない場合にも対応できる。
【０１１６】
また、本実施形態では、ログイン代行サーバ１００が業務システムパスワード履歴情報を保持する。よって、本実施形態のログイン代行システム１０は、業務アプリケーション側で暗号化されたパスワードが保持されている場合にも対応できる。
【０１１７】
本発明は、クライアント端末にエージェントソフトウェアが導入されるログイン代行システムだけでなく、クライアント端末と業務アプリケーションサーバとの間に配置されるリバースプロキシが業務アプリケーションへのログインを代行するログイン代行システムにも好適に適用される。
【０１１８】
リバースプロキシは、業務アプリケーションサーバとクライアント端末との間で行われる通信を中継する。通信を中継する際、リバースプロキシは、通信の内容を確認することによって業務アプリケーションの画面を検知し、本実施形態のログイン代行処理と同様の処理を行う。
【０１１９】
なお、本実施形態のログイン代行サーバ１００１〜ログイン代行サーバ１００Ｎ、管理サーバ２００は、例えば、非一時的な記憶媒体に格納されているプログラムに従って処理を実行するCPU(Central Processing Unit)によって実現されてもよい。すなわち、ログイン処理部１１０、ログイン画面検知部１２０、入力代行部１３０、ログイン後画面検知部１４０、業務システムパスワード履歴処理部１５０、および認証情報復旧処理部２２０は、例えば、プログラム制御に従って処理を実行するCPUによって実現されてもよい。
【０１２０】
また、業務システムパスワード履歴情報データベース１６０、およびログイン代行情報データベース２１０は、例えばRAM(Random Access Memory) で実現されてもよい。
【０１２１】
また、本実施形態のログイン代行サーバ１００１〜ログイン代行サーバ１００Ｎ、管理サーバ２００は、ハードウェア回路によって実現されてもよい。一例として、ログイン処理部１１０、ログイン画面検知部１２０、入力代行部１３０、ログイン後画面検知部１４０、業務システムパスワード履歴処理部１５０、業務システムパスワード履歴情報データベース１６０、ログイン代行情報データベース２１０、および認証情報復旧処理部２２０が、それぞれLSI(Large Scale Integration)で実現される。また、それらが１つのLSIで実現されていてもよい。
【０１２２】
次に、本発明の概要を説明する。図８は、本発明によるログイン代行システムの概要を示すブロック図である。本発明によるログイン代行システム５０は、管理サーバ６０（例えば、管理サーバ２００）と、ログイン代行サーバ７０１〜ログイン代行サーバ７０Ｋ（例えば、ログイン代行サーバ１００１〜ログイン代行サーバ１００Ｎ、Ｋは２以上の自然数）とを含むログイン代行システムであって、ログイン代行サーバ７０１〜ログイン代行サーバ７０Ｋは、ログインで求められる情報であるログイン情報（例えば、業務アプリケーションアカウント情報）を用いてログインを代行する代行部７１（例えば、入力代行部１３０）と、代行部７１によるログインの代行結果を示す情報である代行結果情報（例えば、業務システムパスワード履歴情報）を記憶する第１記憶部７２（例えば、業務システムパスワード履歴情報データベース１６０）とを有し、管理サーバ６０は、ログイン情報を記憶する第２記憶部６１（例えば、ログイン代行情報データベース２１０）と、ログインの代行が失敗した代行部７１を有するログイン代行サーバ７０１以外のログイン代行サーバ７０２〜ログイン代行サーバ７０Ｋが有する第１記憶部７２から代行結果情報を取得する取得部６２（例えば、認証情報復旧処理部２２０）と、取得された代行結果情報のうち所定の条件を満たす代行結果情報の内容を第２記憶部６１に記憶されている失敗したログインの代行で用いられたログイン情報に反映する反映部６３（例えば、認証情報復旧処理部２２０）とを有する。
【０１２３】
そのような構成により、ログイン代行システムは、アプリケーションへのログインの代行で使用される情報をアプリケーションシステムと同期できる。
【０１２４】
また、取得部６２は、ログインの代行が失敗した代行部７１に所定の条件を満たす代行結果情報の内容が反映されたログイン情報を用いてログインを代行することを指示する情報である指示情報を入力してもよい。
【０１２５】
そのような構成により、ログイン代行システムは、同期された後の情報を用いて再度ログインを代行できる。
【０１２６】
また、代行部７１は、入力された指示情報に基づいてログインを代行し、ログインの代行が成功したことを示す情報である成功情報を取得部６２に入力してもよい。
【０１２７】
そのような構成により、ログイン代行システムは、同期された後の情報が用いられたログインの代行結果を把握できる。
【０１２８】
また、反映部６３は、取得部６２に入力された成功情報に基づいて所定の条件を満たす代行結果情報の内容が反映されたログイン情報に含まれている試行状態であることを示す情報を削除してもよい。
【０１２９】
そのような構成により、ログイン代行システムは、ログインの代行で使用される情報の状態を管理できる。
【０１３０】
また、所定の条件は、最新のログインの代行結果を示す情報であることでもよい。また、所定の条件は、同一の利用者からのログインの要求に対するログインの代行結果を示す情報であることでもよい。
【０１３１】
そのような構成により、ログイン代行システムは、より確実にログインの代行で使用される情報をアプリケーションシステムと同期できる。
【０１３２】
本発明は、統合ID管理、アクセス管理、およびシングルサインオンの各技術分野で好適に利用される。
【符号の説明】
【０１３３】
１０、５０  ログイン代行システム
６１  第２記憶部
６２  取得部
６３  反映部
７０１〜７０Ｋ、１００、１００１〜１００Ｎ  ログイン代行サーバ
７１  代行部
７２  第１記憶部
１１０  ログイン処理部
１２０  ログイン画面検知部
１３０  入力代行部
１４０  ログイン後画面検知部
１５０  業務システムパスワード履歴処理部
１６０  業務システムパスワード履歴情報データベース
２００、６０  管理サーバ
２１０  ログイン代行情報データベース
２２０  認証情報復旧処理部
３００、３００１〜３００Ｍ  クライアント端末
４００  業務アプリケーションサーバ
【図１】
2019168956.tif 000003
【図２】
2019168956.tif 000004
【図３】
2019168956.tif 000005
【図４】
2019168956.tif 000006
【図５】
2019168956.tif 000007
【図６】
2019168956.tif 000008
【図７】
2019168956.tif 000009
【図８】
2019168956.tif 000010