ユーザ認証方法及びWEBシステム
【課題】ユーザ端末がWEBシステムにログイン中に予測できないシステム障害が発生しても、第3者によるWEBシステムの不正操作を防止する。
【解決手段】WEBサーバ102は、端末からのセッション情報と記憶部の当該端末のログイン情報が同一の場合、端末情報と認証情報を含む認証要求をアプリケーションサーバ103に送信し、アプリケーションサーバ103からの認証結果がエラーやログイン中であることを示す場合には、この旨を端末に送信し、アプリケーションサーバ103は、WEBサーバ102から認証要求を受信し、認証情報をデータベースサーバ104で保持している場合に、認証情報と端末情報を用いて排他キー情報を生成し、その排他キー情報をデータベースサーバ104で保持している場合に、認証結果としてエラーやログイン中であることを示す情報をWEBサーバ102に送信する。
【解決手段】WEBサーバ102は、端末からのセッション情報と記憶部の当該端末のログイン情報が同一の場合、端末情報と認証情報を含む認証要求をアプリケーションサーバ103に送信し、アプリケーションサーバ103からの認証結果がエラーやログイン中であることを示す場合には、この旨を端末に送信し、アプリケーションサーバ103は、WEBサーバ102から認証要求を受信し、認証情報をデータベースサーバ104で保持している場合に、認証情報と端末情報を用いて排他キー情報を生成し、その排他キー情報をデータベースサーバ104で保持している場合に、認証結果としてエラーやログイン中であることを示す情報をWEBサーバ102に送信する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、WEBシステムに係わり、特に、第3者によるWEBシステムの不正操作を防止する技術に関する。
【背景技術】
【0002】
WEBサーバを使用したシステムは、国内どこにでもあるシステム形態であり、WEBブラウザさえあれば、URLを指定することにより、WEBサーバへのアクセスが可能となる。そこで、アクセスの際のユーザ認証に着目し、ログイン後の予期しないシステム障害時のアクセス情報(ログイン情報)のチェック処理機能をシステムに持たせ、こうした機能をもとに処理された結果をアクセス時の再ログインをする際に活用すれば、適正なログインを実施することができ、システム障害時のシステム運用管理者の負荷を軽減できる可能性がある。
【0003】
関連する技術として、システムログイン時の情報を保持し、その情報をもとにユーザ端末の異常操作を検出する技術が知られている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2010−250502公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
近年、WEBシステムにおいて、不正アクセス防止の観点から、WEBシステムを構成するWEBサーバとアプリケーションサーバの各々で、ユーザ認証処理を行っている。
【0006】
そのユーザ認証処理においては、WEBサーバとアプリケーションサーバがアクセスするデータベースサーバ(以下、DBサーバと記す)の各々で、ユーザID、パスワード等のユーザ情報(認証情報)の管理を行っている。
【0007】
一方で、ユーザ端末がWEBシステムにログイン中に予測できないシステム障害(例えば、システムダウン)が発生することがある。この場合、ログイン情報がWEBサーバ又はDBサーバに残ったままの状態となり、第3者によりアプリケーションを不正に操作されてしまう可能性がある。したがって、従来、システム管理者によりWEBサーバ又はDBサーバに残ったログイン情報を削除する等の対応が必要であり、また、この対応には時間を要するため、システム管理者によって対応が完了するまでの間、第3者によるWEBシステムの不正操作が可能となり、セキュリティ上問題視されていた。
【0008】
本発明は、このような事情に鑑みてなされたもので、ユーザ端末がWEBシステムにログイン中に予測できないシステム障害が発生しても、第3者によるWEBシステムの不正操作を防止する技術を提供することを課題とする。
【課題を解決するための手段】
【0009】
上記課題を解決するための一手段について説明する。本発明は、複数の端末、WEBサーバ、アプリケーションサーバ及びデータベースサーバがネットワークに接続されて構成されるWEBシステムである。前記WEBサーバは、前記端末のログイン情報と端末情報を記憶する記憶部と、第1の端末からセッション情報と認証情報を前記ネットワークを介して受信し、該受信したセッション情報と前記記憶部に記憶されている当該第1の端末のログイン情報が同一の場合、前記記憶部から取得した第1の端末情報と前記認証情報を含む認証要求を前記ネットワークを介して前記アプリケーションサーバに送信し、前記アプリケーションサーバから認証結果を前記ネットワークを介して受信し、前記認証結果がエラーやログイン中であることを示す場合には、この旨を前記ネットワークを介して前記第1の端末に送信する第1の制御部と、を有することを特徴とする。前記アプリケーションサーバは、前記WEBサーバから前記認証要求を前記ネットワークを介して受信し、前記認証情報を前記データベースサーバで保持している場合に、前記認証情報と前記第1の端末情報を用いて排他キー情報を生成し、該排他キー情報を前記データベースサーバで保持している場合に、認証結果としてエラーやログイン中であることを示す情報を前記ネットワークを介して前記WEBサーバに送信する第2の制御部を有する、ことを特徴とする。
【発明の効果】
【0010】
本発明によれば、ユーザ端末がWEBシステムにログイン中に予測できないシステム障害が発生しても、第3者によるWEBシステムの不正操作を防止できる。
【図面の簡単な説明】
【0011】
【図1】本実施例に係るWEBシステム100の全体構成例を示す図である。
【図2】ユーザ端末101のハードウェア構成例を示す図である。
【図3】WEBサーバ102のハードウェア構成例を示す図である。
【図4】アプリケーションサーバ103のハードウェア構成例を示す図である。
【図5】DBサーバ104のハードウェア構成例を示す図である。
【図6】DBサーバ104が具備するユーザ情報マスタ513のデータ構成例を示す図である。
【図7】DBサーバ104が具備する端末情報マスタ514のデータ構成例を示す図である。
【図8】DBサーバ104が具備する排他キーテーブル515のデータ構成例を示す図である。
【図9】WEBサーバ102が具備する端末一覧ファイル314のデータ構成例を示す図である。
【図10】WEBサーバ102が具備するログイン情報ファイル315のデータ構成例を示す図である。
【図11】ユーザ端末101の表示部204に表示されるログイン画面1100の例を示す図である。
【図12】WEBサーバ102が具備するセッション有効性確認機能309とログイン画面送信機能311の処理を示すフローチャートである。
【図13】同じく、WEBサーバ102が具備するセッション有効性確認機能309とログイン画面送信機能311の処理を示すフローチャートである。
【図14】アプリケーションサーバ103が具備する端末認証機能409の処理を示すフローチャートである。
【図15】WEBサーバ102が具備するセッション有効性確認機能309と起動種別確認機能310と業務画面送信機能312の処理を示すフローチャートである。
【図16】同じく、WEBサーバ102が具備するセッション有効性確認機能309と起動種別確認機能310と業務画面送信機能312の処理を示すフローチャートである。
【図17】アプリケーションサーバ103が具備するユーザ認証機能410の処理を示すフローチャートである。
【図18】DBサーバ104が具備するユーザID、パスワード有無確認機能509、排他キー有無確認機能510、排他キー登録機能511の処理を示すフローチャートである。
【図19】WEBサーバ102が具備するセッション有効性確認機能309と起動種別確認機能310とログイン情報削除機能313の処理を示すフローチャートである。
【図20】同じく、WEBサーバ102が具備するセッション有効性確認機能309と起動種別確認機能310とログイン情報削除機能313の処理を示すフローチャートである。
【図21】アプリケーションサーバ103が具備する排他キー削除要求及び削除結果送受信機能411の処理を示すフローチャートである。
【図22】DBサーバ104が具備する排他キー削除機能512の処理を示すフローチャートである。
【発明を実施するための形態】
【0012】
以下、本発明の一実施例について、図面を参照して詳細に説明する。
【0013】
図1は、本実施例に係るWEBシステム100の全体構成例を示す図である。本実施例に係るWEBシステム100は、複数のユーザ端末101と、WEBサーバ102と、アプリケーションサーバ103と、DBサーバ104とがインターネット等のネットワーク105に接続されて構成されるコンピュータネットワークシステムである。
【0014】
図2は、ユーザ端末101のハードウェア構成例を示す図である。ユーザ端末101は、一般的なコンピュータにより実現でき、記憶部201と、制御部202と、メモリ203と、表示部204と、通信部205と、入力部206とを具備する。各部はバス(BUS)によって接続されている。記憶部201には、業務起動用URL送信機能207、画面表示機能208及びログイン情報送信機能209からなるプログラムが格納されている。業務起動用URL送信機能207は、WEBサーバ102へURLを送信してアクセスする機能を有する。画面表示機能208は、WEBサーバ102へURLを送信した結果(応答)を表示する機能を有する。ログイン情報送信機能209は、入力されたユーザID、パスワードをWEBサーバ102へ送信する機能を有する。
【0015】
図3は、WEBサーバ102のハードウェア構成例を示す図である。WEBサーバ102は、記憶部301と、制御部302と、メモリ303と、表示部304と、通信部305と、入力部306とを具備する。各部はバス(BUS)によって接続されている。記憶部301には、セッション有効性確認機能309、起動種別確認機能310、ログイン画面送信機能311、業務画面送信機能312及びログイン情報削除機能313からなるプログラムと、端末一覧ファイル314と、ログイン情報ファイル315とが格納されている。セッション有効性確認機能309は、ユーザ端末101からのアクセスを検知し、セッション情報(セッションID)を取得し、そのセッションの有効性を確認する機能を有する。起動種別確認機能310は、ユーザ端末101からのアクセスがログインかログアウトかを確認する機能を有する。ログイン画面送信機能311は、アプリケーションサーバ103に端末認証要求を送信し、その応答結果(端末認証結果)が成功を示す場合に、ログイン画面をユーザ端末101に送信する機能を有する。業務画面送信機能312は、アプリケーションサーバ103にユーザ認証要求を送信し、その応答結果(ユーザ認証結果)が成功を示す場合に、業務画面(アプリケーション画面)をユーザ端末101に送信する機能を有する。ログイン情報削除機能313は、プリケーションサーバ103に排他キー削除要求を送信し、その応答結果(排他キー削除結果)が排他キーの削除に成功したことを示す場合に、ログイン情報ファイル315からログイン情報を削除する機能を有する。なお、ユーザ端末101に送信する業務画面は一例であり、その他のアプリケーション画面であっても良い。
【0016】
図4は、アプリケーションサーバ103のハードウェア構成例を示す図である。アプリケーションサーバ103は、記憶部401と、制御部402と、メモリ403と、表示部404と、通信部405と、入力部406とを具備する。各部はバス(BUS)によって接続されている。記憶部401には、端末認証機能409、ユーザ認証機能410、排他キー削除要求及び削除結果送受信機能411からなるプログラムが格納されている。端末認証機能409は、WEBサーバ102から端末情報(例えば、端末ID)を含む端末認証要求を受けて、DBサーバ104に端末IDの有無確認要求を送信し、その応答結果が端末情報マスタ514に端末IDが有ったことを示す場合に、端末認証が成功したことを示す情報をWEBサーバ102に送信する機能を有する。ユーザ認証機能410は、WEBサーバ102から端末情報(例えば、端末ID),ユーザ情報(例えば、ユーザID、パスワード)を含むユーザ認証要求を受けて、DBサーバ104にユーザID、パスワードの有無確認要求を送信し、その応答結果がユーザID、パスワードがユーザ情報マスタ513に有ったことを示す場合に、ユーザIDと端末IDから排他キーを生成する機能を有する。また、ユーザ認証機能410は、生成した排他キーの有無確認要求をDBサーバ104に送信し、その応答結果が排他キーが排他キーテーブル515に有ったことを示す場合に、端末IDと排他キーの登録要求をDBサーバ104に送信するとともに、ユーザ認証が成功したことを示す情報をWEBサーバ102に送信する機能を有する。
【0017】
図5は、DBサーバ104のハードウェア構成例を示す図である。DBサーバ104は、記憶部501と、制御部502と、メモリ503と、表示部504と、通信部505と、入力部506とを具備する。各部はバス(BUS)によって接続されている。記憶部501には、端末ID有無確認機能508、ユーザID、パスワード有無確認機能509、排他キー有無確認機能510、排他キー登録機能511及び排他キー削除機能512からなるプログラムと、ユーザ情報マスタ513と、端末情報マスタ514と、排他キーテーブル515とが格納されている。端末ID有無確認機能508は、WEBサーバ102からの端末ID有無確認要求を受けて、端末IDに基づき端末情報マスタ514を検索し、端末IDの有無を確認し、その結果をアプリケーションサーバ103に送信する機能を有する。ユーザID、パスワード有無確認機能509は、アプリケーションサーバ103からのユーザID、パスワードの有無確認要求を受けて、ユーザ情報マスタ513を参照し、ユーザID、パスワードの有無を確認し、その結果をアプリケーションサーバ103に送信する機能を有する。排他キー有無確認機能510は、アプリケーションサーバ103からの排他キーの有無確認要求を受けて、排他キーテーブル515を参照し、排他キーの有無を確認し、その結果をアプリケーションサーバ103に送信する機能を有する。排他キー登録機能511は、アプリケーション103からの端末ID、排他キーの登録要求を受けて、これらを対応付けて排他キーテーブル515に登録する機能を有する。排他キー削除機能512は、アプリケーションサーバ103からの排他キーの削除要求を受けて、排他キーテーブル515を参照し、排他キーの有無を確認し、受信した排他キーが有った場合に、排他キーテーブル515から当該排他キーを有するレコードを削除し、その結果をアプリケーションサーバ103に送信する機能を有する。
【0018】
図6は、DBサーバ104が具備するユーザ情報マスタ513のデータ構成例を示す図である。ユーザ情報マスタ513は、本実施例に係るWEBシステム100を使用するユーザの情報を格納するテーブルである。図6に示すように、ユーザ情報マスタ513は、ユーザID601と、パスワード602と、氏名603と、部署ID604と、職員番号605とをそれぞれ対応付けて記憶する。ユーザ情報マスタ513は、ユーザ端末101の増減に伴い更新される。
【0019】
図7は、DBサーバ104が具備する端末情報マスタ514のデータ構成例を示す図である。端末情報マスタ514は、ユーザが使用するユーザ端末を識別する情報を格納するテーブルである。図7に示すように、端末情報マスタ514は、端末ID701と、端末NO(端末番号)702とをそれぞれ対応付けて記憶する。端末情報マスタ514は、ユーザ端末101の増減に伴い更新される。
【0020】
図8は、DBサーバ104が具備する排他キーテーブル515のデータ構成例を示す図である。排他キーテーブル515は、ユーザ端末101のログイン状態を管理するテーブルである。図8に示すように、排他キーテーブル515は、端末情報(例えば、端末ID)801と、排他キー802とをそれぞれ対応付けて記憶する。排他キー802は、端末IDとユーザIDから構成される。排他キーテーブル515は、アプリケーションサーバ103のユーザ認証機能410により生成した排他キーが排他キーテーブル515に無かった場合やユーザ端末101がログアウトした場合に更新される。
【0021】
図9は、WEBサーバ102が具備する端末一覧ファイル314のデータ構成例を示す図である。端末一覧ファイル314には、複数の端末IDが記載されている。端末一覧ファイル314は、アプリケーションを使用するユーザ端末101の増減に伴い更新される。
【0022】
図10は、WEBサーバ102が具備するログイン情報ファイル315のデータ構成例を示す図である。図10に示すように、ログイン情報ファイル315には、複数のログイン情報が記載されている。本実施例では、ログイン情報は、セッションIDと同じように端末IDとユーザIDから構成される。ログイン情報ファイル315は、ユーザ端末101のWEBサーバ102への初回接続時における、WEBサーバ102のセッション有効性確認機能309が、端末一覧ファイル314から取得した端末IDに関して、ログイン情報ファイル315に無い場合や排他キー削除要求に対して排他キー削除に成功した場合に更新される。
【0023】
図11に示すログイン画面1100には、ユーザ端末101の表示部204に表示される、ユーザがユーザID、パスワードを入力する画面の例を示す。WEBサーバ102が、アプリケーションサーバ103から受信した端末認証結果が成功を示す場合に、ユーザ端末に送信する画面である。ログイン画面1100において、ユーザが、入力部1101にユーザIDを入力し、入力部1102にパスワードを入力し、ログインボタン1103を押下する操作を行うと、図15に示す処理が開始する。ログイン画面1100において、ユーザが、入力部1101にユーザIDを入力し、入力部1102にパスワードを入力し、ログアウトボタン1104を押下する操作を行うと、図15に示す処理が開始する。また、図19に示す処理が開始する。
【0024】
図12と図13は、WEBサーバ102が具備するセッション有効性確認機能309とログイン画面送信機能311の処理を示すフローチャートである。先ず、セッション有効性確認機能309は、ユーザ端末101からのWEBサーバ102へのアクセスを検知し、セッションIDを取得し(ステップS1201)、記憶部301から端末一覧ファイル314の読み出し処理を実行する(ステップS1202)。読み出し成功の場合(ステップS1202でYes)、セッション有効性確認機能309は、端末一覧ファイル314から端末IDを取得する(ステップS1203)。一方、読み出し失敗の場合(ステップS1202でNo)、セッション有効性確認機能309は、エラー情報をネットワーク105を介してユーザ端末101に送信し(ステップS1209)、処理を終了する。
【0025】
セッション有効性確認機能309は、ステップS1203で取得した端末IDに関して、ログイン情報ファイル315にログイン情報が記載されているかどうかを確認する(ステップS1204)。ログイン情報が有る場合(ステップS1204でYes)、セッション有効性確認機能309は、ログイン情報ファイル315からそのログイン情報を読み出す(ステップS1205)。次に、セッション有効性確認機能309は、ステップS1201で取得したセッションIDとステップS1205で読み出したログイン情報とを比較し、同じかどうかを判定する(ステップS1206)。この判定より、両者が同じでなかった場合(ステップS1206でNo)、セッション有効性確認機能309は、ステップS1203へ戻る。
【0026】
一方、ステップS1206の判定により、両者が同じであった場合、ログイン画面送信機能311が、端末IDを含む端末認証要求をネットワーク105を介してアプリケーションサーバ103に送信する(ステップS1301)。次に、ログイン画面送信機能311は、アプリケーションサーバ103から端末認証結果をネットワーク105を介して受信する(ステップS1302)。ログイン画面送信機能311は、端末認証結果が成功を示す場合、ログイン画面(図11)をネットワーク105を介してユーザ端末101に送信し(ステップ1304)、処理を終了する。一方、ステップS1303において、端末認証結果が失敗を示す場合、ログイン画面送信機能311は、エラー情報をネットワーク105を介してユーザ端末101に送信し(ステップS1305)、処理を終了する。
【0027】
また、ステップS1204において、ログイン情報が無い場合(ステップS1204でNo)、セッション有効性確認機能309は、ステップS1201において取得したセッションIDを、ログイン情報として、ログイン情報ファイル315に書き込む(ステップS1207)。ステップS1207の処理後、ログイン画面送信機能311が、ステップS1301以降の処理を行う。
【0028】
図14は、アプリケーションサーバ103が具備する端末認証機能409の処理を示すフローチャートである。先ず、端末認証機能409は、WEBサーバ102から端末IDを端末認証要求をネットワーク105を介して受信する(ステップS1401)。次に、端末認証機能409は、端末IDを含む端末ID有無確認要求をネットワーク105を介してDBサーバ104に送信する(ステップS1402)。DBサーバ104では、端末ID有無確認機能508により、端末IDを含む端末ID有無確認要求を受信すると、受信した端末IDに基づき端末情報マスタ514を検索し、端末IDの有無を確認し、その結果をネットワーク105を介してアプリケーションサーバ103に送信する。端末認証機能409は、DBサーバ104から端末ID有無確認結果をネットワーク105を介して受信する(ステップS1403)。端末認証機能409は、端末ID有無確認結果から、DBサーバ104で保持する端末情報マスタ514に端末IDが有ったかどうかを判定する(ステップS1404)。この判定により、端末情報マスタ514に端末IDが有った場合(ステップS1404でYes)、端末認証機能409は、端末認証結果(認証成功)をネットワーク105を介してWEBサーバ102に送信し(ステップS1405)、処理を終了する。一方、ステップS1404の判定により、端末情報マスタ514に端末IDが無かった場合、端末認証機能409は、認証結果(認証失敗)をネットワーク105を介してWEBサーバ102に送信し(ステップS1406)、処理を終了する。
【0029】
図15と図16は、WEBサーバ102が具備するセッション有効性確認機能309と起動種別確認機能310と業務画面送信機能312の処理を示すフローチャートである。先ず、起動種別確認機能310は、ユーザ端末101からのWEBサーバ102へのログインを検知し、端末IDと、ログイン時にユーザ端末101にて入力されたユーザID、パスワードをネットワーク105を介して受信する(ステップS1501)。
【0030】
次に、セッション有効性確認機能309が、記憶部301から端末一覧ファイル314の読み出し処理を実行する(ステップS1502)。読み出し成功の場合(ステップS1502でYes)、セッション有効性確認機能309は、端末一覧ファイル314から端末IDを取得する(ステップS1503)。一方、読み出し失敗の場合(ステップS1502でNo)、セッション有効性確認機能309は、エラー情報をネットワーク105を介してユーザ端末101に送信し(ステップS1508)、処理を終了する。
【0031】
次に、セッション有効性確認機能309は、ステップS1503で取得した端末IDに関して、ログイン情報ファイル315にログイン情報が記載されているかどうかを確認する(ステップS1504)。ログイン情報ファイル315にログイン情報が記載されている場合(ステップS1504でYes)、セッション有効性確認機能309は、ログイン情報ファイル315からそのログイン情報を読み出す(ステップS1505)。一方、ログイン情報ファイル315にログイン情報が記載されていない場合(ステップS1504でNo)、セッション有効性確認機能309は、エラー情報をネットワーク105を介してユーザ端末101に送信し(ステップS1507)、処理を終了する。ステップS1505の処理後、セッション有効性確認機能309は、ステップS1201(図12)で取得したセッションIDとステップS1505で読み出したログイン情報とを比較し、同じかどうかを判定する(ステップS1506)。この判定より、両者が同じでなかった場合(ステップS1506でNo)、セッション有効性確認機能309は、エラー情報をネットワーク105を介してユーザ端末101に送信し(ステップS1507)、処理を終了する。
【0032】
一方、ステップS1506の判定により、両者が同じであった場合、業務画面送信機能312が、端末ID、ユーザID、パスワードを含むユーザ認証要求をネットワーク105を介してアプリケーションサーバ103に送信する(ステップS1601)。次に、業務画面送信機能312は、アプリケーションサーバ103からユーザ認証結果をネットワーク105を介して受信する(ステップS1602)。業務画面送信機能312は、ユーザ認証結果が成功を示す場合、業務画面(アプリケーション画面)をネットワーク105を介してユーザ端末101に送信し(ステップ1603)、処理を終了する。一方、ステップS1602において、ユーザ認証結果がエラーやシステムログイン中であることを示す場合、業務画面送信機能312は、エラーやシステムログイン中であることを示す情報をネットワーク105を介してユーザ端末101に送信し(ステップS1604)、処理を終了する。
【0033】
図17は、アプリケーションサーバ103が具備するユーザ認証機能410の処理を示すフローチャートである。先ず、ユーザ認証機能410は、WEBサーバ102から端末ID、ユーザID601、パスワード602を含むユーザ認証要求をネットワーク105を介して受信する(ステップS1701)。次に、ユーザ認証機能410は、ユーザID、パスワードの有無確認要求をネットワーク105を介してDBサーバ104に送信する(ステップS1702)。次に、ユーザ認証機能410は、DBサーバ104からユーザID、パスワードの有無確認結果をネットワーク105を介して受信する(ステップS1703)。ユーザ認証機能410は、ユーザID、パスワードの有無確認結果から、DBサーバ104で保持するユーザ情報マスタ513にユーザIDとパスワードが有ったかどうかを判定する(ステップS1704)。この判定により、ユーザ情報マスタ513にユーザIDとパスワードが有った場合、ユーザ認証機能410は、ユーザIDと端末IDから排他キーを生成する(ステップS1705)。一方、ステップS1703の判定により、ユーザ情報マスタ513にユーザIDとパスワードが無かった場合、ユーザ認証機能410は、エラー情報をネットワーク105を介してWEBサーバ102に送信し(ステップS1710)、処理を終了する。
【0034】
ステップS1705の処理後、ユーザ認証機能410は、ステップS1705で生成した排他キーの有無確認要求をネットワーク105を介してDBサーバ104に送信する(ステップS1706)。次に、ユーザ認証機能410は、DBサーバ104から排他キーの有無確認結果をネットワーク105を介して受信する(ステップS1707)。ユーザ認証機能410は、排他キーの有無確認結果から、ステップS1705で生成した排他キーがDBサーバ104で保持する排他キーテーブル515に有ったかどうかを判定する(ステップS1708)。排他キーが排他キーテーブル515に有った場合(ステップS1708でYes)、ユーザ認証機能410は、例えば、エラーやシステムログイン中でことを示す情報をユーザ認証結果としてネットワーク105を介してWEBサーバ102に送信し(ステップS1709)、処理を終了する。これによって、第3者によるWEBシステムへの不正な操作を防止できる。
【0035】
一方、排他キーが排他キーテーブル515に無かった場合(ステップS1708でNo)、ユーザ認証機能410は、端末IDとステップS1705で生成した排他キーの登録要求をネットワーク105を介してDBサーバ104に送信し(ステップS1711)、ユーザ認証結果(認証成功)をネットワーク105を介してWEBサーバ102に送信し(ステップS1712)、処理を終了する。
【0036】
図18は、DBサーバ104が具備するユーザID、パスワード有無確認機能509、排他キー有無確認機能510、排他キー登録機能511の処理を示すフローチャートである。先ず、ユーザID、パスワード有無確認機能509が、アプリケーションサーバ103からユーザID、パスワードの有無確認要求をネットワーク105を介して受信すると(ステップS1801)、ユーザ情報マスタ513を参照し、受信したユーザID及びパスワードの有無を確認し(ステップS1802)、その結果をネットワーク105を介してアプリケーションサーバ103に送信する(ステップS1803)。
【0037】
また、排他キー有無確認機能410が、アプリケーションサーバ103から排他キーの有無確認要求をネットワーク105を介して受信すると(ステップS1804)、排他キーテーブル515を参照し、受信した排他キーの有無を確認し(ステップS1805)、その結果をネットワーク105を介してアプリケーションサーバ103に送信する(ステップS1806)。
【0038】
また、排他キー登録機能511が、アプリケーションサーバ103から端末ID及び排他キーの登録要求をネットワーク105を介して受信すると、受信した端末IDと排他キーをそれぞれ対応付けて排他キーテーブル515に登録する(ステップS1807)。
【0039】
図19と図20は、WEBサーバ102が具備するセッション有効性確認機能309と起動種別確認機能310とログイン情報削除機能313の処理を示すフローチャートである。先ず、起動種別確認機能310は、ユーザ端末101からのWEBサーバ102へのログアウトを検知する(ステップS1901)。
【0040】
次に、セッション有効性確認機能309が、記憶部301から端末一覧ファイル314の読み出し処理を実行する(ステップS1902)。読み出し成功の場合(ステップS1902でYes)、セッション有効性確認機能309は、端末一覧ファイル314から端末IDを取得する(ステップS1903)。一方、読み出し失敗の場合(ステップS1902でNo)、セッション有効性確認機能309は、エラー情報をネットワーク105を介してユーザ端末101に送信し(ステップS1908)、処理を終了する。
【0041】
次に、セッション有効性確認機能309は、ステップS1903で取得した端末IDに関して、ログイン情報ファイル315にログイン情報が記載されているかどうかを確認する(ステップS1904)。ログイン情報ファイル315にログイン情報が記載されている場合(ステップS1904でYes)、セッション有効性確認機能309は、ログイン情報ファイル315からそのログイン情報を読み出す(ステップS1905)。一方、ログイン情報ファイル315にログイン情報が記載されていない場合(ステップS1904でNo)、セッション有効性確認機能309は、エラー情報をネットワーク105を介してユーザ端末101に送信し(ステップS1907)、処理を終了する。ステップS1905の処理後、セッション有効性確認機能309は、ステップS1201(図12)で取得したセッションIDとステップS1905で読み出したログイン情報とを比較し、同じかどうかを判定する(ステップS1906)。この判定より、両者が同じでなかった場合(ステップS1906でNo)、セッション有効性確認機能309は、エラー情報をネットワーク105を介してユーザ端末101に送信し(ステップS1907)、処理を終了する。
【0042】
一方、ステップS1906の判定により、両者が同じであった場合、ログイン情報削除機能313が、排他キー削除要求をネットワーク105を介してアプリケーションサーバ103に送信する(ステップS2001)。次に、ログイン情報削除機能313は、アプリケーションサーバ103から排他キー削除結果をネットワーク105を介して受信し(ステップS2002)、その結果から排他キーの削除が成功したかどうかを判定する(ステップS2003)。この判定により、排他キー削除結果が排他キーの削除に成功したことを示す場合(ステップS2003で成功)、ログイン情報削除機能313は、ログイン情報ファイル315から、ステップS1905で読み出したログイン情報を削除し(ステップS2004)、終了メッセージをネットワーク105を介してユーザ端末101に送信し(ステップS2005)、処理を終了する。
【0043】
また、ステップS2003の判定により、排他キー削除結果が排他キーの削除に失敗した(排他キーが排他キーテーブル515に無かった)ことを示す場合、ログイン情報削除機能313は、エラー情報をネットワーク105を介してユーザ端末101に送信し(ステップS2006)、処理を終了する。
【0044】
図21は、アプリケーションサーバ103が具備する排他キー削除要求及び削除結果送受信機能411の処理を示すフローチャートである。先ず、排他キー削除要求及び削除結果送受信機能411は、WEBサーバ102から排他キー削除要求をネットワーク105を介して受信し(ステップS2101)、受信した排他キー削除要求をネットワーク10を介してDBサーバ104に送信する(ステップS2102)。次に、排他キー削除要求及び削除結果送受信機能411は、DBサーバ104から、排他キーの削除に成功したか、排他キーの削除に失敗した(排他キーが排他キーテーブル515に無かった)かを示す排他キー削除結果をネットワーク105を介して受信し(ステップS2103)、受信した排他キー削除結果をネットワーク105を介してWEBサーバ102に送信し(ステップS2104)、処理を終了する。
【0045】
図22は、DBサーバ104が具備する排他キー削除機能512の処理を示すフローチャートである。先ず、排他キー削除機能512は、アプリケーションサーバ103から排他キー削除要求をネットワーク105を介して受信する(ステップS2201)。次に、排他キー削除機能512は、排他キーテーブル515を参照し、受信した排他キーの有無を確認する(ステップS2202)。受信した排他キーが排他テーブル515に有る場合(ステップS2203でYes)、排他キー削除機能512は、排他キーテーブル515から当該排他キーを有するレコードを削除し(ステップS2204)、排他キーの削除に成功したことを示す排他キー削除結果をネットワーク105を介してアプリケーションサーバ103に送信する(ステップ2205)。一方、受信した排他キーが排他テーブル515に無い場合(ステップS2203でNo)、排他キーの削除に失敗した(排他キーが排他キーテーブル515に無かった)ことを示す排他キー削除結果をネットワーク105を介してアプリケーションサーバ103に送信する(ステップS2205)。
【0046】
以上本発明の一実施例について説明した。以上説明した実施例によれば、ユーザ端末がWEBシステムにログイン中に予測できないシステム障害が発生しても、第3者によるWEBシステムの不正操作を防止できる。また、システム障害時に、ユーザ端末のWEBシステムへのログイン状況を効率良く管理・把握でき、かつその管理者による対応も容易となる。
【0047】
なお、本発明はこれに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。
【符号の説明】
【0048】
101・・・PC、102・・・WEBサーバ、103・・・アプリケーションサーバ、104・・・DBサーバ。
【技術分野】
【0001】
本発明は、WEBシステムに係わり、特に、第3者によるWEBシステムの不正操作を防止する技術に関する。
【背景技術】
【0002】
WEBサーバを使用したシステムは、国内どこにでもあるシステム形態であり、WEBブラウザさえあれば、URLを指定することにより、WEBサーバへのアクセスが可能となる。そこで、アクセスの際のユーザ認証に着目し、ログイン後の予期しないシステム障害時のアクセス情報(ログイン情報)のチェック処理機能をシステムに持たせ、こうした機能をもとに処理された結果をアクセス時の再ログインをする際に活用すれば、適正なログインを実施することができ、システム障害時のシステム運用管理者の負荷を軽減できる可能性がある。
【0003】
関連する技術として、システムログイン時の情報を保持し、その情報をもとにユーザ端末の異常操作を検出する技術が知られている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2010−250502公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
近年、WEBシステムにおいて、不正アクセス防止の観点から、WEBシステムを構成するWEBサーバとアプリケーションサーバの各々で、ユーザ認証処理を行っている。
【0006】
そのユーザ認証処理においては、WEBサーバとアプリケーションサーバがアクセスするデータベースサーバ(以下、DBサーバと記す)の各々で、ユーザID、パスワード等のユーザ情報(認証情報)の管理を行っている。
【0007】
一方で、ユーザ端末がWEBシステムにログイン中に予測できないシステム障害(例えば、システムダウン)が発生することがある。この場合、ログイン情報がWEBサーバ又はDBサーバに残ったままの状態となり、第3者によりアプリケーションを不正に操作されてしまう可能性がある。したがって、従来、システム管理者によりWEBサーバ又はDBサーバに残ったログイン情報を削除する等の対応が必要であり、また、この対応には時間を要するため、システム管理者によって対応が完了するまでの間、第3者によるWEBシステムの不正操作が可能となり、セキュリティ上問題視されていた。
【0008】
本発明は、このような事情に鑑みてなされたもので、ユーザ端末がWEBシステムにログイン中に予測できないシステム障害が発生しても、第3者によるWEBシステムの不正操作を防止する技術を提供することを課題とする。
【課題を解決するための手段】
【0009】
上記課題を解決するための一手段について説明する。本発明は、複数の端末、WEBサーバ、アプリケーションサーバ及びデータベースサーバがネットワークに接続されて構成されるWEBシステムである。前記WEBサーバは、前記端末のログイン情報と端末情報を記憶する記憶部と、第1の端末からセッション情報と認証情報を前記ネットワークを介して受信し、該受信したセッション情報と前記記憶部に記憶されている当該第1の端末のログイン情報が同一の場合、前記記憶部から取得した第1の端末情報と前記認証情報を含む認証要求を前記ネットワークを介して前記アプリケーションサーバに送信し、前記アプリケーションサーバから認証結果を前記ネットワークを介して受信し、前記認証結果がエラーやログイン中であることを示す場合には、この旨を前記ネットワークを介して前記第1の端末に送信する第1の制御部と、を有することを特徴とする。前記アプリケーションサーバは、前記WEBサーバから前記認証要求を前記ネットワークを介して受信し、前記認証情報を前記データベースサーバで保持している場合に、前記認証情報と前記第1の端末情報を用いて排他キー情報を生成し、該排他キー情報を前記データベースサーバで保持している場合に、認証結果としてエラーやログイン中であることを示す情報を前記ネットワークを介して前記WEBサーバに送信する第2の制御部を有する、ことを特徴とする。
【発明の効果】
【0010】
本発明によれば、ユーザ端末がWEBシステムにログイン中に予測できないシステム障害が発生しても、第3者によるWEBシステムの不正操作を防止できる。
【図面の簡単な説明】
【0011】
【図1】本実施例に係るWEBシステム100の全体構成例を示す図である。
【図2】ユーザ端末101のハードウェア構成例を示す図である。
【図3】WEBサーバ102のハードウェア構成例を示す図である。
【図4】アプリケーションサーバ103のハードウェア構成例を示す図である。
【図5】DBサーバ104のハードウェア構成例を示す図である。
【図6】DBサーバ104が具備するユーザ情報マスタ513のデータ構成例を示す図である。
【図7】DBサーバ104が具備する端末情報マスタ514のデータ構成例を示す図である。
【図8】DBサーバ104が具備する排他キーテーブル515のデータ構成例を示す図である。
【図9】WEBサーバ102が具備する端末一覧ファイル314のデータ構成例を示す図である。
【図10】WEBサーバ102が具備するログイン情報ファイル315のデータ構成例を示す図である。
【図11】ユーザ端末101の表示部204に表示されるログイン画面1100の例を示す図である。
【図12】WEBサーバ102が具備するセッション有効性確認機能309とログイン画面送信機能311の処理を示すフローチャートである。
【図13】同じく、WEBサーバ102が具備するセッション有効性確認機能309とログイン画面送信機能311の処理を示すフローチャートである。
【図14】アプリケーションサーバ103が具備する端末認証機能409の処理を示すフローチャートである。
【図15】WEBサーバ102が具備するセッション有効性確認機能309と起動種別確認機能310と業務画面送信機能312の処理を示すフローチャートである。
【図16】同じく、WEBサーバ102が具備するセッション有効性確認機能309と起動種別確認機能310と業務画面送信機能312の処理を示すフローチャートである。
【図17】アプリケーションサーバ103が具備するユーザ認証機能410の処理を示すフローチャートである。
【図18】DBサーバ104が具備するユーザID、パスワード有無確認機能509、排他キー有無確認機能510、排他キー登録機能511の処理を示すフローチャートである。
【図19】WEBサーバ102が具備するセッション有効性確認機能309と起動種別確認機能310とログイン情報削除機能313の処理を示すフローチャートである。
【図20】同じく、WEBサーバ102が具備するセッション有効性確認機能309と起動種別確認機能310とログイン情報削除機能313の処理を示すフローチャートである。
【図21】アプリケーションサーバ103が具備する排他キー削除要求及び削除結果送受信機能411の処理を示すフローチャートである。
【図22】DBサーバ104が具備する排他キー削除機能512の処理を示すフローチャートである。
【発明を実施するための形態】
【0012】
以下、本発明の一実施例について、図面を参照して詳細に説明する。
【0013】
図1は、本実施例に係るWEBシステム100の全体構成例を示す図である。本実施例に係るWEBシステム100は、複数のユーザ端末101と、WEBサーバ102と、アプリケーションサーバ103と、DBサーバ104とがインターネット等のネットワーク105に接続されて構成されるコンピュータネットワークシステムである。
【0014】
図2は、ユーザ端末101のハードウェア構成例を示す図である。ユーザ端末101は、一般的なコンピュータにより実現でき、記憶部201と、制御部202と、メモリ203と、表示部204と、通信部205と、入力部206とを具備する。各部はバス(BUS)によって接続されている。記憶部201には、業務起動用URL送信機能207、画面表示機能208及びログイン情報送信機能209からなるプログラムが格納されている。業務起動用URL送信機能207は、WEBサーバ102へURLを送信してアクセスする機能を有する。画面表示機能208は、WEBサーバ102へURLを送信した結果(応答)を表示する機能を有する。ログイン情報送信機能209は、入力されたユーザID、パスワードをWEBサーバ102へ送信する機能を有する。
【0015】
図3は、WEBサーバ102のハードウェア構成例を示す図である。WEBサーバ102は、記憶部301と、制御部302と、メモリ303と、表示部304と、通信部305と、入力部306とを具備する。各部はバス(BUS)によって接続されている。記憶部301には、セッション有効性確認機能309、起動種別確認機能310、ログイン画面送信機能311、業務画面送信機能312及びログイン情報削除機能313からなるプログラムと、端末一覧ファイル314と、ログイン情報ファイル315とが格納されている。セッション有効性確認機能309は、ユーザ端末101からのアクセスを検知し、セッション情報(セッションID)を取得し、そのセッションの有効性を確認する機能を有する。起動種別確認機能310は、ユーザ端末101からのアクセスがログインかログアウトかを確認する機能を有する。ログイン画面送信機能311は、アプリケーションサーバ103に端末認証要求を送信し、その応答結果(端末認証結果)が成功を示す場合に、ログイン画面をユーザ端末101に送信する機能を有する。業務画面送信機能312は、アプリケーションサーバ103にユーザ認証要求を送信し、その応答結果(ユーザ認証結果)が成功を示す場合に、業務画面(アプリケーション画面)をユーザ端末101に送信する機能を有する。ログイン情報削除機能313は、プリケーションサーバ103に排他キー削除要求を送信し、その応答結果(排他キー削除結果)が排他キーの削除に成功したことを示す場合に、ログイン情報ファイル315からログイン情報を削除する機能を有する。なお、ユーザ端末101に送信する業務画面は一例であり、その他のアプリケーション画面であっても良い。
【0016】
図4は、アプリケーションサーバ103のハードウェア構成例を示す図である。アプリケーションサーバ103は、記憶部401と、制御部402と、メモリ403と、表示部404と、通信部405と、入力部406とを具備する。各部はバス(BUS)によって接続されている。記憶部401には、端末認証機能409、ユーザ認証機能410、排他キー削除要求及び削除結果送受信機能411からなるプログラムが格納されている。端末認証機能409は、WEBサーバ102から端末情報(例えば、端末ID)を含む端末認証要求を受けて、DBサーバ104に端末IDの有無確認要求を送信し、その応答結果が端末情報マスタ514に端末IDが有ったことを示す場合に、端末認証が成功したことを示す情報をWEBサーバ102に送信する機能を有する。ユーザ認証機能410は、WEBサーバ102から端末情報(例えば、端末ID),ユーザ情報(例えば、ユーザID、パスワード)を含むユーザ認証要求を受けて、DBサーバ104にユーザID、パスワードの有無確認要求を送信し、その応答結果がユーザID、パスワードがユーザ情報マスタ513に有ったことを示す場合に、ユーザIDと端末IDから排他キーを生成する機能を有する。また、ユーザ認証機能410は、生成した排他キーの有無確認要求をDBサーバ104に送信し、その応答結果が排他キーが排他キーテーブル515に有ったことを示す場合に、端末IDと排他キーの登録要求をDBサーバ104に送信するとともに、ユーザ認証が成功したことを示す情報をWEBサーバ102に送信する機能を有する。
【0017】
図5は、DBサーバ104のハードウェア構成例を示す図である。DBサーバ104は、記憶部501と、制御部502と、メモリ503と、表示部504と、通信部505と、入力部506とを具備する。各部はバス(BUS)によって接続されている。記憶部501には、端末ID有無確認機能508、ユーザID、パスワード有無確認機能509、排他キー有無確認機能510、排他キー登録機能511及び排他キー削除機能512からなるプログラムと、ユーザ情報マスタ513と、端末情報マスタ514と、排他キーテーブル515とが格納されている。端末ID有無確認機能508は、WEBサーバ102からの端末ID有無確認要求を受けて、端末IDに基づき端末情報マスタ514を検索し、端末IDの有無を確認し、その結果をアプリケーションサーバ103に送信する機能を有する。ユーザID、パスワード有無確認機能509は、アプリケーションサーバ103からのユーザID、パスワードの有無確認要求を受けて、ユーザ情報マスタ513を参照し、ユーザID、パスワードの有無を確認し、その結果をアプリケーションサーバ103に送信する機能を有する。排他キー有無確認機能510は、アプリケーションサーバ103からの排他キーの有無確認要求を受けて、排他キーテーブル515を参照し、排他キーの有無を確認し、その結果をアプリケーションサーバ103に送信する機能を有する。排他キー登録機能511は、アプリケーション103からの端末ID、排他キーの登録要求を受けて、これらを対応付けて排他キーテーブル515に登録する機能を有する。排他キー削除機能512は、アプリケーションサーバ103からの排他キーの削除要求を受けて、排他キーテーブル515を参照し、排他キーの有無を確認し、受信した排他キーが有った場合に、排他キーテーブル515から当該排他キーを有するレコードを削除し、その結果をアプリケーションサーバ103に送信する機能を有する。
【0018】
図6は、DBサーバ104が具備するユーザ情報マスタ513のデータ構成例を示す図である。ユーザ情報マスタ513は、本実施例に係るWEBシステム100を使用するユーザの情報を格納するテーブルである。図6に示すように、ユーザ情報マスタ513は、ユーザID601と、パスワード602と、氏名603と、部署ID604と、職員番号605とをそれぞれ対応付けて記憶する。ユーザ情報マスタ513は、ユーザ端末101の増減に伴い更新される。
【0019】
図7は、DBサーバ104が具備する端末情報マスタ514のデータ構成例を示す図である。端末情報マスタ514は、ユーザが使用するユーザ端末を識別する情報を格納するテーブルである。図7に示すように、端末情報マスタ514は、端末ID701と、端末NO(端末番号)702とをそれぞれ対応付けて記憶する。端末情報マスタ514は、ユーザ端末101の増減に伴い更新される。
【0020】
図8は、DBサーバ104が具備する排他キーテーブル515のデータ構成例を示す図である。排他キーテーブル515は、ユーザ端末101のログイン状態を管理するテーブルである。図8に示すように、排他キーテーブル515は、端末情報(例えば、端末ID)801と、排他キー802とをそれぞれ対応付けて記憶する。排他キー802は、端末IDとユーザIDから構成される。排他キーテーブル515は、アプリケーションサーバ103のユーザ認証機能410により生成した排他キーが排他キーテーブル515に無かった場合やユーザ端末101がログアウトした場合に更新される。
【0021】
図9は、WEBサーバ102が具備する端末一覧ファイル314のデータ構成例を示す図である。端末一覧ファイル314には、複数の端末IDが記載されている。端末一覧ファイル314は、アプリケーションを使用するユーザ端末101の増減に伴い更新される。
【0022】
図10は、WEBサーバ102が具備するログイン情報ファイル315のデータ構成例を示す図である。図10に示すように、ログイン情報ファイル315には、複数のログイン情報が記載されている。本実施例では、ログイン情報は、セッションIDと同じように端末IDとユーザIDから構成される。ログイン情報ファイル315は、ユーザ端末101のWEBサーバ102への初回接続時における、WEBサーバ102のセッション有効性確認機能309が、端末一覧ファイル314から取得した端末IDに関して、ログイン情報ファイル315に無い場合や排他キー削除要求に対して排他キー削除に成功した場合に更新される。
【0023】
図11に示すログイン画面1100には、ユーザ端末101の表示部204に表示される、ユーザがユーザID、パスワードを入力する画面の例を示す。WEBサーバ102が、アプリケーションサーバ103から受信した端末認証結果が成功を示す場合に、ユーザ端末に送信する画面である。ログイン画面1100において、ユーザが、入力部1101にユーザIDを入力し、入力部1102にパスワードを入力し、ログインボタン1103を押下する操作を行うと、図15に示す処理が開始する。ログイン画面1100において、ユーザが、入力部1101にユーザIDを入力し、入力部1102にパスワードを入力し、ログアウトボタン1104を押下する操作を行うと、図15に示す処理が開始する。また、図19に示す処理が開始する。
【0024】
図12と図13は、WEBサーバ102が具備するセッション有効性確認機能309とログイン画面送信機能311の処理を示すフローチャートである。先ず、セッション有効性確認機能309は、ユーザ端末101からのWEBサーバ102へのアクセスを検知し、セッションIDを取得し(ステップS1201)、記憶部301から端末一覧ファイル314の読み出し処理を実行する(ステップS1202)。読み出し成功の場合(ステップS1202でYes)、セッション有効性確認機能309は、端末一覧ファイル314から端末IDを取得する(ステップS1203)。一方、読み出し失敗の場合(ステップS1202でNo)、セッション有効性確認機能309は、エラー情報をネットワーク105を介してユーザ端末101に送信し(ステップS1209)、処理を終了する。
【0025】
セッション有効性確認機能309は、ステップS1203で取得した端末IDに関して、ログイン情報ファイル315にログイン情報が記載されているかどうかを確認する(ステップS1204)。ログイン情報が有る場合(ステップS1204でYes)、セッション有効性確認機能309は、ログイン情報ファイル315からそのログイン情報を読み出す(ステップS1205)。次に、セッション有効性確認機能309は、ステップS1201で取得したセッションIDとステップS1205で読み出したログイン情報とを比較し、同じかどうかを判定する(ステップS1206)。この判定より、両者が同じでなかった場合(ステップS1206でNo)、セッション有効性確認機能309は、ステップS1203へ戻る。
【0026】
一方、ステップS1206の判定により、両者が同じであった場合、ログイン画面送信機能311が、端末IDを含む端末認証要求をネットワーク105を介してアプリケーションサーバ103に送信する(ステップS1301)。次に、ログイン画面送信機能311は、アプリケーションサーバ103から端末認証結果をネットワーク105を介して受信する(ステップS1302)。ログイン画面送信機能311は、端末認証結果が成功を示す場合、ログイン画面(図11)をネットワーク105を介してユーザ端末101に送信し(ステップ1304)、処理を終了する。一方、ステップS1303において、端末認証結果が失敗を示す場合、ログイン画面送信機能311は、エラー情報をネットワーク105を介してユーザ端末101に送信し(ステップS1305)、処理を終了する。
【0027】
また、ステップS1204において、ログイン情報が無い場合(ステップS1204でNo)、セッション有効性確認機能309は、ステップS1201において取得したセッションIDを、ログイン情報として、ログイン情報ファイル315に書き込む(ステップS1207)。ステップS1207の処理後、ログイン画面送信機能311が、ステップS1301以降の処理を行う。
【0028】
図14は、アプリケーションサーバ103が具備する端末認証機能409の処理を示すフローチャートである。先ず、端末認証機能409は、WEBサーバ102から端末IDを端末認証要求をネットワーク105を介して受信する(ステップS1401)。次に、端末認証機能409は、端末IDを含む端末ID有無確認要求をネットワーク105を介してDBサーバ104に送信する(ステップS1402)。DBサーバ104では、端末ID有無確認機能508により、端末IDを含む端末ID有無確認要求を受信すると、受信した端末IDに基づき端末情報マスタ514を検索し、端末IDの有無を確認し、その結果をネットワーク105を介してアプリケーションサーバ103に送信する。端末認証機能409は、DBサーバ104から端末ID有無確認結果をネットワーク105を介して受信する(ステップS1403)。端末認証機能409は、端末ID有無確認結果から、DBサーバ104で保持する端末情報マスタ514に端末IDが有ったかどうかを判定する(ステップS1404)。この判定により、端末情報マスタ514に端末IDが有った場合(ステップS1404でYes)、端末認証機能409は、端末認証結果(認証成功)をネットワーク105を介してWEBサーバ102に送信し(ステップS1405)、処理を終了する。一方、ステップS1404の判定により、端末情報マスタ514に端末IDが無かった場合、端末認証機能409は、認証結果(認証失敗)をネットワーク105を介してWEBサーバ102に送信し(ステップS1406)、処理を終了する。
【0029】
図15と図16は、WEBサーバ102が具備するセッション有効性確認機能309と起動種別確認機能310と業務画面送信機能312の処理を示すフローチャートである。先ず、起動種別確認機能310は、ユーザ端末101からのWEBサーバ102へのログインを検知し、端末IDと、ログイン時にユーザ端末101にて入力されたユーザID、パスワードをネットワーク105を介して受信する(ステップS1501)。
【0030】
次に、セッション有効性確認機能309が、記憶部301から端末一覧ファイル314の読み出し処理を実行する(ステップS1502)。読み出し成功の場合(ステップS1502でYes)、セッション有効性確認機能309は、端末一覧ファイル314から端末IDを取得する(ステップS1503)。一方、読み出し失敗の場合(ステップS1502でNo)、セッション有効性確認機能309は、エラー情報をネットワーク105を介してユーザ端末101に送信し(ステップS1508)、処理を終了する。
【0031】
次に、セッション有効性確認機能309は、ステップS1503で取得した端末IDに関して、ログイン情報ファイル315にログイン情報が記載されているかどうかを確認する(ステップS1504)。ログイン情報ファイル315にログイン情報が記載されている場合(ステップS1504でYes)、セッション有効性確認機能309は、ログイン情報ファイル315からそのログイン情報を読み出す(ステップS1505)。一方、ログイン情報ファイル315にログイン情報が記載されていない場合(ステップS1504でNo)、セッション有効性確認機能309は、エラー情報をネットワーク105を介してユーザ端末101に送信し(ステップS1507)、処理を終了する。ステップS1505の処理後、セッション有効性確認機能309は、ステップS1201(図12)で取得したセッションIDとステップS1505で読み出したログイン情報とを比較し、同じかどうかを判定する(ステップS1506)。この判定より、両者が同じでなかった場合(ステップS1506でNo)、セッション有効性確認機能309は、エラー情報をネットワーク105を介してユーザ端末101に送信し(ステップS1507)、処理を終了する。
【0032】
一方、ステップS1506の判定により、両者が同じであった場合、業務画面送信機能312が、端末ID、ユーザID、パスワードを含むユーザ認証要求をネットワーク105を介してアプリケーションサーバ103に送信する(ステップS1601)。次に、業務画面送信機能312は、アプリケーションサーバ103からユーザ認証結果をネットワーク105を介して受信する(ステップS1602)。業務画面送信機能312は、ユーザ認証結果が成功を示す場合、業務画面(アプリケーション画面)をネットワーク105を介してユーザ端末101に送信し(ステップ1603)、処理を終了する。一方、ステップS1602において、ユーザ認証結果がエラーやシステムログイン中であることを示す場合、業務画面送信機能312は、エラーやシステムログイン中であることを示す情報をネットワーク105を介してユーザ端末101に送信し(ステップS1604)、処理を終了する。
【0033】
図17は、アプリケーションサーバ103が具備するユーザ認証機能410の処理を示すフローチャートである。先ず、ユーザ認証機能410は、WEBサーバ102から端末ID、ユーザID601、パスワード602を含むユーザ認証要求をネットワーク105を介して受信する(ステップS1701)。次に、ユーザ認証機能410は、ユーザID、パスワードの有無確認要求をネットワーク105を介してDBサーバ104に送信する(ステップS1702)。次に、ユーザ認証機能410は、DBサーバ104からユーザID、パスワードの有無確認結果をネットワーク105を介して受信する(ステップS1703)。ユーザ認証機能410は、ユーザID、パスワードの有無確認結果から、DBサーバ104で保持するユーザ情報マスタ513にユーザIDとパスワードが有ったかどうかを判定する(ステップS1704)。この判定により、ユーザ情報マスタ513にユーザIDとパスワードが有った場合、ユーザ認証機能410は、ユーザIDと端末IDから排他キーを生成する(ステップS1705)。一方、ステップS1703の判定により、ユーザ情報マスタ513にユーザIDとパスワードが無かった場合、ユーザ認証機能410は、エラー情報をネットワーク105を介してWEBサーバ102に送信し(ステップS1710)、処理を終了する。
【0034】
ステップS1705の処理後、ユーザ認証機能410は、ステップS1705で生成した排他キーの有無確認要求をネットワーク105を介してDBサーバ104に送信する(ステップS1706)。次に、ユーザ認証機能410は、DBサーバ104から排他キーの有無確認結果をネットワーク105を介して受信する(ステップS1707)。ユーザ認証機能410は、排他キーの有無確認結果から、ステップS1705で生成した排他キーがDBサーバ104で保持する排他キーテーブル515に有ったかどうかを判定する(ステップS1708)。排他キーが排他キーテーブル515に有った場合(ステップS1708でYes)、ユーザ認証機能410は、例えば、エラーやシステムログイン中でことを示す情報をユーザ認証結果としてネットワーク105を介してWEBサーバ102に送信し(ステップS1709)、処理を終了する。これによって、第3者によるWEBシステムへの不正な操作を防止できる。
【0035】
一方、排他キーが排他キーテーブル515に無かった場合(ステップS1708でNo)、ユーザ認証機能410は、端末IDとステップS1705で生成した排他キーの登録要求をネットワーク105を介してDBサーバ104に送信し(ステップS1711)、ユーザ認証結果(認証成功)をネットワーク105を介してWEBサーバ102に送信し(ステップS1712)、処理を終了する。
【0036】
図18は、DBサーバ104が具備するユーザID、パスワード有無確認機能509、排他キー有無確認機能510、排他キー登録機能511の処理を示すフローチャートである。先ず、ユーザID、パスワード有無確認機能509が、アプリケーションサーバ103からユーザID、パスワードの有無確認要求をネットワーク105を介して受信すると(ステップS1801)、ユーザ情報マスタ513を参照し、受信したユーザID及びパスワードの有無を確認し(ステップS1802)、その結果をネットワーク105を介してアプリケーションサーバ103に送信する(ステップS1803)。
【0037】
また、排他キー有無確認機能410が、アプリケーションサーバ103から排他キーの有無確認要求をネットワーク105を介して受信すると(ステップS1804)、排他キーテーブル515を参照し、受信した排他キーの有無を確認し(ステップS1805)、その結果をネットワーク105を介してアプリケーションサーバ103に送信する(ステップS1806)。
【0038】
また、排他キー登録機能511が、アプリケーションサーバ103から端末ID及び排他キーの登録要求をネットワーク105を介して受信すると、受信した端末IDと排他キーをそれぞれ対応付けて排他キーテーブル515に登録する(ステップS1807)。
【0039】
図19と図20は、WEBサーバ102が具備するセッション有効性確認機能309と起動種別確認機能310とログイン情報削除機能313の処理を示すフローチャートである。先ず、起動種別確認機能310は、ユーザ端末101からのWEBサーバ102へのログアウトを検知する(ステップS1901)。
【0040】
次に、セッション有効性確認機能309が、記憶部301から端末一覧ファイル314の読み出し処理を実行する(ステップS1902)。読み出し成功の場合(ステップS1902でYes)、セッション有効性確認機能309は、端末一覧ファイル314から端末IDを取得する(ステップS1903)。一方、読み出し失敗の場合(ステップS1902でNo)、セッション有効性確認機能309は、エラー情報をネットワーク105を介してユーザ端末101に送信し(ステップS1908)、処理を終了する。
【0041】
次に、セッション有効性確認機能309は、ステップS1903で取得した端末IDに関して、ログイン情報ファイル315にログイン情報が記載されているかどうかを確認する(ステップS1904)。ログイン情報ファイル315にログイン情報が記載されている場合(ステップS1904でYes)、セッション有効性確認機能309は、ログイン情報ファイル315からそのログイン情報を読み出す(ステップS1905)。一方、ログイン情報ファイル315にログイン情報が記載されていない場合(ステップS1904でNo)、セッション有効性確認機能309は、エラー情報をネットワーク105を介してユーザ端末101に送信し(ステップS1907)、処理を終了する。ステップS1905の処理後、セッション有効性確認機能309は、ステップS1201(図12)で取得したセッションIDとステップS1905で読み出したログイン情報とを比較し、同じかどうかを判定する(ステップS1906)。この判定より、両者が同じでなかった場合(ステップS1906でNo)、セッション有効性確認機能309は、エラー情報をネットワーク105を介してユーザ端末101に送信し(ステップS1907)、処理を終了する。
【0042】
一方、ステップS1906の判定により、両者が同じであった場合、ログイン情報削除機能313が、排他キー削除要求をネットワーク105を介してアプリケーションサーバ103に送信する(ステップS2001)。次に、ログイン情報削除機能313は、アプリケーションサーバ103から排他キー削除結果をネットワーク105を介して受信し(ステップS2002)、その結果から排他キーの削除が成功したかどうかを判定する(ステップS2003)。この判定により、排他キー削除結果が排他キーの削除に成功したことを示す場合(ステップS2003で成功)、ログイン情報削除機能313は、ログイン情報ファイル315から、ステップS1905で読み出したログイン情報を削除し(ステップS2004)、終了メッセージをネットワーク105を介してユーザ端末101に送信し(ステップS2005)、処理を終了する。
【0043】
また、ステップS2003の判定により、排他キー削除結果が排他キーの削除に失敗した(排他キーが排他キーテーブル515に無かった)ことを示す場合、ログイン情報削除機能313は、エラー情報をネットワーク105を介してユーザ端末101に送信し(ステップS2006)、処理を終了する。
【0044】
図21は、アプリケーションサーバ103が具備する排他キー削除要求及び削除結果送受信機能411の処理を示すフローチャートである。先ず、排他キー削除要求及び削除結果送受信機能411は、WEBサーバ102から排他キー削除要求をネットワーク105を介して受信し(ステップS2101)、受信した排他キー削除要求をネットワーク10を介してDBサーバ104に送信する(ステップS2102)。次に、排他キー削除要求及び削除結果送受信機能411は、DBサーバ104から、排他キーの削除に成功したか、排他キーの削除に失敗した(排他キーが排他キーテーブル515に無かった)かを示す排他キー削除結果をネットワーク105を介して受信し(ステップS2103)、受信した排他キー削除結果をネットワーク105を介してWEBサーバ102に送信し(ステップS2104)、処理を終了する。
【0045】
図22は、DBサーバ104が具備する排他キー削除機能512の処理を示すフローチャートである。先ず、排他キー削除機能512は、アプリケーションサーバ103から排他キー削除要求をネットワーク105を介して受信する(ステップS2201)。次に、排他キー削除機能512は、排他キーテーブル515を参照し、受信した排他キーの有無を確認する(ステップS2202)。受信した排他キーが排他テーブル515に有る場合(ステップS2203でYes)、排他キー削除機能512は、排他キーテーブル515から当該排他キーを有するレコードを削除し(ステップS2204)、排他キーの削除に成功したことを示す排他キー削除結果をネットワーク105を介してアプリケーションサーバ103に送信する(ステップ2205)。一方、受信した排他キーが排他テーブル515に無い場合(ステップS2203でNo)、排他キーの削除に失敗した(排他キーが排他キーテーブル515に無かった)ことを示す排他キー削除結果をネットワーク105を介してアプリケーションサーバ103に送信する(ステップS2205)。
【0046】
以上本発明の一実施例について説明した。以上説明した実施例によれば、ユーザ端末がWEBシステムにログイン中に予測できないシステム障害が発生しても、第3者によるWEBシステムの不正操作を防止できる。また、システム障害時に、ユーザ端末のWEBシステムへのログイン状況を効率良く管理・把握でき、かつその管理者による対応も容易となる。
【0047】
なお、本発明はこれに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。
【符号の説明】
【0048】
101・・・PC、102・・・WEBサーバ、103・・・アプリケーションサーバ、104・・・DBサーバ。
【特許請求の範囲】
【請求項1】
複数の端末、WEBサーバ、アプリケーションサーバ及びデータベースサーバがネットワークに接続されて構成されるWEBシステムであって、
前記WEBサーバは、
前記端末のログイン情報と端末情報を記憶する記憶部と、
第1の端末からセッション情報と認証情報を前記ネットワークを介して受信し、該受信したセッション情報と前記記憶部に記憶されている当該第1の端末のログイン情報が同一の場合、前記記憶部から取得した第1の端末情報と前記認証情報を含む認証要求を前記ネットワークを介して前記アプリケーションサーバに送信し、前記アプリケーションサーバから認証結果を前記ネットワークを介して受信し、前記認証結果がエラーやログイン中であることを示す場合には、この旨を前記ネットワークを介して前記第1の端末に送信する第1の制御部と、を有し、
前記アプリケーションサーバは、
前記WEBサーバから前記認証要求を前記ネットワークを介して受信し、前記認証情報を前記データベースサーバで保持している場合に、前記認証情報と前記第1の端末情報を用いて排他キー情報を生成し、該排他キー情報を前記データベースサーバで保持している場合に、認証結果としてエラーやログイン中であることを示す情報を前記ネットワークを介して前記WEBサーバに送信する第2の制御部を有する、
ことを特徴とするWEBシステム。
【請求項2】
前記第2の制御部は、
前記生成した排他キー情報を前記データベースサーバで保持していない場合、該生成した排他キー情報と前記第1の端末情報を前記データベースサーバに登録する要求を前記ネットワークを介して前記データベースサーバに送信するとともに、認証結果として認証成功を示す情報を前記ネットワークを介して前記WEBサーバに送信し、
前記第1の制御部は、
前記アプリケーションサーバから前記認証結果を前記ネットワークを介して受信し、該認証結果が認証成功を示す場合に、アプリケーション画面を前記ネットワークを介して前記第1の端末に送信する、
ことを特徴とする請求項1に記載のWEBシステム。
【請求項3】
前記第1の制御部は、
前記第1の端末のログイン情報が前記記憶部に無い場合、前記セッション情報を前記第1の端末のログイン情報として前記記憶部に記憶する、
ことを特徴とする請求項1又は請求項2に記載のWEBシステム。
【請求項4】
前記第1の制御部は、
前記第1の端末のログアウトを検知すると、受信した前記セッション情報と前記記憶部に記憶されている当該第1の端末のログイン情報が同一の場合に、前記排他キー情報の削除要求を前記ネットワークを介して前記アプリケーションサーバに送信し、前記アプリケーションサーバから前記排他キー情報の削除結果を前記ネットワークを介して受信し、該受信した排他キーの削除結果が排他キーの削除に成功したことを示す場合に、前記記憶部から前記第1の端末のログイン情報を削除し、
前記第2の制御部は、前記WEBサーバから前記排他キー情報の削除要求を前記ネットワークを介して受信すると、前記データベースサーバへ前記ネットワークを介して送信し、前記データベースサーバから前記排他キーの削除結果を前記ネットワークを介して受信し、該受信した排他キーの削除結果を前記ネットワークを介して前記WEBサーバに送信する、
ことを特徴とする請求項3に記載のWEBシステム。
【請求項5】
複数の端末、WEBサーバ、アプリケーションサーバ及びデータベースサーバがネットワークに接続されて構成されるWEBシステムにおけるユーザ認証方法であって、
前記WEBサーバは、前記端末のログイン情報と端末情報を記憶する記憶部を具備し、
前記WEBサーバにより、
第1の端末からセッション情報と認証情報を前記ネットワークを介して受信し、該受信したセッション情報と前記記憶部に記憶されている当該第1の端末のログイン情報が同一の場合、前記記憶部から取得した第1の端末情報と前記認証情報を含む認証要求を前記ネットワークを介して前記アプリケーションサーバに送信し、前記アプリケーションサーバから認証結果を前記ネットワークを介して受信し、前記認証結果がエラーやログイン中であることを示す場合には、この旨を前記ネットワークを介して前記第1の端末に送信し、
前記アプリケーションサーバにより、
前記WEBサーバから前記認証要求を前記ネットワークを介して受信し、前記認証情報を前記データベースサーバで保持している場合に、前記認証情報と前記第1の端末情報を用いて排他キー情報を生成し、該排他キー情報を前記データベースサーバで保持している場合に、認証結果としてエラーやログイン中であることを示す情報を前記ネットワークを介して前記WEBサーバに送信する、
ことを特徴とするユーザ認証方法。
【請求項1】
複数の端末、WEBサーバ、アプリケーションサーバ及びデータベースサーバがネットワークに接続されて構成されるWEBシステムであって、
前記WEBサーバは、
前記端末のログイン情報と端末情報を記憶する記憶部と、
第1の端末からセッション情報と認証情報を前記ネットワークを介して受信し、該受信したセッション情報と前記記憶部に記憶されている当該第1の端末のログイン情報が同一の場合、前記記憶部から取得した第1の端末情報と前記認証情報を含む認証要求を前記ネットワークを介して前記アプリケーションサーバに送信し、前記アプリケーションサーバから認証結果を前記ネットワークを介して受信し、前記認証結果がエラーやログイン中であることを示す場合には、この旨を前記ネットワークを介して前記第1の端末に送信する第1の制御部と、を有し、
前記アプリケーションサーバは、
前記WEBサーバから前記認証要求を前記ネットワークを介して受信し、前記認証情報を前記データベースサーバで保持している場合に、前記認証情報と前記第1の端末情報を用いて排他キー情報を生成し、該排他キー情報を前記データベースサーバで保持している場合に、認証結果としてエラーやログイン中であることを示す情報を前記ネットワークを介して前記WEBサーバに送信する第2の制御部を有する、
ことを特徴とするWEBシステム。
【請求項2】
前記第2の制御部は、
前記生成した排他キー情報を前記データベースサーバで保持していない場合、該生成した排他キー情報と前記第1の端末情報を前記データベースサーバに登録する要求を前記ネットワークを介して前記データベースサーバに送信するとともに、認証結果として認証成功を示す情報を前記ネットワークを介して前記WEBサーバに送信し、
前記第1の制御部は、
前記アプリケーションサーバから前記認証結果を前記ネットワークを介して受信し、該認証結果が認証成功を示す場合に、アプリケーション画面を前記ネットワークを介して前記第1の端末に送信する、
ことを特徴とする請求項1に記載のWEBシステム。
【請求項3】
前記第1の制御部は、
前記第1の端末のログイン情報が前記記憶部に無い場合、前記セッション情報を前記第1の端末のログイン情報として前記記憶部に記憶する、
ことを特徴とする請求項1又は請求項2に記載のWEBシステム。
【請求項4】
前記第1の制御部は、
前記第1の端末のログアウトを検知すると、受信した前記セッション情報と前記記憶部に記憶されている当該第1の端末のログイン情報が同一の場合に、前記排他キー情報の削除要求を前記ネットワークを介して前記アプリケーションサーバに送信し、前記アプリケーションサーバから前記排他キー情報の削除結果を前記ネットワークを介して受信し、該受信した排他キーの削除結果が排他キーの削除に成功したことを示す場合に、前記記憶部から前記第1の端末のログイン情報を削除し、
前記第2の制御部は、前記WEBサーバから前記排他キー情報の削除要求を前記ネットワークを介して受信すると、前記データベースサーバへ前記ネットワークを介して送信し、前記データベースサーバから前記排他キーの削除結果を前記ネットワークを介して受信し、該受信した排他キーの削除結果を前記ネットワークを介して前記WEBサーバに送信する、
ことを特徴とする請求項3に記載のWEBシステム。
【請求項5】
複数の端末、WEBサーバ、アプリケーションサーバ及びデータベースサーバがネットワークに接続されて構成されるWEBシステムにおけるユーザ認証方法であって、
前記WEBサーバは、前記端末のログイン情報と端末情報を記憶する記憶部を具備し、
前記WEBサーバにより、
第1の端末からセッション情報と認証情報を前記ネットワークを介して受信し、該受信したセッション情報と前記記憶部に記憶されている当該第1の端末のログイン情報が同一の場合、前記記憶部から取得した第1の端末情報と前記認証情報を含む認証要求を前記ネットワークを介して前記アプリケーションサーバに送信し、前記アプリケーションサーバから認証結果を前記ネットワークを介して受信し、前記認証結果がエラーやログイン中であることを示す場合には、この旨を前記ネットワークを介して前記第1の端末に送信し、
前記アプリケーションサーバにより、
前記WEBサーバから前記認証要求を前記ネットワークを介して受信し、前記認証情報を前記データベースサーバで保持している場合に、前記認証情報と前記第1の端末情報を用いて排他キー情報を生成し、該排他キー情報を前記データベースサーバで保持している場合に、認証結果としてエラーやログイン中であることを示す情報を前記ネットワークを介して前記WEBサーバに送信する、
ことを特徴とするユーザ認証方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【公開番号】特開2013−114526(P2013−114526A)
【公開日】平成25年6月10日(2013.6.10)
【国際特許分類】
【出願番号】特願2011−261186(P2011−261186)
【出願日】平成23年11月30日(2011.11.30)
【出願人】(000005108)株式会社日立製作所 (27,607)
【Fターム(参考)】
【公開日】平成25年6月10日(2013.6.10)
【国際特許分類】
【出願日】平成23年11月30日(2011.11.30)
【出願人】(000005108)株式会社日立製作所 (27,607)
【Fターム(参考)】
[ Back to top ]