(57)【要約】【課題】代行ログインシステムとアプリケーション間でアカウント情報に不一致が生じても、アカウント情報を簡易に効率良く補正できる技術を提供する。【解決手段】情報処理装置１００は、業務アプリケーション１４毎にアカウント情報とアカウント情報変更の履歴情報をアカウント履歴情報記憶部２８に記憶するアカウント情報記録部１０２と、アカウント履歴情報記憶部２８のアカウント情報を用いて業務アプリケーション１４に代行ログインを行う代行ログイン処理部１０４と、代行ログインが行われると業務アプリケーション１４が表示する画面の画面情報を取得し、画面情報記憶部２４のログイン失敗画面の画面情報との照合によりログイン失敗画面が検知されるとログイン失敗を判定する判定部１０６と、ログイン失敗と判定されると、代行ログイン処理部１０４に履歴情報の以前のアカウント情報を用いて再度代行ログインを行わせる制御部１０８とを備える。【選択図】図２
2018169840.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーション毎にユーザ識別情報およびパスワードを含むアカウント情報を記憶部に記憶するとともに、前記アカウント情報の変更が行われた場合にその履歴情報を前記記憶部に記憶するアカウント情報記録手段と、
前記記憶部に記憶されている前記アカウント情報を用いて前記アプリケーションに代行ログインを行う代行ログイン処理手段と、
前記代行ログインが行われると、前記アプリケーションが表示する画面の画面情報を取得し、予め記憶している前記アプリケーションのログイン失敗画面の画面情報と照合することにより、前記ログイン失敗画面が検知されると前記アプリケーションの前記代行ログインに失敗したと判定する判定手段と、
前記代行ログインに失敗したと判定された場合、前記代行ログイン処理手段に前記記憶部の前記履歴情報に記憶されている前記アプリケーションの以前の前記アカウント情報を用いて再度前記代行ログインを行わせる制御手段と、
を備える情報処理装置。
【請求項２】
請求項１に記載の情報処理装置において、
前記アカウント情報記録手段は、正規の前記アカウント情報とは別に代替のユーザ識別情報とパスワードを含む第２のアカウント情報を前記記憶部にさらに記憶し、
前記記憶部の前記第２のアカウント情報の前記パスワードを定期的に変更して、変更前の前記第２のアカウント情報を変更時刻とともに前記履歴情報として記憶する変更手段と、
前記以前のアカウント情報を用いた前記代行ログインに失敗した場合、前記記憶部に記憶される歴代の前記第２のアカウント情報を前記変更時刻が新しい順に用いて代行ログインを実行し、前記代行ログインに成功した前記第２のアカウント情報の前記変更時刻を取得する取得手段と、をさらに備え、
前記制御手段は、前記代行ログインに失敗した前記アカウント情報の前記変更時刻より以前の利用者の前記アカウント情報を前記履歴情報から取得し、前記代行ログイン処理手段に再度代行ログインを行わせる、情報処理装置。
【請求項３】
請求項１または２に記載の情報処理装置において、
前記制御手段により行われた前記代行ログインに成功した場合、当該代行ログインに成功した際のアカウント情報で前記記憶部の情報を更新する更新手段をさらに備える、情報処理装置。
【請求項４】
請求項１から３いずれか一項に記載の情報処理装置において、
前記判定手段は、さらに、前記アプリケーションが表示する画面の画面情報を取得し、予め記憶しているログイン成功画面の画面情報と照合することにより、前記ログイン成功画面が検知されると前記代行ログインが成功したと判定する、情報処理装置。
【請求項５】
請求項１から４いずれか一項に記載の情報処理装置において、
前記アプリケーションは、業務アプリケーションであり、当該業務アプリケーションの利用時に少なくとも１回、アカウント情報の入力が利用者に要求される、情報処理装置。
【請求項６】
請求項１から５いずれか一項に記載の情報処理装置の機能が実現されるクライアント端末と、
代行ログインシステムサーバ装置と、を備え、
前記クライアント端末、および前記代行ログインシステムサーバ装置は、互いにネットワークで接続され、
前記クライアント端末は、前記ネットワークを介してアプリケーションにログインすることで当該アプリケーションの実行が可能となり、
前記情報処理装置の代行ログイン処理手段は、前記代行ログインシステムサーバ装置の記憶装置が記憶する前記アプリケーションへのログイン用のアカウント情報を用いて前記アプリケーションに代行ログインを行う、情報処理システム。
【請求項７】
記憶装置を有する情報処理装置が、
アプリケーション毎にユーザ識別情報およびパスワードを含むアカウント情報を前記記憶装置に記憶するとともに、前記アカウント情報の変更が行われた場合にその履歴情報を前記記憶装置に記憶し、
前記記憶装置に記憶されている前記アカウント情報を用いて前記アプリケーションに代行ログインを行い、
前記代行ログインが行われると、前記アプリケーションが表示する画面の画面情報を取得し、予め記憶している前記アプリケーションのログイン失敗画面の画面情報と照合することにより、前記ログイン失敗画面が検知されると前記アプリケーションの前記代行ログインに失敗したと判定し、
前記代行ログインに失敗したと判定された場合、前記記憶装置の前記履歴情報に記憶されている前記アプリケーションの以前の前記アカウント情報を用いて再度前記代行ログインを行う、情報処理方法。
【請求項８】
請求項７に記載の情報処理方法において、
前記情報処理装置が、
正規の前記アカウント情報とは別に代替のユーザ識別情報とパスワードを含む第２のアカウント情報を前記記憶装置にさらに記憶し、
前記記憶装置の前記第２のアカウント情報の前記パスワードを定期的に変更して、変更前の前記第２のアカウント情報を変更時刻とともに前記履歴情報として記憶し、
前記以前のアカウント情報を用いた前記代行ログインに失敗した場合、前記記憶装置に記憶される歴代の前記第２のアカウント情報を前記変更時刻が新しい順に用いて代行ログインを実行し、前記代行ログインに成功した前記第２のアカウント情報の前記変更時刻を取得し、
前記代行ログインに失敗した前記アカウント情報の前記変更時刻より以前の利用者の前記アカウント情報を前記履歴情報から取得し、再度代行ログインを行う、ことをさらに含む、情報処理方法。
【請求項９】
請求項７または８に記載の情報処理方法において、
前記情報処理装置が、さらに、
前記代行ログインに成功した場合、当該代行ログインに成功した際のアカウント情報で前記記憶装置の情報を更新する、情報処理方法。
【請求項１０】
情報処理装置を実現するコンピュータは、記憶装置を有し、
コンピュータに、
アプリケーション毎にユーザ識別情報およびパスワードを含むアカウント情報を前記記憶装置に記憶するとともに、前記アカウント情報の変更が行われた場合にその履歴情報を前記記憶装置に記憶する手順、
前記アカウント情報の変更が行われた場合にその履歴情報を前記記憶装置に記憶する手順、
前記記憶装置に記憶されている前記アカウント情報を用いて前記アプリケーションに代行ログインを行う手順、
前記代行ログインが行われると、前記アプリケーションが表示する画面の画面情報を取得し、予め記憶しているログイン失敗画面の画面情報と照合することにより、前記ログイン失敗画面が検知されると前記アプリケーションの前記代行ログインに失敗したと判定する手順、
前記代行ログインに失敗したと判定された場合、前記記憶装置の前記履歴情報に記憶されている前記アプリケーションの以前の前記アカウント情報を用いて再度前記代行ログインを行う手順、を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理システム、情報処理方法、およびプログラムに関し、特に、ログイン処理を行う情報処理装置、情報処理システム、情報処理方法、およびプログラムに関する。
【背景技術】
【０００２】
一度の認証により、複数の業務アプリケーションに対してログインおよびアクセス可能とするシングルサインオン（ＳＳＯ：Single Sign-On）技術が知られている。シングルサインオン技術には、大きく分けて以下の３つの方式がある。
【０００３】
１つ目は、各業務アプリケーションには認証機能を用意せず、すべての認証をシングルサインオンシステムで実施する方式である。
【０００４】
２つ目は、各業務アプリケーションが持っている認証機能に対して、シングルサインオンシステムがログインの代行を行う方式である。この方式には実現方法が複数ある。例えば、業務アプリケーションのログイン画面に対してＩＤ（IDentifier）およびパスワードの文字列を入力する方法や、業務アプリケーションサーバに対して認証ヘッダ（ＢＡＳＩＣ認証、統合Ｗｉｎｄｏｗｓ（登録商標）認証）やＰＯＳＴデータ（ＦＯＲＭ認証）を送信する方法などである。
【０００５】
３つ目は、シングルサインオンシステムで認証したという情報を各業務アプリケーションへ送信し、業務アプリケーション側でそれを信頼する方式である。これを実現する方法としては、ＳＡＭＬ（Security Assertion Markup Language）やＯｐｅｎＩＤといったプロトコルが知られている。
【０００６】
シングルサインオンシステムを導入しようとした場合、運用中の業務アプリケーションは既に個別に認証機能を持っていることが多い。この場合、上記１つ目の方式を取れないことがある。また、業務アプリケーションがＳＡＭＬやＯｐｅｎＩＤといったプロトコルに対応しておらず、上記３つ目の方式も取れないことがある。一方、上記２つ目の代行ログイン方式は、これらの場合でも対応することができるため、採用されることが多い。
【０００７】
代行ログイン方式では、代行ログインを行う装置は、業務アプリケーションに対してＩＤとパスワードを利用者に代わって入力する。代行ログイン方式のシングルサインオンシステム（以後、代行ログインシステムと呼ぶ）では、業務アプリケーションにログインするための業務アカウントＩＤとパスワードを管理する必要がある。そして、代行ログインシステムと業務アプリケーション間で、それらが同じ内容として同期されている必要がある。
【０００８】
代行ログインシステムは、業務アプリケーションのパスワード情報を利用者に知らせる運用形態をとることも、知らせない運用形態をとることも可能である。前者は、利用者はパスワードを知っているため、代行ログインシステムを介さずに直接業務アプリケーションへログインすることができる。後者は、利用者がパスワードを知らないため、代行ログインシステムを利用した場合にのみ業務アプリケーションへログインすることができる。
【０００９】
柔軟に業務アプリケーションを利用できるように前者の運用形態を取ることもあるし、ＩＴ統制を高めるために後者の運用形態を取ることもある。
【００１０】
パスワードを同期させる方法として、代行ログインシステムと業務アプリケーションの両サーバ間で、片方のサーバからパスワード情報を出力して他方のサーバへ取り込む方法が知られている。また、その他の方法として、クライアント側でパスワード変更画面を検知し、両サーバのパスワードを更新する方法が知られている（特許文献１）。
【００１１】
特許文献２には、通信端末装置がネットワークにログインする際に使用するパスワードをユーザが変更しようとするときは、ネットワークにログインしてネットワーク側に既に登録されているパスワードを新しいパスワードに変更するソフトウェアを実行することが記載されている。そして、新たなパスワードに変更した場合、旧パスワードが消去されずに保存され、また、変更後のパスワードでログインできないときは、変更前の旧パスワードでログインされる制御手段が記載されている。
【００１２】
特許文献３には、ユーザが変更したパスワードの履歴を管理し、ユーザに履歴情報を提供し、ユーザによりパスワードが変更されたときに更新履歴を情報保持部に追加するパスワード履歴システムが記載されている。
【先行技術文献】
【特許文献】
【００１３】
【特許文献１】特開２００２−１４９２６号公報
【特許文献２】特開平１１−１６７５４９号公報
【特許文献３】特開２００６−９９３５６号公報
【発明の概要】
【発明が解決しようとする課題】
【００１４】
しかし、上記文献記載の技術は、いずれも業務アプリケーション側で障害が発生した場合についての考慮がなされていない。業務アプリケーション側で何かしらの障害が発生し、バックアップされたデータで復旧を行ってパスワード情報が巻き戻った場合、代行ログインシステムと業務アプリケーション間で、パスワード情報の不一致が発生する。この場合にシングルサインオンを実行可能とするには、再度パスワード情報を同期する必要があるが、以下の課題がある。
【００１５】
代行ログインシステムから業務アプリケーションへパスワード情報を取り込む場合、そもそも業務アプリケーションに取り込むためのインタフェースが用意されていない場合がある。また、インタフェースが存在する場合でも、業務アプリケーション側でパスワードポリシが設定されており、パスワードポリシ不適合（同じパスワードの再使用等）により取り込めない場合がある。
【００１６】
さらに、業務アプリケーションから代行ログインシステムへパスワード情報を取り込む場合、業務アプリケーション側でパスワードを暗号化やハッシュ化した状態で保持しており、取り込めない場合がある。
【００１７】
また、クライアント側から代行ログインシステムと業務アプリケーションに対してパスワードを更新することも考えられる。しかし、そもそもパスワードが不一致の状態となっているため、業務アプリケーションにログインすることができない。従って、パスワード変更画面へアクセスすることもできないため、この方法を取ることはできない。
【００１８】
また、利用者自身が、過去のパスワードを代行ログインシステムへ登録し直す、もしくは業務システム側のパスワードを最新のものに変更する方法も考えられるが、利用者が過去のパスワードを覚えていなかったり、パスワードを利用者に知らせない運用を取っていたりすると対応できない。
【００１９】
また、代行ログインシステムのアカウント情報を、業務システムと同じバージョンのバックアップに巻き戻すことでも対応できない。なぜなら、代行ログインシステムと業務アプリケーション側のバックアップから巻き戻しのタイミングが同時ではなく、タイムラグがあるため、そのタイムラグの間に利用者によるパスワードの変更等が実施されるとパスワードの不一致が発生するからである。例えば、業務アプリケーション側のアカウント情報の巻き戻し前後でパスワードが変わっていない利用者であっても、業務アプリケーション側の巻き戻し後で、かつ、代行ログインシステム側がバックアップに巻き戻す前に、利用者がパスワード変更を実施していると、その変更後に、代行ログインシステム側がバックアップに巻き戻すことにより、変更前のパスワードに戻るため、代行ログインシステムと業務アプリケーションの間でパスワードの不一致が発生する。
【００２０】
本発明は上記事情に鑑みてなされたものであり、その目的とするところは、代行ログインシステムとアプリケーション間でアカウント情報に不一致が生じた場合に、簡易に効率良く補正できる情報処理装置、情報処理システム、情報処理方法、およびプログラムを提供することにある。
【課題を解決するための手段】
【００２１】
本発明の各側面では、上述した課題を解決するために、それぞれ以下の構成を採用する。
【００２２】
第一の側面は、情報処理装置に関する。
第一の側面に係る情報処理装置は、
アプリケーション毎にユーザ識別情報およびパスワードを含むアカウント情報を記憶部に記憶するとともに、前記アカウント情報の変更が行われた場合にその履歴情報を前記記憶部に記憶するアカウント情報記録手段と、
前記記憶部に記憶されている前記アカウント情報を用いて前記アプリケーションに代行ログインを行う代行ログイン処理手段と、
前記代行ログインが行われると、前記アプリケーションが表示する画面の画面情報を取得し、予め記憶している前記アプリケーションのログイン失敗画面の画面情報と照合することにより、前記ログイン失敗画面が検知されると前記アプリケーションの前記代行ログインに失敗したと判定する判定手段と、
前記代行ログインに失敗したと判定された場合、前記代行ログイン処理手段に前記記憶部の前記履歴情報に記憶されている前記アプリケーションの以前の前記アカウント情報を用いて再度前記代行ログインを行わせる制御手段と、を有する。
【００２３】
第二の側面は、少なくとも１つのコンピュータにより実行される情報処理方法に関する。
第二の側面に係る情報処理方法は、
情報処理装置が、
記憶装置を有する情報処理装置が、
アプリケーション毎にユーザ識別情報およびパスワードを含むアカウント情報を前記記憶装置に記憶するとともに、前記アカウント情報の変更が行われた場合にその履歴情報を前記記憶装置に記憶し、
前記記憶装置に記憶されている前記アカウント情報を用いて前記アプリケーションに代行ログインを行い、
前記代行ログインが行われると、前記アプリケーションが表示する画面の画面情報を取得し、予め記憶している前記アプリケーションのログイン失敗画面の画面情報と照合することにより、前記ログイン失敗画面が検知されると前記アプリケーションの前記代行ログインに失敗したと判定し、
前記代行ログインに失敗したと判定された場合、前記記憶装置の前記履歴情報に記憶されている前記アプリケーションの以前の前記アカウント情報を用いて再度前記代行ログインを行う、ことを含む。
【００２４】
第三の側面は、情報処理システムに関する。
第三の側面に係る情報処理システムは、
第一の側面の情報処理装置の機能が実現されるクライアント端末と、
代行ログインシステムサーバ装置と、を備え、
前記クライアント端末、および前記代行ログインシステムサーバ装置は、互いにネットワークで接続され、
前記クライアント端末は、前記ネットワークを介してアプリケーションにログインすることで当該アプリケーションの実行が可能となり、
前記情報処理装置の代行ログイン処理手段は、前記代行ログインシステムサーバ装置の記憶装置が記憶する前記アプリケーションへのログイン用のアカウント情報を用いて前記アプリケーションに代行ログインを行う。
【００２５】
なお、本発明の他の側面としては、上記第二の側面の方法を少なくとも１つのコンピュータに実行させるプログラムであってもよいし、このようなプログラムを記録したコンピュータが読み取り可能な記録媒体であってもよい。この記録媒体は、非一時的な有形の媒体を含む。
このコンピュータプログラムは、コンピュータにより実行されたとき、コンピュータに、情報処理装置上で、その情報処理方法を実施させるコンピュータプログラムコードを含む。
【００２６】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【００２７】
また、本発明の各種の構成要素は、必ずしも個々に独立した存在である必要はなく、複数の構成要素が一個の部材として形成されていること、一つの構成要素が複数の部材で形成されていること、ある構成要素が他の構成要素の一部であること、ある構成要素の一部と他の構成要素の一部とが重複していること、等でもよい。
【００２８】
また、本発明の方法およびコンピュータプログラムには複数の手順を順番に記載してあるが、その記載の順番は複数の手順を実行する順番を限定するものではない。このため、本発明の方法およびコンピュータプログラムを実施するときには、その複数の手順の順番は内容的に支障のない範囲で変更することができる。
【００２９】
さらに、本発明の方法およびコンピュータプログラムの複数の手順は個々に相違するタイミングで実行されることに限定されない。このため、ある手順の実行中に他の手順が発生すること、ある手順の実行タイミングと他の手順の実行タイミングとの一部ないし全部が重複していること、等でもよい。
【発明の効果】
【００３０】
上記各側面によれば、代行ログインシステムとアプリケーション間でアカウント情報に不一致が生じた場合に、アカウント情報を簡易に効率良く補正できる情報処理装置、情報処理システム、情報処理方法、およびプログラムを提供することができる。
【図面の簡単な説明】
【００３１】
【図１】本発明の実施の形態に係る情報処理システムのシステム構成を概念的に示す図である。
【図２】本発明の実施の形態に係る情報処理装置の構成を論理的に示す機能ブロック図である。
【図３】本実施形態の代行ログインデータベースの画面情報記憶部のデータ構造の例を示す図である。
【図４】本実施形態の代行ログインデータベースのログイン情報記憶部のデータ構造の例を示す図である。
【図５】本実施形態の代行ログインデータベースのアカウント履歴情報記憶部のデータ構造の例を示す図である。
【図６】本実施形態の業務アプリケーションのログイン失敗画面の一例を示す図である。
【図７】本実施形態の業務アプリケーションのログイン画面の一例を示す図であめ。
【図８】本実施形態の業務アプリケーションのログイン成功画面の一例を示す図である。
【図９】本実施形態の情報処理装置を実現するコンピュータの構成の一例を示す図である。
【図１０】本実施形態の情報処理装置のアカウント情報の記憶処理の手順の一例を示すフローチャートである。
【図１１】本実施形態の情報処理装置の代行ログイン時の処理の手順の一例を示すフローチャートである。
【図１２】本実施の形態に係る情報処理装置の論理的な構成を示す機能ブロック図である。
【図１３】本実施形態の代行ログインデータベースのアカウント履歴情報記憶部に第２のアカウント情報が追加された例を示す図である。
【発明を実施するための形態】
【００３２】
以下、本発明の実施の形態について、図面を用いて説明する。尚、すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。
【００３３】
（第１の実施の形態）
図１は、本発明の実施の形態に係る情報処理システムのシステム構成を概念的に示す図である。以下の各図において、本発明の本質に関わらない部分の構成については省略してあり、図示されていない。本実施形態は、業務アプリケーションのログイン画面にＩＤとパスワードを含むアカウント情報を代行入力することでシングルサインオンを実現するシステム（以下、代行ログインシステム１２と呼ぶ）において、代行ログインシステムサーバ２０と各業務アプリケーション間のアカウント情報に不一致が生じた場合に、アカウント情報を簡易に効率良く補正できる技術を提供する。
【００３４】
情報処理システム１は、代行ログインシステムサーバ２０と、業務アプリケーションサーバ３０と、少なくとも１つのクライアント端末１０と、を備える。代行ログインシステムサーバ２０、業務アプリケーションサーバ３０、およびクライアント端末１０は、互いにネットワーク３を介して接続される。ネットワーク３は、例えば、インターネット、イントラネット等の通信網である。通信方法は特に限定されず、無線、有線、およびそれらの組み合わせでもよい。
【００３５】
業務アプリケーションサーバ３０は、少なくとも１つの業務アプリケーション１４（図中、業務アプリＡ、業務アプリＢ、・・・と示す）をクライアント端末１０上で実行可能に提供する。業務アプリケーションサーバ３０は、クライアント端末１０に業務アプリケーション１４の画面を表示させるための情報を送信する。
【００３６】
クライアント端末１０は、例えば、パーソナルコンピュータ、スマートフォン、タブレット端末等である。代行ログインシステム１２は、例えば、エージェントソフトウェアとして、クライアント端末１０にインストールされ、クライアント端末１０上で動作し、図２の本実施形態の情報処理装置の各ユニットの各機能を実現することができる。
【００３７】
あるいは、クライアント端末１０（代行ログインシステム１２）と代行ログインシステムサーバ２０が協働して情報処理装置を実現してもよい。つまり、代行ログインシステムサーバ２０が、情報処理装置の少なくとも一部のユニットの機能を含んでもよい。
【００３８】
業務アプリケーション１４がＷｅｂ型アプリケーションの場合は、業務アプリケーション１４の画面が、Ｗｅｂブラウザを用いてクライアント端末１０の表示部に表示される。業務アプリケーション１４が、クライアント／サーバ型アプリケーションの場合は、業務アプリケーション１４の画面が、アプリケーション独自のユーザインタフェースを用いてクライアント端末１０の表示部に表示される。業務アプリケーション１４は、クライアント端末１０による利用時に少なくとも１回、アカウント情報の入力が利用者に要求される。
【００３９】
代行ログインシステムサーバ２０は、代行ログインデータベース（ＤＢ：DataBase）２２にアクセス可能に接続される。代行ログインシステムサーバ２０は、クライアント端末１０（代行ログインシステム１２）からの業務アプリケーションサーバ３０へのログイン要求に従い、業務アプリケーション１４への代行ログイン処理を行う。
【００４０】
代行ログインシステム１２にログインした後は、代行ログインシステム１２が代行して各業務アプリケーション１４へのログインを行うので、利用者は業務アプリケーション１４を利用する度にログイン手続きを行う必要がない。
【００４１】
本発明の代行ログインシステム１２が採用する代行ログイン方式は、業務アプリケーション１４を利用する利用者が行うログイン操作の代わりに、システムが業務アプリケーション１４により表示されるログイン画面を検知して、アカウント情報の入力を代行して行うことで、シングルサインオンを実現する。
【００４２】
図２は、本発明の実施の形態に係る情報処理装置１００の構成を論理的に示す機能ブロック図である。情報処理装置１００は、アカウント情報記録部１０２と、代行ログイン処理部１０４と、判定部１０６と、制御部１０８と、更新部１２０と、を備える。
【００４３】
上記したように、情報処理装置１００は、代行ログインシステム１２がクライアント端末１０上で動作することにより実現される。
【００４４】
情報処理装置１００は、代行ログインシステムサーバ２０の代行ログインデータベース２２にアクセス可能に接続される。代行ログインデータベース２２は、画面情報記憶部（図中、「画像情報」と示す）２４と、ログイン情報記憶部（図中、「ログイン情報」と示す）２６と、アカウント履歴情報（図中、「アカウント履歴情報」と示す）記憶部２８とを含む。
【００４５】
図３〜図５は、本実施形態の代行ログインデータベース２２の各記憶部のデータ構造の例を示す図である。図３の画面情報記憶部２４には、各業務アプリケーション１４の各画面の種別（例えば、ログイン画面、ログイン成功画面、およびログイン失敗画面）と、各画面の画面定義の情報が紐付けて記憶されている。画面定義の情報（画面情報とも呼ぶ）は、図３の例では、画面のタイトルと、プロセス名とが記憶されているが、これに限定されず、例えば、画面の属性情報、画面に含まれるオブジェクトの種類、数、配置、および各オブジェクトの属性情報等の定義情報を含んでもよい。
【００４６】
判定部１０６は、この画面情報記憶部２４の画面情報を用いて、クライアント端末１０に、どの業務アプリケーション１４のどの画面が表示されたかを検知する機能と、ある業務アプリケーション１４のある画面がクライアント端末１０に表示されたか否かを判定する機能と、を有する。したがって、画面情報記憶部２４に記憶される画面情報は、判定部１０６が所定の画面と他の画面を区別して所定の画面の検知を行うのに必要な情報を少なくとも含むのが好ましい。
【００４７】
図４のログイン情報記憶部２６には、代行ログインシステム１２の利用者毎の利用者ＩＤおよび利用者パスワードが紐付けて記憶されている。この利用者ＩＤと利用者パスワードは、本情報処理装置１００を実現する代行ログインシステム１２を利用する際に利用者がクライアント端末１０に入力するログイン情報である。利用者ＩＤは、例えば、任意に利用者が定める識別情報でもよいし、クライアント端末１０のＩＰアドレスでもよいし、情報処理システム１で利用者に割り当てられた識別情報であってもよい。
【００４８】
図５のアカウント履歴情報記憶部２８には、各利用者の業務アプリケーション１４毎の業務アカウント情報の更新履歴情報が記憶されている。代行ログインシステム１２が代行ログインを行う業務アプリケーション１４を利用する各利用者の業務アカウントＩＤおよび業務アカウントパスワードを含むアカウント情報は業務アプリケーション１４毎に異なる情報がアカウント履歴情報記憶部２８に記録される。
【００４９】
詳細には、各レコードに、利用者ＩＤと、業務アプリケーションＩＤと、その業務アプリケーション１４の業務アカウントＩＤと、業務アカウントパスワードと、その業務アカウント情報の更新日時と、当該レコードの業務アカウントが有効か否かを示す有効フラグとが紐付けて記憶されている。有効フラグは、そのレコードの業務アカウントが現在使用されている（有効）場合は、１（またはTrue等）にセットされ、現在使用されていない（無効）場合は、０（またはFalse等）にリセットされる。
【００５０】
この有効フラグの設定は、後述する更新部１２０により行われる。
【００５１】
図２に戻り、アカウント情報記録部１０２は、業務アプリケーション１４毎にＩＤおよびパスワードを含むアカウント情報をアカウント履歴情報記憶部２８に記憶するとともに、アカウント情報の変更が行われた場合にその履歴情報をアカウント履歴情報記憶部２８に記憶する。
【００５２】
つまり、業務アカウントパスワードの変更が行われた場合は、新しいアカウント情報を１レコード追加して記憶するとともに、古いアカウント情報のレコードも残して履歴情報として記憶する。なお、業務アカウントが削除された場合、削除された業務アカウントのアカウント情報のレコードは残し、有効フラグを０にリセットして履歴情報としてアカウント履歴情報記憶部２８に記憶する。業務アカウントが追加された場合は、新しい業務アカウントのアカウント情報を１レコード追加して有効フラグを１にセットしてアカウント履歴情報記憶部２８に記憶する。
【００５３】
代行ログイン処理部１０４は、アカウント履歴情報記憶部２８に記憶されているアカウント情報を用いて自動的に業務アプリケーション１４に代行ログインを行う。判定部１０６は、代行ログインが行われると、業務アプリケーション１４が表示する画面の画面情報を取得し、画面情報記憶部２４に予め記憶しているログイン失敗画面の画面情報と照合することにより、ログイン失敗画面が検知されると業務アプリケーション１４の代行ログインに失敗したと判定する。制御部１０８は、代行ログインに失敗したと判定された場合、代行ログイン処理部１０４にアカウント履歴情報記憶部２８の履歴情報に記憶されている業務アプリケーション１４の以前のアカウント情報を用いて再度代行ログインを行わせる。
【００５４】
本明細書において、「取得」とは、自装置が他の装置や記憶媒体に格納されているデータまたは情報を取りに行くこと（能動的な取得）、たとえば、他の装置にリクエストまたは問い合わせして受信すること、他の装置や記憶媒体にアクセスして読み出すこと等、および、自装置に他の装置から出力されるデータまたは情報を入力すること（受動的な取得）、たとえば、配信（または、送信、プッシュ通知等）されるデータまたは情報を受信すること等、の少なくともいずれか一方を含む。また、受信したデータまたは情報の中から選択して取得すること、または、配信されたデータまたは情報を選択して受信することも含む。
【００５５】
情報処理装置１００が表示する各種画面の画面情報は、代行ログインデータベース２２の画面情報記憶部２４に記憶される各画面の画面情報とは異なり、情報処理装置１００を実現する後述するコンピュータ８０のメモリ８４またはストレージ８５に記憶される。代行ログインデータベース２２の画面情報記憶部２４に記憶される画面情報は、業務アプリケーション１４により表示される画面の画面情報である。
【００５６】
代行ログインデータベース２２に記憶される画面情報記憶部２４への画面情報の登録処理は、管理者等によって行われる。図６は、本実施形態の業務アプリケーション１４のログイン失敗画面２３０の一例を示す図である。ログイン失敗画面２３０は、業務アプリケーション１４へのログイン失敗時に業務アプリケーション１４によりクライアント端末１０に表示される。
【００５７】
ログイン失敗画面２３０は、ウインドウタイトルバー２３２、ログインに失敗したことを通知するメッセージ表示欄２３４、および利用者がログイン失敗を了解した場合に押下するＯＫボタン２３６等のオブジェクトを含む。
【００５８】
図２に戻り、判定部１０６は、クライアント端末１０に表示される画面の画面情報を取得し、画面情報記憶部２４に予め記憶している各業務アプリケーション１４のログイン画面の画面情報と照合することにより、ログイン画面を検知する。判定部１０６は、検知されたログイン画面の業務アプリケーション１４を特定する。判定部１０６、利用者ＩＤと特定された業務アプリケーション１４のＩＤをキーとして、アカウント履歴情報記憶部２８から特定された業務アプリケーション１４のアカウント情報（ＩＤとパスワード）を取得し、代行ログイン処理部１０４に受け渡す。このとき、判定部１０６は、アカウント履歴情報記憶部２８から利用者ＩＤと業務アプリケーション１４のＩＤをキーとして取得した複数のレコードの中から、有効フラグが１にセットされているレコードを選択する。
【００５９】
図７は、本実施形態の業務アプリケーション１４のログイン画面２００の一例を示す図であめ。この例では、ログイン画面２００は、ウインドウタイトルバー２０２、ユーザＩＤの入力を受け付けるユーザＩＤ入力欄２０４、パスワードの入力を受け付けるパスワード入力欄２０６、ログイン指示を受け付けるＯＫボタン２０８、ログイン操作を取りやめるキャンセルボタン２０９等のオブジェクトを含む。上記したように、アカウント履歴情報記憶部２８の画面情報にどのような情報を含めるかは、業務アプリケーション１４が表示する画面の種類や数によって異なり、判定部１０６が少なくとも他の画面と区別可能な情報を含めばく、管理者により適宜定められてよい。
【００６０】
そして、代行ログイン処理部１０４は、判定部１０６から受け渡された業務アプリケーション１４のアカウント情報（ＩＤとパスワード）を、ログイン画面２００のユーザＩＤ入力欄２０４とパスワード入力欄２０６に代行入力することで、代行ログインシステムサーバ２０に代行ログイン処理を要求する。代行ログインシステムサーバ２０は、代行ログイン処理部１０４（クライアント端末１０）からの代行ログイン要求に従い、代行入力されたアカウント情報を用いて業務アプリケーション１４への代行ログイン処理を行う。
【００６１】
業務アプリケーション１４は、代行ログインシステムサーバ２０からの代行ログインの結果、ログインに成功すると、図８のログイン成功画面２５０をクライアント端末１０に表示する。この例では、ログイン成功画面２５０は、業務アプリケーション１４がログインに成功した後に表示される業務アプリケーション１４のトップ画面である。ログイン成功画面２５０は、ウインドウタイトルバー２５２、および複数のアイコン２５４等のオブジェクトを含む。
【００６２】
一方、代行ログインシステムサーバ２０からの代行ログインの結果、ログインに失敗すると、業務アプリケーション１４は、上記した図６のログイン失敗画面２３０をクライアント端末１０に表示する。
【００６３】
ログイン失敗画面２３０が業務アプリケーション１４により表示されると、判定部１０６は、業務アプリケーション１４の代行ログインに失敗したと判定する。そして、制御部１０８は、代行ログインに失敗したと判定された場合、代行ログイン処理部１０４にアカウント履歴情報記憶部２８の履歴情報に記憶されている業務アプリケーション１４の以前のアカウント情報を用いて再度代行ログインを行わせる。
【００６４】
このとき、制御部１０８は、アカウント履歴情報記憶部２８から利用者ＩＤと業務アプリケーション１４のＩＤをキーとして取得した複数のレコードのうち、有効フラグが０のレコードの中から、更新日時を元に代行ログインに失敗したレコードより１世代前のレコードを選択する。選択されたレコードからアカウント情報（少なくともパスワード）を取得し、代行ログイン処理部１０４に受け渡す。
【００６５】
代行ログイン処理部１０４は、制御部１０８から受け取ったアカウント情報を用いて再度代行ログインを試みる。その結果、また、ログイン失敗と判定された場合は、さらに、１世代前のレコードを選択して代行ログインを試みる。このようにして、１世代ずつ前のアカウント情報を用いて代行ログインを試みて、ログインに成功するまで繰り返す。
【００６６】
さらに、判定部１０６は、業務アプリケーション１４が表示する画面の画面情報を取得し、予め記憶しているログイン成功画面２５０の画面情報と照合することにより、ログイン成功画面２５０を検知し、ログイン成功画面２５０が検知されると代行ログインに成功したと判定する。そして、更新部１２０は、代行ログインに成功したと判定された場合、当該以前の業務アカウント情報でアカウント履歴情報記憶部２８の情報を更新する。
【００６７】
具体的には、判定部１０６は、業務アプリケーション１４により表示される画面の画面情報を取得し、画面情報記憶部２４に格納されている業務アプリケーション１４のログイン成功画面２５０の画面定義情報を用いて照合処理を行うことにより、ログイン成功画面２５０を検知する。そして、ログイン成功画面２５０が検知されると、判定部１０６は、代行ログインに成功したと判定する。そして、更新部１２０は、成功した代行ログインに利用した業務アカウントのアカウント履歴情報記憶部２８のレコードの有効フラグを１にセットする。また、当該利用者の、当該業務アプリケーション１４のその他のレコードの有効フラグは０にリセットする。
【００６８】
図９は、本実施形態の情報処理装置１００を実現するコンピュータ８０の構成の一例を示す図である。上記したように、情報処理装置１００は、クライアント端末１０を構成するコンピュータ８０上で動作するエージェントソフトウェア（代行ログインシステム１２）により実現される。代行ログインシステムサーバ２０、および業務アプリケーションサーバ３０もコンピュータ８０と同様な少なくとも１つのコンピュータによってそれぞれ実現される。
【００６９】
図２の本実施形態の情報処理装置１００の各構成要素は、図９のコンピュータ８０（クライアント端末１０）のハードウェアとソフトウェア（例えば、代行ログインシステム１２、ＯＳ（Operating System）等）の任意の組合せによって実現される。そして、その実現方法、装置にはいろいろな変形例があることは、当業者には理解されるところである。情報処理装置１００を示す機能ブロック図は、ハードウェア単位の構成ではなく、論理的な機能単位のブロックを示している。
【００７０】
コンピュータ８０は、ＣＰＵ（Central Processing Unit）８２、メモリ８４、メモリ８４にロードされた図２の構成要素を実現するプログラム９０（例えば、代行ログインシステム１２）、そのプログラム９０を格納するストレージ８５、Ｉ／Ｏ（Input/Output）８６、およびネットワーク接続用インタフェース（通信Ｉ／Ｆ８７）を備える。
【００７１】
ＣＰＵ８２、メモリ８４、ストレージ８５、Ｉ／Ｏ８６、通信Ｉ／Ｆ８７は、バス８９を介して互いに接続され、ＣＰＵ８２により情報処理装置１００全体が制御される。ただし、ＣＰＵ８２などを互いに接続する方法は、バス接続に限定されない。
【００７２】
メモリ８４は、ＲＡＭ（Random Access Memory）やＲＯＭ（Read Only Memory）などのメモリである。ストレージ８５は、ハードディスク、ＳＳＤ（Solid State Drive）、またはメモリカードなどの記憶装置である。
【００７３】
ストレージ８５は、ＲＡＭやＲＯＭなどのメモリであってもよい。ストレージ８５は、コンピュータ８０の内部に設けられてもよいし、コンピュータ８０がアクセス可能であれば、コンピュータ８０の外部に設けられ、コンピュータ８０と有線または無線で接続されてもよい。あるいは、コンピュータ８０に着脱可能に設けられてもよい。
【００７４】
ＣＰＵ８２が、ストレージ８５に記憶されるプログラム９０をメモリ８４に読み出して実行することにより、図２の情報処理装置１００の各ユニットの各機能を実現することができる。
【００７５】
Ｉ／Ｏ８６は、コンピュータ８０と他の入出力装置間のデータおよび制御信号の入出力制御を行う。他の入出力装置とは、たとえば、コンピュータ８０に接続されるキーボード、タッチパネル、マウス、およびマイクロフォン等の入力装置（不図示）と、ディスプレイ、プリンタ、およびスピーカ等の出力装置（不図示）と、これらの入出力装置とコンピュータ８０のインタフェースとを含む。さらに、Ｉ／Ｏ８６は、他の記録媒体の読み取りまたは書き込み装置（不図示）とのデータの入出力制御を行ってもよい。
【００７６】
通信Ｉ／Ｆ８７は、コンピュータ８０と外部の装置との通信を行うためのネットワーク接続用インタフェースである。通信Ｉ／Ｆ８７は、有線回線と接続するためのネットワークインタフェースでもよいし、無線回線と接続するためのネットワークインタフェースでもよい。たとえば、情報処理装置１００を実現するコンピュータ８０は、通信Ｉ／Ｆ８７によりネットワーク３を介して代行ログインシステムサーバ２０または業務アプリケーションサーバ３０等と接続される。
【００７７】
情報処理装置１００は、上記したように、図１のクライアント端末１０上で動作する代行ログインシステム１２により実現される。代行ログインシステム１２は、コンピュータ８０が実行するコンピュータプログラムであり、コンピュータ８０のＣＰＵ８２がメモリ８４にプログラム９０を読み出して実行することにより、情報処理装置１００の図２の各ユニットの各機能が実現される。
【００７８】
本実施形態のコンピュータプログラム９０は、情報処理装置１００を実現させるためのコンピュータ８０に、業務アプリケーション１４におけるユーザ識別情報およびパスワードを含むアカウント情報を紐付けて代行ログインデータベース２２に記憶する手順、アカウント情報の変更が行われた場合にその履歴情報を代行ログインデータベース２２に記憶する手順、代行ログインデータベース２２に記憶されているアカウント情報を用いて業務アプリケーション１４に代行ログインを行う手順、代行ログインが行われると、業務アプリケーション１４が表示する画面の画面情報を取得し、予め記憶している業務アプリケーション１４のログイン失敗画面２３０の画面情報と照合することにより、ログイン失敗画面２３０が検知されると代行ログインに失敗したと判定する手順、代行ログインに失敗したと判定された場合、代行ログインデータベース２２の履歴情報に記憶される業務アプリケーション１４の以前のアカウント情報を用いて再度代行ログインを行う手順、を実行させるように記述されている。
【００７９】
本実施形態のコンピュータプログラム９０は、コンピュータ８０で読み取り可能な記録媒体に記録されてもよい。記録媒体は特に限定されず、様々な形態のものが考えられる。また、プログラム９０は、記録媒体またはストレージ８５からコンピュータ８０のメモリ８４にロードされてもよいし、ネットワークを通じてコンピュータ８０にダウンロードされ、メモリ８４にロードされてもよい。
【００８０】
コンピュータプログラム９０を記録する記録媒体は、非一時的な有形のコンピュータ８０が使用可能な媒体を含み、その媒体に、コンピュータ８０が読み取り可能なプログラムコードが埋め込まれる。コンピュータプログラム９０が、コンピュータ８０上で実行されたとき、コンピュータ８０に、情報処理装置１００を実現する本発明の情報処理方法を実行させる。
【００８１】
このように構成された本実施形態の情報処理装置１００の動作について、以下説明する。
図１０および図１１は、本実施形態の情報処理装置１００の動作の例を示すフローチャートである。図１０は、代行ログインデータベース２２のアカウント履歴情報記憶部２８にアカウント情報を記憶する処理の手順を示す図である。図１１は、代行ログイン時の処理の手順を示す図である。
【００８２】
図１０において、情報処理装置１００が、業務アプリケーション１４毎にＩＤおよびパスワードを含むアカウント情報を代行ログインデータベース２２のアカウント履歴情報記憶部２８に記憶する（ステップＳ１０１）とともに、アカウント情報の変更が行われた場合に（ステップＳ１０３のＹＥＳ）、その履歴情報をアカウント履歴情報記憶部２８に記憶する（ステップＳ１０５）。
【００８３】
図１１のフローは、クライアント端末１０において、業務アプリケーション１４へのログイン要求を受け付けた場合に（ステップＳ１１１のＹＥＳ）、開始される。そして、情報処理装置１００が、代行ログインデータベース２２のアカウント履歴情報記憶部２８に記憶されているアカウント情報を用いて業務アプリケーション１４に代行ログインを行う（ステップＳ１１３）。代行ログインが行われると、業務アプリケーション１４が表示する画面の画面情報を取得し、予め記憶している業務アプリケーション１４のログイン失敗画面２３０の画面情報と照合する。そして、照合処理により、ログイン失敗画面２３０が検知されると、代行ログインに失敗したと判定する（ステップＳ１１５）。代行ログインに失敗したと判定された場合（ステップＳ１１５のＹＥＳ）、代行ログインデータベース２２のアカウント履歴情報記憶部２８に記憶される以前のアカウント情報を用いて（ステップＳ１１７）、再度代行ログインを行う（ステップＳ１１３）。
【００８４】
まず、図１０を用いて、アカウント履歴情報記憶部２８にアカウント情報を記憶する処理について詳細に説明する。アカウント情報記録部１０２が、業務アプリケーション１４毎に業務アカウントＩＤおよびパスワードを含む業務アカウント情報を代行ログインデータベース２２のアカウント履歴情報記憶部２８（図５）に記憶する。例えば、利用者または管理者が、各利用者の業務アプリケーション１４毎の業務アカウント情報を予め登録する。登録された業務アカウント情報は、現在使用されている業務アカウントとして、図５に示すように、有効フラグは１にセットされる。
【００８５】
さらに、利用者または管理者により、各業務アプリケーション１４の業務アカウントパスワードを変更したり、あるいは、業務アプリケーション１４の業務アカウントを追加または削除したりできる。そして、業務アカウント情報が更新された場合（ステップＳ１０３のＹＥＳ）、アカウント情報記録部１０２は、更新された業務アカウント情報をアカウント履歴情報記憶部２８に記憶するとともに、さらに、更新前の業務アカウント情報も履歴情報としてアカウント履歴情報記憶部２８に残して記憶する（ステップＳ１０５）。
【００８６】
なお、業務アカウント情報が更新されたか否かを検知する方法は、様々考えられ、以下に例示されるがこれらに限定されない。
まず、パスワードを利用者または管理者が変更する場合には、例えば、業務アプリケーション１４に代行ログインした後、クライアント端末１０で業務アプリケーション１４のパスワード変更メニューを選択し、パスワード変更画面を開いたとき、判定部１０６が、クライアント端末１０に表示された画面の画面情報を、画面情報記憶部２４に予め記憶されている業務アプリケーション１４のパスワード変更画面の画面情報と照合することで、パスワード変更画面を検知する。
【００８７】
判定部１０６は、パスワード変更画面が検知されると、検知されたパスワード変更画面の新たなパスワード入力欄に利用者により入力された新たなパスワードを取得し、アカウント情報記録部１０２に新たなパスワードを受け渡す。アカウント情報記録部１０２は、判定部１０６から新たなパスワードを受信することで、業務アカウント情報が更新されたことを検知する。
【００８８】
次に、業務アカウントを削除する場合には、例えば、業務アプリケーション１４に代行ログインした後、利用者がクライアント端末１０で業務アプリケーション１４のアカウント削除メニューを選択し、アカウント削除画面を開いたとき、判定部１０６が、クライアント端末１０に表示された画面の画面情報を、画面情報記憶部２４に予め記憶されている業務アプリケーション１４のアカウント削除画面の画面情報と照合することで、アカウント削除画面を検知する。
【００８９】
判定部１０６は、アカウント削除画面が検知されると、アカウント削除画面への利用者の操作を監視する。そして、アカウント削除画面において削除処理の確定を受け付ける操作ボタンの押下を受け付けると、判定部１０６は、アカウント削除画面において削除するアカウントの指定欄で指定されたアカウントＩＤとを取得する。そして、アカウント情報記録部１０２に削除指定されたアカウントＩＤと、その業務アプリケーション１４のＩＤをアカウント情報記録部１０２に通知する。
【００９０】
次に、業務アカウントを追加する場合には、例えば、利用者がクライアント端末１０で、業務アプリケーション１４のアカウント新規登録画面を開くと、判定部１０６が画面情報記憶部２４に予め記憶されているアカウント新規登録画面を照合により検知する。そして、アカウント新規登録画面に設けられた新規登録アカウントＩＤ入力欄、パスワード入力欄に利用者により入力されたＩＤとパスワードを取得する。そして、アカウント新規登録画面の登録確定の操作ボタンの押下を検知すると、取得したＩＤとパスワードとともに、新規登録指示をアカウント情報記録部１０２に通知する。
【００９１】
例えば、２０１７年７月１日に、利用者ＩＤが”suzuki”のＩＤ１００の業務アプリケーション１４のパスワードが変更され、アカウント情報が更新された場合、アカウント情報記録部１０２は、更新前の２０１７年４月１日に登録されたアカウント情報もアカウント履歴情報記憶部２８に残して記憶する。このとき、アカウント情報記録部１０２は、新たな業務アカウント情報のレコードの有効フラグは、現在使用されていることを示す１にセットし、以前（２０１７年４月１日登録）の業務アカウント情報のレコードの有効フラグは、現在使用されていないことを示す０にリセットする。
【００９２】
次に、図１１を用いて、代行ログイン時の処理の手順について詳細に説明する。まず、利用者は、クライアント端末１０上で代行ログインシステム１２のログイン画面（不図示）を開き、利用者のＩＤとパスワードを入力し、代行ログインシステム１２へのログイン要求を行う。このログイン要求を受け付けた時（ステップＳ１１１のＹＥＳ）、本処理が開始される。
【００９３】
具体的には、代行ログイン処理部１０４は、利用者からのログイン要求を受け付け、ログイン要求に含まれている利用者のログイン情報（利用者のＩＤとパスワードを含む）を取得し、取得した利用者のログイン情報を、代行ログインシステムサーバ２０の代行ログインデータベース２２に格納されているログイン情報記憶部２６（図４）内を検索して見つけ出す。利用者のＩＤおよびパスワードと一致するログイン情報がログイン情報記憶部２６に存在した場合は、代行ログイン処理部１０４は、代行ログインシステム１２へのログインを許可する。一方、利用者のＩＤおよびパスワードと一致するログイン情報が存在しない場合は、代行ログイン処理部１０４は、ログインを拒否する。代行ログインシステム１２へのログインが拒否された場合は、代行ログイン処理部１０４は、利用者にログインに失敗した旨を通知し、本処理を終了する。
【００９４】
ログインが許可されると、さらに、利用者がクライアント端末１０上で業務アプリケーション１４のログイン画面２００を開くと、判定部１０６は、代行ログインデータベース２２に格納されている画面情報記憶部２４（図３）の各画面定義情報を利用して当該業務アプリケーション１４のログイン画面２００を検知し、業務アプリケーション１４が起動されたことを検知する（ステップＳ１１２のＹＥＳ）。
【００９５】
具体的には、判定部１０６は、画面情報記憶部２４に記載されている各業務アプリケーション１４のログイン画面２００の画面情報と、業務アプリケーション１４によりクライアント端末１０に表示された画面の画面情報を照合し、一致した場合に業務アプリケーション１４のログイン画面２００を検知し、業務アプリケーション１４が起動されたことを検知する（ステップＳ１１２のＹＥＳ）。判定部１０６は、画面情報記憶部２４からログイン画面２００の業務アプリケーション１４のＩＤを取得する。ここでは、例えば、業務アプリケーションＩＤ１００を取得したとし、代行ログイン処理部１０４に受け渡す（ステップＳ１１３）。
【００９６】
そして、代行ログイン処理部１０４は、現在代行ログインシステム１２にログインしている利用者ＩＤと、特定されたＩＤ１００をキーとして、代行ログインデータベース２２に格納されているアカウント履歴情報記憶部２８（図５）を検索して、少なくとも１つのレコードを取得する。
【００９７】
業務アプリケーション１４のパスワード変更が過去に行われている場合は、履歴情報が存在し、アカウント履歴情報記憶部２８からその業務アプリケーション１４のレコードが複数検出される場合がある。その場合は、有効フラグが１になっているレコードの業務アカウントＩＤとパスワードを取得する。
【００９８】
そして、代行ログイン処理部１０４は、ログイン画面２００のユーザＩＤ入力欄２０４およびパスワード入力欄２０６に対して、取得した業務アカウントＩＤおよびパスワードを代行入力する。代行入力することにより、代行ログイン処理部１０４は代行ログインシステムサーバ２０に代行ログインを要求する。代行ログインシステムサーバ２０は、代行ログイン処理部１０４（クライアント端末１０）からの代行ログイン要求に従い、代行入力されたアカウント情報を用いて業務アプリケーション１４への代行ログイン処理を行う。
【００９９】
このとき、業務アプリケーション１４への代行ログインに失敗すると、図６のログイン失敗画面２３０がクライアント端末１０に表示される。一方、業務アプリケーション１４への代行ログインに成功すると図８のログイン成功画面２５０がクライアント端末１０に表示される。判定部１０６は、代行ログインデータベース２２に格納されている業務アプリケーション１４の画面定義情報（図３）を利用して、表示された画面の画面情報との照合処理を行い、ログイン失敗画面２３０とログイン成功画面２５０のどちらが表示されているかを判別する。
【０１００】
判定部１０６が業務アプリケーション１４の代行ログインに失敗したと判定した場合、アカウント履歴情報記憶部２８に記憶されている業務アカウント情報と、業務アプリケーション１４が保持しているアカウント情報の同期が取れていない状態であると判断できる。この場合、業務アプリケーション１４が保持しているアカウント情報が業務アプリケーション１４側の障害等により巻き戻っている可能性がある。そこで、制御部１０８は、アカウント履歴情報記憶部２８の履歴情報を用いて、以前のアカウント情報の中のどの情報まで巻き戻ったかを探し、アカウント履歴情報記憶部２８に記憶されている業務アカウント情報をその時点における業務アプリケーション１４の情報に一致ざせる処理を行う。
【０１０１】
また、判定部１０６が業務アプリケーション１４の代行ログインに成功したと判定した場合、アカウント履歴情報記憶部２８に記憶されている業務アカウント情報と、業務アプリケーション１４が保持しているアカウント情報の同期が取れている状態であると判断できる。したがって、次回以降もそのアカウント情報を用いて代行ログインを行うこととなる。
【０１０２】
まず、業務アプリケーション１４側と代行ログインシステム１２側のアカウント情報に不一致が生じたと判断し、代行ログインシステム１２側の情報も以前の情報に巻き戻す処理について説明する。
判定部１０６は、ログイン失敗画面２３０を検知した場合、業務アプリケーション１４への代行ログインに失敗したと判定し（ステップＳ１１５のＹＥＳ）、制御部１０８は、当該業務アプリケーション１４のＩＤおよび当該利用者のＩＤをキーとしてアカウント履歴情報記憶部２８からレコードを取り出し、取り出されたレコードの中から、ログインに失敗したレコードより１世代前のレコードの有効フラグを１にセットする。また、制御部１０８は、取り出された当該業務アプリケーション１４のその他のレコードの有効フラグを０にリセットする。そして、有効フラグを１にセットしたレコードの業務アカウント情報を取得する（ステップＳ１１７）。そして、制御部１０８は、取得した業務アカウント情報を用いて、再度、代行ログイン処理部１０４に代行ログインを行わせる（ステップＳ１１３）。
【０１０３】
なお、制御部１０８は、アカウント履歴情報記憶部２８の更新日時情報を用いて、業務アプリケーション１４の複数のレコードの中から１世代前のレコードを選ぶ。
【０１０４】
同様にして、代行ログインが失敗したか否かを判定し、再度、失敗したと判定された場合は、制御部１０８は、さらに、ログインに失敗したレコードより１世代前のレコードの有効フラグを１にセットする。また、その他のレコードの有効フラグを０にリセットする。そして、有効フラグを１にセットしたレコードの業務アカウント情報を取得する（ステップＳ１１７）。
【０１０５】
次に、業務アプリケーション１４側と代行ログインシステム１２側のアカウント情報が一致している場合の処理について説明する。
判定部１０６が業務アプリケーション１４のログイン成功画面２５０を検知すると、代行ログインに成功したと判定し（ステップＳ１１５のＮＯ）、更新部１２０は、成功した代行ログインに利用した業務アカウントのアカウント履歴情報記憶部２８のレコードの有効フラグを１にセットする（ステップＳ１２１）。これにより、次回以降の代行ログインにこのアカウント情報が使用されることになる。さらに、更新部１２０は、当該利用者の、当該業務アプリケーション１４のその他のレコードの有効フラグは０にリセットする（ステップＳ１２３）。
【０１０６】
そして、本処理を終了する。これにより、利用者はクライアント端末１０上で、代行ログインされた業務アプリケーション１４を利用することができる。
【０１０７】
このように、情報処理装置１００は、代行ログインに失敗した場合、アカウント履歴情報記憶部２８に記憶されている業務アカウントを、１世代ずつ古いレコードの情報を利用して代行ログインを試み、ログインに成功したか否かで、その業務アプリケーション１４が現在管理している利用者の業務アカウント情報を特定する。すなわち、業務アプリケーション１４側で、障害等に起因して業務アカウント情報が古い世代の情報に巻き戻ってしまった場合でも、情報処理装置１００によれば、アカウント履歴情報記憶部２８に記憶されている以前の業務アカウント情報を用いて代行ログインを試みることができるので、滞りなく代行ログイン処理を遂行できる。そして、代行ログインに成功した場合は、制御部１０８は、成功したアカウント情報のレコードの有効フラグを１にセットし、次回からも代行ログイン時に使用することができるようにするので、次回以降も代行ログイン処理を滞りなく遂行できる。
【０１０８】
以上説明したように、本実施形態の情報処理装置１００によれば、代行ログインシステム１２において、業務アプリケーション１４側で障害が発生し、バックアップから復旧するなどして、代行ログインのためのアカウント情報が巻き戻ってしまった場合に、代行ログインシステム１２と業務アプリケーション１４の間のアカウント情報の再同期を行うことができる。
【０１０９】
その際、利用者側のクライアント端末１０での操作で自動的に処理が行われるため、管理者による対応が不要である。
【０１１０】
また、アカウント履歴情報記憶部２８にアカウント情報の履歴情報を記憶して管理して自動で業務アプリケーション１４側と同期するため、利用者が業務アカウント情報を覚えていない場合や、業務アカウント情報を利用者に教えない運用をしている場合にも対応することができる。
【０１１１】
加えて、代行ログインシステム１２側のアカウント情報を調整することにより同期を行うため、業務アプリケーション１４側にアカウント情報を一括で取り込むインタフェースがない場合や業務アプリケーション１４側にパスワードポリシが存在する場合も対応することができる。本実施形態により、アカウント情報が古い状態になってしまうが、同期を取って業務アプリケーション１４にログインできるようになった後に、パスワード等のアカウント情報の変更を実施すればよい。
【０１１２】
さらに、代行ログインシステム１２が業務アプリケーション１４のログイン画面２００へアカウント情報を代行入力することにより有効なアカウント情報の確認を行うため、業務アプリケーション１４側でアカウント情報を暗号化して保持していても対応できる。
【０１１３】
本実施形態では、業務アプリケーション１４に代行ログインを試行し、ログインできなかった場合にのみアカウント履歴情報記憶部２８の代行ログイン用のアカウント情報の巻き戻しを行う。つまり、業務アプリケーション１４の巻き戻し前後でパスワードが変わっていない利用者が、業務アプリケーション側の巻き戻し後に、パスワード変更を実施していたとしても、代行ログインに失敗しなければ、代行ログインシステム側のバックアップへの巻き戻しは実施されないので、代行ログイン用パスワードが巻き戻って代行ログインシステムと業務アプリケーションの間で不一致となってしまうことはない。
【０１１４】
（第２の実施の形態）
図１２は、本実施の形態に係る情報処理装置１００の論理的な構成を示す機能ブロック図である。本実施形態の情報処理装置１００は、代行ログイン失敗時に所定回数以上、ログイン失敗を繰り返すことによるアカウント情報のロック機能を回避するための構成を有する点で上記実施形態と相違する。本実施形態の情報処理装置１００は、図２の実施形態と同様な構成を有するとともに、さらに、変更部１３０と、取得部１３２と、を有する。
【０１１５】
アカウント情報記録部１０２は、正規利用者の業務アカウント情報とは別に代替の利用者ＩＤと利用者パスワードを含む第２の業務アカウント情報（ダミーのアカウント情報）をアカウント履歴情報記憶部２８にさらに記憶する。変更部１３０は、アカウント履歴情報記憶部２８の第２の業務アカウント情報のパスワードを定期的に変更して、変更前の第２のアカウント情報を変更時刻とともに履歴情報として記憶する。取得部１３２は、以前の業務アカウント情報を用いた代行ログインに失敗した場合、アカウント履歴情報記憶部２８に記憶される歴代の第２の業務アカウント情報を変更時刻が新しい順に用いて代行ログインを実行し、代行ログインに成功した第２のアカウント情報の変更時刻を取得する。制御部１０８は、代行ログインに失敗した業務アカウント情報の変更時刻より以前の利用者の業務アカウント情報をアカウント履歴情報記憶部２８から取得し、代行ログイン処理部１０４に再度代行ログインを行わせる。
【０１１６】
図１３に、第２のアカウント情報が追加されたアカウント履歴情報記憶部２８のデータ構造の例を示す。この例では、ダミーのアカウントのパスワードが定期的（例えば、３ヶ月毎）に変更されている。
【０１１７】
そして、更新部１２０は、制御部１０８により行われた代行ログインに成功した場合、当該代行ログインに成功した際の業務アカウント情報でアカウント履歴情報記憶部２８の情報を更新する。
【０１１８】
上記実施形態では、実際に代行ログインを試行することにより有効なパスワードの確認を行うため、何度もログインに失敗することで、業務アプリケーション１４のアカウントがアカウントロックする恐れがある。
【０１１９】
従って、代行ログインに使用するアカウント情報を、一時的にダミーのアカウント（第２のアカウント情報とも呼ぶ）を用いる方法が考えられる。少なくとも１つのダミーのアカウントを作成しておき、定期的にパスワードの変更を実施し、その履歴と時刻をアカウント履歴情報記憶部２８に記録しておく。業務アプリケーション１４に障害が発生して巻き戻りが発生した場合、ダミーのアカウント情報でパスワードの履歴情報を遡りながらログインを試み、いつの時点のパスワードで代行ログインできるかを特定する。
【０１２０】
なお、第２のアカウント情報は、複数作成しておくのが好ましい。また、各第２のアカウントは、パスワードの変更周期の長さを異ならせ（例えば、１５日、２ヶ月等）てもよい。また、パスワードの変更周期が比較的短い（例えば、１５日等）第２のアカウントは、さらに複数作成してもよい。そして、取得部１３２は、代行ログインに失敗した業務アプリケーション１４の利用者のアカウント情報の最新の更新日時に最も近い更新日時のレコードを複数の第２のアカウント情報の各レコードの中から選択し、代行ログインに成功するまで順に更新日時を遡って選択してもよい。あるいは、業務アプリケーション１４側から利用者にパスワードの変更を定期的に求めるような場合は、その周期に合わせて第２のアカウントを変更してもよい。
【０１２１】
以上説明したように、本実施形態によれば、上記実施形態と同様な効果を奏するとともに、さらに、代行ログインを試みるのにダミーのアカウントを用いて行うので、複数回ログインに失敗することにより利用者のアカウントにロックがかかることを防ぐことができる。ダミーのアカウントを用いて代行ログインに成功した更新日時を取得し、その更新日時以前の利用者のアカウント情報で代行ログインを試すことで、業務アプリケーション１４と業務アプリケーション１４とアカウント履歴情報記憶部２８のパスワード情報を同期することができる。
【０１２２】
以上、図面を参照して本発明の実施形態について述べたが、これらは本発明の例示であり、上記以外の様々な構成を採用することもできる。
例えば、上記実施形態では、アカウント履歴情報記憶部２８と業務アプリケーション１４のアカウント情報の同期が取れている状態か否かを判断できるので、さらに、その旨を管理者または利用者に通知する情報を出力する出力部（不図示）をさらに備えてもよい。
【０１２３】
例えば、判定部１０６が業務アプリケーション１４のログイン成功画面２５０を検知した場合、出力部は、管理者や利用者に、アカウント履歴情報記憶部２８と業務アプリケーション１４のアカウント情報の同期が取れている旨を通知する情報を出力してもよい。また、判定部１０６が業務アプリケーション１４のログイン失敗画面２３０を検知した場合、出力部は、管理者や利用者に、アカウント履歴情報記憶部２８と業務アプリケーション１４のアカウント情報の同期が取れていない旨を通知する情報を出力してもよい。
【０１２４】
通知情報に、不一致が検知された業務アプリケーション１４のアカウント情報、およびその更新日時の少なくともいずれか一方をさらに含んでもよい。
【０１２５】
出力部の出力方法は特に限定されず、クライアント端末１０の画面に表示したり、代行ログインデータベース２２の所定の記憶部（不図示）に記録したり、予め指定された宛先（メールアドレス、メッセージＩＤ等）に情報を送信したり、印字出力したりしてもよい。
【０１２６】
また、上記実施形態では、クライアント端末１０上にエージェントソフトウェアを導入する代行ログインシステム１２について説明したが、他の実施形態では、クライアント端末１０と業務アプリケーションサーバ３０間に配置するリバースプロキシにより業務アプリケーション１４に代行ログインする代行ログインシステム１２への適用も可能である。リバースプロキシは、業務アプリケーションサーバ３０とクライアント端末１０の間の通信を中継する。通信を中継する際に、その内容を確認することで業務アプリケーションの画面を検知し、前記実施例と同様の処理を行う。
【０１２７】
図１の実施形態の情報処理装置１００は、更新部１２０を備えていたが、本発明の情報処理装置１００は、アカウント情報記録部１０２と、代行ログイン処理部１０４と、判定部１０６と、制御部１０８と、を少なくとも備えていればよい。また、図５のアカウント履歴情報記憶部２８の有効フラグは含まれなくてもよい。アカウントの更新日時情報に基づいて、現在使用するアカウント情報と、以前のアカウント情報を判別して代行ログインに用いればよい。
【０１２８】
そして、この実施形態において、情報処理装置１００は、図１０の代行ログインデータベース２２のアカウント履歴情報記憶部２８にアカウント情報を記憶する処理の手順に従い、動作するとともに、図１１の代行ログイン時の処理の手順のフローのうち、ステップＳ１１１〜ステップＳ１１７までの手順に従い動作する。
【０１２９】
この構成によれば、代行ログインシステムとアプリケーション間でアカウント情報に不一致が生じた場合に、アプリケーション側のアカウント情報に合わせて巻き戻し、代行ログインを試みることができるので、アプリケーションへの代行ログインを滞りなく行うことができる。
【０１３０】
以上、実施形態および実施例を参照して本願発明を説明したが、本願発明は上記実施形態および実施例に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
なお、本発明において利用者に関する情報を取得、利用する場合は、これを適法に行うものとする。
【０１３１】
上記の実施形態の一部または全部は、以下の付記のようにも記載されうるが、以下に限られない。
１．  アプリケーション毎にユーザ識別情報およびパスワードを含むアカウント情報を記憶部に記憶するとともに、前記アカウント情報の変更が行われた場合にその履歴情報を前記記憶部に記憶するアカウント情報記録手段と、
前記記憶部に記憶されている前記アカウント情報を用いて前記アプリケーションに代行ログインを行う代行ログイン処理手段と、
前記代行ログインが行われると、前記アプリケーションが表示する画面の画面情報を取得し、予め記憶している前記アプリケーションのログイン失敗画面の画面情報と照合することにより、前記ログイン失敗画面が検知されると前記アプリケーションの前記代行ログインに失敗したと判定する判定手段と、
前記代行ログインに失敗したと判定された場合、前記代行ログイン処理手段に前記記憶部の前記履歴情報に記憶されている前記アプリケーションの以前の前記アカウント情報を用いて再度前記代行ログインを行わせる制御手段と、
を備える情報処理装置。
２．  １．に記載の情報処理装置において、
前記アカウント情報記録手段は、正規の前記アカウント情報とは別に代替のユーザ識別情報とパスワードを含む第２のアカウント情報を前記記憶部にさらに記憶し、
前記記憶部の前記第２のアカウント情報の前記パスワードを定期的に変更して、変更前の前記第２のアカウント情報を変更時刻とともに前記履歴情報として記憶する変更手段と、
前記以前のアカウント情報を用いた前記代行ログインに失敗した場合、前記記憶部に記憶される歴代の前記第２のアカウント情報を前記変更時刻が新しい順に用いて代行ログインを実行し、前記代行ログインに成功した前記第２のアカウント情報の前記変更時刻を取得する取得手段と、をさらに備え、
前記制御手段は、前記代行ログインに失敗した前記アカウント情報の前記変更時刻より以前の利用者の前記アカウント情報を前記履歴情報から取得し、前記代行ログイン処理手段に再度代行ログインを行わせる、情報処理装置。
３．  １．または２．に記載の情報処理装置において、
前記制御手段により行われた前記代行ログインに成功した場合、当該代行ログインに成功した際のアカウント情報で前記記憶部の情報を更新する更新手段をさらに備える、情報処理装置。
４．  １．から３．いずれか一つに記載の情報処理装置において、
前記判定手段は、さらに、前記アプリケーションが表示する画面の画面情報を取得し、予め記憶しているログイン成功画面の画面情報と照合することにより、前記ログイン成功画面が検知されると前記代行ログインが成功したと判定する、情報処理装置。
５．  １．から４．いずれか一つに記載の情報処理装置において、
前記アプリケーションは、業務アプリケーションであり、当該業務アプリケーションの利用時に少なくとも１回、アカウント情報の入力が利用者に要求される、情報処理装置。
【０１３２】
６．  情報処理装置の機能が実現されるクライアント端末と、
代行ログインシステムサーバ装置と、を備え、
前記クライアント端末、および前記代行ログインシステムサーバ装置は、互いにネットワークで接続され、
前記クライアント端末は、前記ネットワークを介してアプリケーションにログインすることで当該アプリケーションの実行が可能となり、
前記情報処理装置は、
アプリケーション毎にユーザ識別情報およびパスワードを含むアカウント情報を記憶部に記憶するとともに、前記アカウント情報の変更が行われた場合にその履歴情報を前記記憶部に記憶するアカウント情報記録手段と、
前記記憶部に記憶されている前記アカウント情報を用いて前記アプリケーションに代行ログインを行う代行ログイン処理手段と、
前記代行ログインが行われると、前記アプリケーションが表示する画面の画面情報を取得し、予め記憶している前記アプリケーションのログイン失敗画面の画面情報と照合することにより、前記ログイン失敗画面が検知されると前記アプリケーションの前記代行ログインに失敗したと判定する判定手段と、
前記代行ログインに失敗したと判定された場合、前記代行ログイン処理手段に前記記憶部の前記履歴情報に記憶されている前記アプリケーションの以前の前記アカウント情報を用いて再度前記代行ログインを行わせる制御手段と、有し、
前記情報処理装置の代行ログイン処理手段は、前記代行ログインシステムサーバ装置の記憶装置が記憶する前記アプリケーションへのログイン用のアカウント情報を用いて前記アプリケーションに代行ログインを行う、情報処理システム。
７．  ６．に記載の情報処理システムにおいて、
前記情報処理装置の前記アカウント情報記録手段は、正規の前記アカウント情報とは別に代替のユーザ識別情報とパスワードを含む第２のアカウント情報を前記記憶部にさらに記憶し、
前記情報処理装置は、
前記記憶部の前記第２のアカウント情報の前記パスワードを定期的に変更して、変更前の前記第２のアカウント情報を変更時刻とともに前記履歴情報として記憶する変更手段と、
前記以前のアカウント情報を用いた前記代行ログインに失敗した場合、前記記憶部に記憶される歴代の前記第２のアカウント情報を前記変更時刻が新しい順に用いて代行ログインを実行し、前記代行ログインに成功した前記第２のアカウント情報の前記変更時刻を取得する取得手段と、をさらに有し、
前記情報処理装置の前記制御手段は、前記代行ログインに失敗した前記アカウント情報の前記変更時刻より以前の利用者の前記アカウント情報を前記履歴情報から取得し、前記代行ログイン処理手段に再度代行ログインを行わせる、情報処理システム。
８．  ６．または７．に記載の情報処理システムにおいて、
前記制御手段により行われた前記代行ログインに成功した場合、当該代行ログインに成功した際のアカウント情報で前記記憶部の情報を更新する更新手段をさらに備える、情報処理システム。
９．  ６．から８．いずれか一つに記載の情報処理システムにおいて、
前記情報処理装置の前記判定手段は、さらに、前記アプリケーションが表示する画面の画面情報を取得し、予め記憶しているログイン成功画面の画面情報と照合することにより、前記ログイン成功画面が検知されると前記代行ログインが成功したと判定する、情報処理システム。
１０．  ６．から９．いずれか一つに記載の情報処理システムにおいて、
前記アプリケーションは、業務アプリケーションであり、当該業務アプリケーションの利用時に少なくとも１回、アカウント情報の入力が利用者に要求される、情報処理システム。
【０１３３】
１１．  記憶装置を有する情報処理装置が、
アプリケーション毎にユーザ識別情報およびパスワードを含むアカウント情報を前記記憶装置に記憶するとともに、前記アカウント情報の変更が行われた場合にその履歴情報を前記記憶装置に記憶し、
前記記憶装置に記憶されている前記アカウント情報を用いて前記アプリケーションに代行ログインを行い、
前記代行ログインが行われると、前記アプリケーションが表示する画面の画面情報を取得し、予め記憶している前記アプリケーションのログイン失敗画面の画面情報と照合することにより、前記ログイン失敗画面が検知されると前記アプリケーションの前記代行ログインに失敗したと判定し、
前記代行ログインに失敗したと判定された場合、前記記憶装置の前記履歴情報に記憶されている前記アプリケーションの以前の前記アカウント情報を用いて再度前記代行ログインを行う、情報処理方法。
１２．  １１．に記載の情報処理方法において、
前記情報処理装置が、さらに、
正規の前記アカウント情報とは別に代替のユーザ識別情報とパスワードを含む第２のアカウント情報を前記記憶装置に記憶し、
前記記憶装置の前記第２のアカウント情報の前記パスワードを定期的に変更して、変更前の前記第２のアカウント情報を変更時刻とともに前記履歴情報として記憶し、
前記以前のアカウント情報を用いた前記代行ログインに失敗した場合、前記記憶装置に記憶される歴代の前記第２のアカウント情報を前記変更時刻が新しい順に用いて代行ログインを実行し、前記代行ログインに成功した前記第２のアカウント情報の前記変更時刻を取得し、
前記代行ログインに失敗した前記アカウント情報の前記変更時刻より以前の利用者の前記アカウント情報を前記履歴情報から取得し、再度代行ログインを行う、情報処理方法。
１３．  １１．または１２．に記載の情報処理方法において、
前記情報処理装置が、さらに、
前記代行ログインに成功した場合、当該代行ログインに成功した際のアカウント情報で前記記憶装置の情報を更新する、情報処理方法。
１４．  １１．から１３．いずれか一つに記載の情報処理方法において、
前記情報処理装置が、さらに、
前記アプリケーションが表示する画面の画面情報を取得し、予め記憶しているログイン成功画面の画面情報と照合することにより、前記ログイン成功画面が検知されると前記代行ログインが成功したと判定する、情報処理方法。
１５．  １１．から１４．いずれか一つに記載の情報処理方法において、
前記アプリケーションは、業務アプリケーションであり、当該業務アプリケーションの利用時に少なくとも１回、アカウント情報の入力が利用者に要求される、情報処理方法。
【０１３４】
１６．  情報処理装置を実現するコンピュータは、記憶装置を有し、
コンピュータに、
アプリケーション毎にユーザ識別情報およびパスワードを含むアカウント情報を前記記憶装置に記憶するとともに、前記アカウント情報の変更が行われた場合にその履歴情報を前記記憶装置に記憶する手順、
前記アカウント情報の変更が行われた場合にその履歴情報を前記記憶装置に記憶する手順、
前記記憶装置に記憶されている前記アカウント情報を用いて前記アプリケーションに代行ログインを行う手順、
前記代行ログインが行われると、前記アプリケーションが表示する画面の画面情報を取得し、予め記憶しているログイン失敗画面の画面情報と照合することにより、前記ログイン失敗画面が検知されると前記アプリケーションの前記代行ログインに失敗したと判定する手順、
前記代行ログインに失敗したと判定された場合、前記記憶装置の前記履歴情報に記憶されている前記アプリケーションの以前の前記アカウント情報を用いて再度前記代行ログインを行う手順、を実行させるためのプログラム。
１７．  １６．に記載のプログラムにおいて、
正規の前記アカウント情報とは別に代替のユーザ識別情報とパスワードを含む第２のアカウント情報を前記記憶装置にさらに記憶する手順、
前記記憶装置の前記第２のアカウント情報の前記パスワードを定期的に変更して、変更前の前記第２のアカウント情報を変更時刻とともに前記履歴情報として記憶する手順、
前記以前のアカウント情報を用いた前記代行ログインに失敗した場合、前記記憶装置に記憶される歴代の前記第２のアカウント情報を前記変更時刻が新しい順に用いて代行ログインを実行し、前記代行ログインに成功した前記第２のアカウント情報の前記変更時刻を取得する手順、
前記代行ログインに失敗した前記アカウント情報の前記変更時刻より以前の利用者の前記アカウント情報を前記履歴情報から取得し、再度代行ログインを行う手順、をコンピュータに実行させるためのプログラム。
１８．  １６．または１７．に記載のプログラムにおいて、
前記制御手段により行われた前記代行ログインに成功した場合、当該代行ログインに成功した際のアカウント情報で前記記憶装置の情報を更新する手順、をコンピュータに実行させるためのプログラム。
１９．  １６．から１８．いずれか一つに記載のプログラムにおいて、
さらに、前記アプリケーションが表示する画面の画面情報を取得し、予め記憶しているログイン成功画面の画面情報と照合することにより、前記ログイン成功画面が検知されると前記代行ログインが成功したと判定する手順、をコンピュータに実行させるためのプログラム。
２０．  １６．から１９．いずれか一つに記載のプログラムにおいて、
前記アプリケーションは、業務アプリケーションであり、当該業務アプリケーションの利用時に少なくとも１回、アカウント情報の入力が利用者に要求される、プログラム。
【符号の説明】
【０１３５】
１  情報処理システム
３  ネットワーク
１０  クライアント端末
１２  代行ログインシステム
１４  業務アプリケーション
２０  代行ログインシステムサーバ
２２  代行ログインデータベース
２４  画面情報記憶部
２６  ログイン情報記憶部
２８  アカウント履歴情報記憶部
３０  業務アプリケーションサーバ
８０  コンピュータ
８２  ＣＰＵ
８４  メモリ
８５  ストレージ
８６  Ｉ／Ｏ
８７  通信Ｉ／Ｆ
８９  バス
９０  コンピュータプログラム
１００  情報処理装置
１０２  アカウント情報記録部
１０４  代行ログイン処理部
１０６  判定部
１０８  制御部
１２０  更新部
１３０  変更部
１３２  取得部
２００  ログイン画面
２０２  ウインドウタイトルバー
２０４  ユーザＩＤ入力欄
２０６  パスワード入力欄
２０８  ＯＫボタン
２０９  キャンセルボタン
２３０  ログイン失敗画面
２３２  ウインドウタイトルバー
２３４  メッセージ表示欄
２３６  ＯＫボタン
２５０  ログイン成功画面
２５２  ウインドウタイトルバー
２５４  アイコン
【図１】
2018169840.tif 000003
【図２】
2018169840.tif 000004
【図３】
2018169840.tif 000005
【図４】
2018169840.tif 000006
【図５】
2018169840.tif 000007
【図６】
2018169840.tif 000008
【図７】
2018169840.tif 000009
【図８】
2018169840.tif 000010
【図９】
2018169840.tif 000011
【図１０】
2018169840.tif 000012
【図１１】
2018169840.tif 000013
【図１２】
2018169840.tif 000014
【図１３】
2018169840.tif 000015