(57)【特許請求の範囲】
【請求項１】
異なるＯＳにより管理される複数のサーバを有するシステムであって、
前記システムは、
サーバを管理するＯＳの種別情報と複数のＯＳ対応にアカウントの開放用のコマンドと閉塞用のコマンドを記憶するアカウントデータベースと、
アカウントの開放または閉塞を申請する作業申請データを入力する作業申請データ入力手段と、
サーバに対してアカウントの開放コマンドまたは閉塞コマンドを送信するアカウント開放閉塞処理手段とを有し、
前記アカウント開放閉塞処理手段は
前記アカウントデータベースを参照してアカウントを開放または閉塞するサーバのＯＳの種別を判別する手段と、
前記判別されたＯＳに対応したアカウントの開放コマンドあるいは閉塞コマンドを前記アカウントデータベースから読み出す手段と、
前記読み出されたコマンドを前記サーバに対して実行する手段を有することを特徴とするシステム。
【請求項２】
請求項１記載のシステムであって、
前記アカウントデータベースはＯＳ対応にＯＳにログインするコマンドを記憶し、
前記アカウント開放閉塞処理手段は前記判別されたＯＳに対応したログインするコマンドを前記アカウントデータベースから読み出し実行してサーバにログインし、
サーバにログインした後に前記アカウントの開放コマンドあるいは閉塞コマンドを実行すること特徴とするシステム。
【請求項３】
請求項１または請求項２記載のシステムであって、
アカウントの開放または閉塞を申請する作業申請データを記憶するアカウント申請データベースを有し、
前記作業申請データ入力手段は、管理者端末からの指示により前記アカウント申請データベースから作業申請データを読み出すことを特徴とするシステム。
【請求項４】
異なるＯＳにより管理される複数のサーバのアカウントの開放閉塞をコンピュータにより実行させるためのアカウント開放閉塞プログラムであって、
アカウントの開放または閉塞を申請する作業申請データを入力するステップと、
サーバを管理するＯＳの種別情報と複数のＯＳ対応にアカウントの開放用のコマンドと閉塞用のコマンドを記憶するアカウントデータベースを参照して前記作業申請データが指示するアカウントのサーバを管理するＯＳの種別を判別するステップと、
前記アカウントデータベースから前記判別されたＯＳに対応したアカウントの開放あるいは閉塞コマンドを取り出すステップと、
前記取り出されたアカウントの開放あるいは閉塞コマンドを前記サーバに対して実行するステップとを、前記コンピュータに実行させることを特徴とするプログラム。
【請求項５】
請求項４記載のプログラムであって、
前記アカウントデータベースをアクセスして前記判別されたＯＳに対応したログインコマンドを取り出すステップを前記コンピュータに実行させ、
前記ログインコマンドにより前記サーバにログインした後に前記アカウントの開放あるいは閉塞コマンドを前記サーバに対して実行させることを特徴とするプログラム。
【請求項６】
請求項４または請求項５記載のプログラムであって、
前記作業申請データは、アカウントの開放または閉塞を申請する作業申請データを記憶するアカウント申請データベースから読み出されることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のサーバが接続されているネットワークシステムにおいて、各サーバのメンテナンスのために作業者がログインするアカウントの開放と閉塞を集中管理する手段を有するシステム、ならびにアカウントの開放閉塞を行うプログラムに関するものである。
【背景技術】
【０００２】
従来、各サーバのアカウントを集中管理するシステムとしては、例えば、特開平１０−３０７７９３号公報（特許文献１参照）に記載の構成がある。これは、アカウントの作成および削除ならびにユーザがいずれの端末に登録されているのかの確認を、仮想端末サーバであるワークステーション１０と仮想端末クライアントであるワークステーション１１，１２との間でネットワークを介してデータ転送を行いながら実行している。
【０００３】
また、特開２００７−５２４７７号公報（特許文献２参照）に記載のローカルアカウント集中管理システムおよび管理方法とそのプログラムでは、ネットワークを介して接続された端末において、管理する側の端末でローカルアカウント情報の変更や制御（ロックアウト）を行い、それに対応する形で制御される側の端末では、個々の端末が所有するコンピュータのローカルアカウント情報を変更または制御することを可能にしている。
【特許文献１】特開平１０−３０７７９３号公報
【特許文献２】特開２００７−５２４７７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
サーバにアカウントを設定してログインする構成はサーバ機能のメンテナンス等に必要な機能であり、サーバに利用されるＯＳの種類に関わりなく、作業者にログインを許可するアカウントの機能を有している。また、無資格の者がサーバにログインしてシステムに危害を加えることを防止するため、アカウントはパスワードにより保護されている。システムの規模が大きくなると、システムを構成するサーバ等のハードウェアと実行されるソフトウェアの数と複雑さは共に大きくなる。この結果、保守等に従事するオペレータの数も多くなり、各サーバに設定されるアカウントの数も増大する。システムで機能しているアカウントの数が増加すると、アカウントとそのパスワードが漏れ、悪用される危険性が増大する。
【０００５】
上記の参考文献に示されるように、アカウントとそのパスワードを管理する技術が多く知られている。しかし、アカウントとパスワードが漏洩する危険を減らすには、システム上で機能しているアカウントの数を可能な限り少なくする必要がある。このため、メンテナンス等によりサーバにログインする必要が発生したときに、その作業のためのアカウントを開放(UNLOCK)し、メンテナンスが終了し、アカウントが不必要となった時、不必要となったアカウントを閉塞(LOCK)する方法が採られている。この方法によると、システム内で常時利用可能なアカウントは限られた数の管理者用のアカウントのみであり、作業用のアカウントは必要となった時に一時的に開放されるのみであり、作業用のアカウントが悪用される危険性は小さくなる。
【０００６】
多くのシステムは複数のサーバをネットワークにより結合して構成されている。図１１は、複数のサーバ(2002，2004、・・・)からなるシステム2000において、サーバのメンテナンスを実行する時の従来の手順が示されている。
(１)メンテナンスの作業者2200は作業スケジュールを決め、作業者名、メンテナンスの対象サーバ(例えば、サーバ2002)、作業に使用するアカウント名、メンテナンスの開始時刻と終了時刻等を管理者2100に申請する。
(２)管理者2100は、システム2000に設けられている管理者用の端末2001からTelnet等の手段により対象サーバ2002にアクセスし、管理者用のアカウントとパスワードを用いて対象サーバ2002にログインする。管理者の権限でログインした後、作業のために申請された作業用のアカウントを開放し、その作業用のアカウントにログイン用のパスワードを設定する。
(３)管理者2100は、メール等により、申請者2200に作業用のアカウントが開放され利用可能となったことと、ログイン用のパスワードを通知する。
(４)申請者2200はサーバ2002のコンソール端末2003を操作し、通知されたパスワードを用いて申請した作業用のアカウントにログインし、メンテナンス等の作業を行う。
(５)作業を終了した作業者2200は、管理者2100に作業の終了を通知する。
(６)管理者2100はサーバ2002の作業用アカウントを閉塞する。
【０００７】
上記の例は１つのサーバで作業を行う例であるが、作業が複数のサーバに跨る時は対象となるサーバすべに作業用のアカウントが開放され、作業の終了によりこれらのアカウントは全て閉塞される。
サーバを管理するオペレーティングシステム(ＯＳ)は目的に即して選択されるため、異なるＯＳにより管理されるサーバを有するネットワークシステムが多く存在する。アカウントを開放し閉塞する手順、および使用するコマンドはＯＳにより異なる。従って、管理者は申請者がアカウントの開放を要求したサーバのＯＳを確認し、そのＯＳに適合した手順とコマンドによりアカウントを開放しパスワードを設定することになる。
システムの規模が大きくなりシステムを構成するサーバの数と種類も多くなると、メンテナンス等の作業量は多くなり、複数のサーバに跨る作業等、作業の複雑さも増大する。その結果、作業の開始に当たり、複数のサーバのアカウントを開放し、作業の終了時に、関連するアカウントを全て閉塞することが必要になる。また、１つのアカウントを複数の作業で共用する場合もある。この様な状況では、１つの作業の終了が通知されても、他にそのアカウントを利用した作業が行われている場合、そのアカウントを閉塞すると他の作業は不可能となる。従って、アカウントを閉塞する時には、そのアカウントを閉塞しても他に影響することが無いか等を確認する必要があり、管理者は多大の労力を要することになる。
【課題を解決するための手段】
【０００８】
本発明は異なるＯＳにより管理される複数のサーバを有するシステムにおいて、作業用アカウントの開放および閉塞を正確かつ迅速に行うことが可能なシステムと、作業用アカウントの開放および閉塞を実行するプログラムの提供を目的にしている。本発明は、作業者が申請した作業用アカウントの開放要求、および同アカウントの閉塞要求に基づいて、対象のサーバのＯＳに適合した手順とコマンドを自動的に決定して、要求されたアカウントを開放し閉塞するものである。まは、本発明は、複数の作業と作業用アカウントの関連に基づいて作業用アカウントの開放を管理するものである。
【実施例１】
【０００９】
図１は本発明に係るアカウントの開放閉塞システムの全体の概要を示す図である。同システムは、メンテナンス等の作業を行う作業者が申請した作業申請データを記憶するアカウント申請データベース110と、管理者が操作する管理者用端末111を有する管理コンピュータ100と、複数のサーバ112、114から構成されている。
システムが有するサーバは、Open-VMS(登録商標),Tru64(登録商標),HPUX(登録商標),Solaris(登録商標)等異なるＯＳにより管理される。図１は、HPUXサーバ112とOpen-VMSサーバ114が示されている。各サーバはサーバに設定されているアカウント、パスワード等の管理情報を記憶する外部記憶装置113、115を有している。
【００１０】
アカウント申請データベース110は、システム内のサーバに対する作業に必要なアカウントの情報を記憶するデータベースである。システム内のサーバに対してメンテナンス等の作業を予定している作業者は、作業者の氏名、作業に使用するアカウント、作業の開始と終了予定の日時等の情報を作業申請データとしてアカウント申請データベース110に登録する。作業が複数のサーバに跨っている場合は、対象となる全てのサーバのアカウントを登録する。
システムの管理者は管理コンピュータ100の管理者用端末111を用いて処理すべき作業申請データをデータベース110から検索して、端末111に表示させる。検索および表示の形態には、全ての作業申請データを一覧する方法、作業申請番号を指定して対象のアカウントを一覧表示する方法、ホスト名あるいはユーザ名を指定してあいまい検索を行って結果を一覧表示方法等が可能である。一覧表示された複数の作業申請から特定の１つを選択して、あるいは複数の作業申請を一括選択して、管理コンピュータ100にアカウントの開放、閉塞、パスワードの変更等の処理を指示する。
【００１１】
図２は、GUI(グラフィカル・ユーザ・インタフェース)により管理者端末111とアカウント開放閉塞処理部102の間で授受される指示と応答の例示である。
(ａ)は作業申請番号を指定してアカウント開放閉塞を指示する方法である。アカウント申請データベース110から特定の日時あるいは特定の作業申請者による作業申請データを抽出し一覧表示させ、[IN]欄に作業申請番号を指定してアカウントの開放または閉塞を管理コンピュータ100に指示する。管理コンピュータ100は、[OUT]欄に、作業申請内容の誤りの有無、開放または閉塞の結果等の報告を表示する。
(ｂ)はサーバ(ノード)名とアカウント名を直接指定する方法である。管理者は[IN]欄に開放または閉塞するアカウントのサーバ(ノード)名とそのアカウント名を指定する。管理コンピュータ100は、[OUT]欄に開放または閉塞の結果等の報告を表示する。
(ｃ)はアカウントのパスワードの変更を指示するものであり、作業者が特定のアカウントにログインするパスワードの変更を要求した等の理由により、アカウントのパスワードを変更する時に使用するGUIである。[IN]欄にパスワードを変更するアカウントのサーバ(ノード)名とそのアカウント名を指定する。管理コンピュータ100は、[OUT]欄に処理の結果等の報告を表示する。
【００１２】
図１に示される管理コンピュータ100は、アカウント入力チェック部101、アカウント開放閉塞処理部102、パスワード登録部103、アカウントデータベース104を有している。
アカウント入力チェック部101は、管理者が指示した作業申請データをアカウント申請データベース110から読み出す。読み出された作業申請には必要事項が全て指定されているか、指定されている事項は正確か等、作業申請内容に誤りが無いか否かの検査がなされる。誤りが発見された時は、図２(ａ)の[OUT]「入力規則エラー」として管理者用端末111に誤りの存在が通知される。
アカウント開放閉塞処理部102は、管理者用端末111により管理者の指示を入力する。また、管理者の指示に対応する作業申請データをアカウント入力チェック部101を介してアカウント申請データベース110から読み出す。
管理コンピュータ100はシステム内の対象サーバにTelnet等の手法により接続される。アカウント開放閉塞処理部102は、アカウントデータベース104の記憶内容を参照して読み出された作業申請データを解釈し、対象サーバのＯＳに適合したコマンドを選択して対象サーバに送信し、指示の実行結果を報告する。
パスワード登録部103は、管理者がパスワードの変更を指示した(図２(ｃ))ことに応答して、アカウントデータベース104に記憶されているパスワードを変更し、その結果を管理者用端末111を介して管理者に返す。
アカウントデータベース104は、システム内のサーバとサーバに設定されているアカウントの情報を記憶するものである。
【００１３】
図３は、アカウントデータベース104に登録されている情報と情報間の関係を示す図である。
アカウントテーブルは、システム内のホスト(サーバ)に対してメンテナンス等の作業を行う時、作業者が対象サーバにログインする作業用のアカウントを管理するテーブルである。図３のアカウントテーブル201には、「アカウント１」、「アカウント２」、・・・、「アカウントｎ」が登録されている。各アカウントには、アカウントが属しているホスト(サーバ)名、アカウントにログインするユーザＩＤ(作業者ＩＤ)、アカウント種別、現在の状態等が設定されている。
アカウントを作業者に貸し出す形態には、申請によりアカウントを開放すると共にパスワードを設定して作業者に貸し出すタイプ(タイプ１)、申請によりアカウントを開放し、パスワードを設定することなく貸し出すタイプ(タイプ２)、申請によりアカウントのパスワードを変更又は設定し、作業者にパスワードを通知するタイプ(タイプ３)等、複数形態を設けることができる。「アカウント種別」には上記の形態を示す種別データが設定される。
「現在の状態」は、そのアカウントは現在開放中か、閉塞中か示すデータである。アカウントテーブル201の「アカウント２」は、「ホスト２」に属し、作業者ＩＤは「UserX」であり、開放／閉塞の対象となるアカウントであり、現在閉塞中であり使用されていないことを示している。
【００１４】
ホストテーブルはシステム内に存在するホスト(サーバ)を管理するテーブルである。図３のホストテーブル211には、「ホスト１」、「ホスト２」、・・・、「ホストｍ」が登録されている。各ホストには、ホスト名、システム内のＩＰアドレス、ホストコンピュータを制御しているＯＳの種別、ＯＳにログインする管理者用アカウント等が設定されている。ホストテーブル211の「ホスト２」のホスト名は「HOSTXX」、ＩＰアドレスは「192.169
.・・・・」、ＯＳは「HPUX」でありログイン用の管理者ユーザＩＤは「masterxxx」であることを示している。
アカウントテーブル201の各アカウントに設定されているホストの情報から、ホストテーブル211の対応するホストの情報をアクセスすることが可能である。
【００１５】
アカウントデータベース104にはＯＳ対応にコマンドテーブルが設けられている。図３にはHPUX用のコマンドテーブル221とOpen-VMS用のコマンドテーブル231が示されている。各コマンドテーブルには、サーバのＯＳにログインする時に実行する「Loginコマンド」、アカウントを開放する時に実行する「Unlockコマンド」、アカウントを閉塞する時に実行する「Lockコマンド」、アカウントのパスワードの設定、あるいは設定されているパスワードの変更に使用する「passwordコマンド」へのリンク情報が設定されている。図３には、HPUX用のコマンドテーブル221のLoginコマンドの欄にはHPUX用のLoginコマンド225へのリンク情報が記憶され、Open-VMS用コマンドテーブル231のLoginコマンドの欄にはOpen-VMS用のLoginコマンド235へのリンク情報が記憶されている。
各コマンドテーブルのリンク先にはコマンド実行するための機能コード列が記憶されている。図３の例では、HPUX用のLoginコマンド225は「機能コード１」、「機能コード２」、「機能コード３」の３つ機能コードからなる。また、Open-VMS用のLoginコマンド235は「機能コード１」と「機能コード２」の２つ機能コードからなっている。アカウント開放閉塞処理部102はコマンドを構成する機能コードを１つずつ順次読み込み実行する。
各コマンドには、成功時のメッセージ、失敗時のメッセージ等のメッセージが記憶されており、コマンドの実行結果を管理者端末111に出力する。
【００１６】
アカウント開放閉塞処理部102はアカウントテーブルの「アカウント種別」により指定されたタイプに対応した動作を行う。本実施例でアカウントを３つのタイプに分けて管理する構成であり、図４−１は「アカウント種別」を読み出したカウント開放閉塞処理102の動作を示すものである。
ステップ２５０：アカウント開放閉塞処理部102はアカウントデータベース104に記憶されているアカウントテーブル201とホストテーブル211を参照して対象サーバにログインした後、ステップ２５１で、アカウントテーブル201を参照して作業者より要求されたアカウントの「アカウント種別」を調べる。アカウント種別が「Type1」の時はステップ２５２、「Type2」の時はステップ２５５、「Type3」の時はステップ２５６に進む。
ステップ２５２：「Type1」のアカウントは、使用していない時は閉塞状態とし、使用の要求が出された時に解放し、新たにパスワードを設定して作業者に貸し出すものである。従って、「Type1」のアカウントの場合、アカウント開放閉塞処理部102は要求されたアカウントを解放する処理と(ステップ２５２)、そのアカウントに新たなパスワードを設定する処理を行う(ステップ２５３)。次に、処理結果を管理者端末111に出力し、対象サーバからログアウトする(ステップ２５４)。アカウントの解放を確認した管理者は、申請した作業者に作業の開始が可能となったことと、設定されたパスワードを通知する。
ステップ２５５：「Type2」のアカウントは、使用していない時は閉塞状態とし、使用の要求が出された時に解放して作業者に貸し出すように設定されている。このタイプのアカウントはパスワードの設定等、パスワードに関する処理を必要としない。従って、「Type2」のアカウントの場合、アカウント開放閉塞処理部102は要求されたアカウントを解放する処理(ステップ２５５)のみを行い、処理結果を管理者端末111に出力して、対象サーバからログアウトする(ステップ２５４)。アカウントの解放を確認した管理者は、申請した作業者に作業の開始が可能となったことを通知する。
ステップ２５６：「Type3」のアカウントは、使用されていない時にも閉塞されることはなく、使用の要求が出された時に新たなパスワートを設定して作業者に貸し出すものである。「Type3」のアカウントの場合、アカウント開放閉塞処理部102は要求されたアカウントに新たなパスワードを設定する処理(ステップ２５６)のみを行い、処理結果を管理者端末111に出力し、対象サーバからログアウトする(ステップ２５４)。バスワードの設定を確認した管理者は、申請した作業者に新たに設定されたバスワートを通知する。
【００１７】
図４−２は、「Ｔype1」のコマンドを実行において、管理者端末111、管理コンピュータ100、アカウント申請データベース110、対象サーバ112,114の間で行われる制御の一例である。
(ａ)：アカウント申請データベース110には、サーバ112,114に対してメンテナンス等の作業を行う作業者から申請されたアカウントの開放等の作業申請データが記憶されている。管理者は管理者端末111を操作して管理コンピュータ100に特定の条件に合致する作業申請データの検索を指示する。指示を受けた管理コンピュータ100のアカウント開放閉塞処理部102はアカウント入力チェック部101を介してアカウント申請データベース110を検索し、指定された条件に合致する作業申請データを抽出し、管理者端末111に表示する。
(ｂ)：管理者は管理者端末111に表示された作業申請データの中から、処理すべき作業申請データを１つ、あるいは複数選択して管理コンピュータ100に処理を指示する。
アカウント開放閉塞処理部102はアカウント入力チェック部101に該当する作業申請データをアカウント申請データベース110から読み出し、データの内容が正当か否かの検証を指示する。作業申請内容に誤りが発見された場合は、その旨を管理者端末111に表示する。
作業申請内容に誤りがなかった時、作業申請データから要求されたアカウントを抽出する(ここで、図３の「アカウント２」が抽出されたとする)。
アカウント開放閉塞処理部102は、アカウントデータベース104のアカウントテーブル201から抽出されたアカウント「アカウント２」に設定されている情報を読み出す。その情報から「アカウント２」は閉塞中であることを確認して、作業者用のユーザＩＤ「UserX」と「アカウント２」が属する「ホスト２」のテーブルへのポインタを読み出す。
次に、アカウント開放閉塞処理部102は「ホスト２」のテーブルへのポインタを基に、ホストテーブル211の「ホスト２」に設定されている情報を読み出す。その情報から「ホスト２」のＯＳは「HPUX」であり、ホスト２にログインする管理者用のユーザＩＤは「masterxxx」であることを判別する。
(ｃ)：図４−１のステップ２５０に対応する処理である。管理コンピュータ100はTelnetを用いて対象となるホスト(サーバ)に接続する。
アカウント開放閉塞処理部102は管理コンピュータ100の通信手段を制御し、Telnetを用いて「ホスト２」に接続する。接続を確認した後、アカウントデータベース104から「HPUX」用のLoginコマンド225を読み出して実行し、管理者用のユーザＩＤ「masterxxx」と別途指定された管理者用のパスワードを用いてホスト２にロングインする。
アカウント開放閉塞処理部102はステップ２５１に対応する処理を行う。アカウント開放閉塞処理部102はアカウントデータベース104からアカウントの種別を読み出す。図４−２の例では、コマンドは「Ｔype1」であり、アカウント開放閉塞処理部102は「Ｔype1」の処理、即ち、図４−１のステップ２５２とステップ２５３を実施する。
(ｄ)：図４−１のステップ２５２に対応する処理である。アカウントデータベース104からホスト２のＯＳである「HPUX」用のアカウントの開放コマンド「Unlockコマンド」を読み出し、コマンドに作業者用のユーザＩＤ「UserX」等の必要項目を適用して、ホスト２に向けて実行する。対象サーバであるホスト２からエラー応答が返信された時は、その旨を管理者端末111に表示し終了する。対象サーバから正常応答が返信された時は次に進む。
(ｅ)：ステップ２５３に対応する処理である。アカウントデータベース104から「HPUX」用のパスワードの変更コマンド「passwordコマンド」を読み出し、図１のパスワード登録部103により登録された旧パスワード、新パワード等の必要項目を適用して対象サーバであるホスト２に向けて実行する。
(ｆ)：図４−１のステップ２５４に対応する処理である。対象サーバからエラー応答が返信された時はエラー情報を、正常応答が返信された時は正常に終了した旨を管理者端末111に表示する。
(ｇ)：対象サーバにロングオフコマンドを送信し、(ｃ)で行われたログインを終了する。
【００１８】
図５は図４−２の(ｂ)で実行される処理のフローである。
ステップ３１１：管理者が管理者端末111を操作してアカウントの開放あるいは閉塞を要求する作業申請データを指定する。
ステップ３１２：アカウント開放閉塞処理部102は、アカウント入力チェック部101に該当する作業申請データをアカウント申請データベース110から読み出することを指示する。
ステップ３１３：アカウント入力チェック部101は作業申請データベース110を検索し指示された作業申請データを読み出し、作業申請内容に必須項目が不足する等の誤りが無いか否かを検査する。誤りが発見された時はステップ３２１に進み、管理者端末111にエラー表示して終了する。
ステップ３１４：アカウント開放閉塞処理部102は作業申請データベース110から取り出された作業申請データから開放するアカウントを抽出する(図３の「アカウント２」)。１つの作業申請データにより複数のアカウントの処理を指示することが可能である。この場合は各アカウントに対して以降の処理が順次実行される。
アカウントデータベース104のアカウントテーブル201を参照して、抽出されたアカウントが属するサーバ(ホスト２)を識別する。
ステップ３１５：アカウント開放閉塞処理部102はアカウントテーブル211から、識別されたサーバ(ホスト２)のＯＳを調査する(HPUX)。
ステップ３１６：アカウントデータベース104には、サーバにログインするためのコマンド、アカウントを開放するためのコマンド、アカウントを閉塞するためコマンド等、サーバを制御するコマンドが記憶されている。システムは異なるＯＳのサーバを有しており、上記のコマンドは、各ＯＳ対応に存在し、各ＯＳに適合したにコマンドが記憶されている。
アカウント開放閉塞処理部102はアカウントデータベース104から、ステップ３１５で識別された対象サーバのＯＳ(HPUX)に適合したログイン用のコマンド(ＨＰＵＸ用Loginコマンド225)を取り出す。
ステップ３１７：ログイン用のコマンドを構成する各機能コードの変数部分に、管理者用のユーザＩＤ、パスワード等のデータを設定する。
ステップ３１８：Telnetにより対象サーバであるホスト２に接続する。
ステップ３１９：接続が成功したか否かを判別する。成功しなかった時はステップ３２１に進み、管理者端末111にエラー表示して終了する。
ステップ３２０：ステップ３１７で生成したログイン用のコマンドを実行し、対象サーバにログインする。
【００１９】
図６−１は図５のステップ３２０で実行される対象サーバへのログインを実行するコマンドの例であり、(ａ)はHPUX用のコマンド、(ｂ)はOpen-VMS用のコマンドである。システム内にTru64、Solaris等他のＯＳが存在する時は、これらのＯＳに適合したコマンドが用意される。これらのコマンドはアカウントデータベース104に記憶され、対象サーバのＯＳに対応したコマンドが読み出され実行される。
「プロンプト」は外部からの入力が可能となったＯＳが、入力の種別を示して、入力を促すために出力する。プロンプトを受信したアカウント開放閉塞処理部102は、「送信データ」の欄に規定されているデータをＯＳに送信する。
【００２０】
図６−２は、対象サーバにログインするフローである。図６−１(ａ)のコマンドを実行した時のフローは以下の通りである。
ステップ４２１：図６−１のコマンド行401に対応する。アカウント開放閉塞処理部102はログインコマンドを構成する機能コードの先頭の機能コードである「機能コード１」を読み込み実行する。「機能コード１」はアカウント開放閉塞処理部102に、ホストからのプロンプト「Login:」を待って送信データの欄に設定されたデータをホストに送信する処理を指示する。
「機能コード１」を読み込んだアカウント開放閉塞処理部102は、ホストのＯＳからプロンプト「Login:」を受信した後、コマンド行401の「送信データ」に規定されている「ユーザＩＤ」を送信する。ここで送信されるユーザＩＤは管理者用のアカウントとして設定されている管理者のＩＤであり、図３の例では「masterxxx」である。
ステップ４２２：「機能コード１」の実行を終了したアカウント開放閉塞処理部102は次の機能コードである「機能コード２」を実行する。「機能コード２」が指示する動作は、ホストからのプロンプト「Password:」を待って送信データの欄に設定されたデータをホストに送信してホストからの応答を待ち、応答が成功の時は次の機能コードを選択し、不成功の時はエラーメッセージを表示して処理を終了する動作を指示するものである。
ユーザＩＤを受信したＯＳはパスワードを要求するプロンプト「Password:」を出力する。「機能コード２」を読み込んだアカウント開放閉塞処理部102は、プロンプト「Password:」が送信されるのを待って、管理者のユーザＩＤに対応する「パスワード」を送信する。
ステップ４２３：アカウント開放閉塞処理部102はＯＳの応答を検査し、ログインに成功したか否かを判断する。ログインに成功しなかった時はステップ４２８に進み、管理者端末111にエラーメッセージを表示して処理を終了する。
ステップ４２４：次の機能コードが存在か否かを判別する。存在しない時はステップ４２９に進み処理を終了する。図６−１の(ａ)に示されるHPUX用のコマンドには「機能コード３」が存在するため、コマンドの実行を継続する。
ステップ４２５：アカウント開放閉塞処理部102はコマンド行403の「機能コード３」を読み込む。「機能コード３」により、アカウント開放閉塞処理部102は「su root」をホストに送信し、プロンプト「Password:」を待つ。「Password:」を受信したら送信データの欄に設定されたデータをホストに送信してホストからの応答を待つ。ホストの応答が成功の時は次の機能コードを選択し、不成功の時はエラーメッセージを表示して処理を終了する。
ステップ４２５で「機能コード３」を読み込んだアカウント開放閉塞処理部102はホストに「su root」を送信する。
ステップ４２６：「su root」コマンドを受信したＯＳはパスワードを要求するプロンプト「Password:」を発信する。このプロンプトを受信したアカウント開放閉塞処理部102はコマンド行404の送信データ欄に設定されているrootのパスワードを送信する。「機能コード３」の実行により管理コンピュータ100が送信した各データを受信したHPUXは、「機能コード１」で送信された管理者「masterxxx」にroot権限を与える。
ステップ４２７：アカウント開放閉塞処理部102はＯＳの応答を検査し、ログインに成功したか否かを判断する。ログインに成功しなかった時はステップ４２８に進み、管理者端末111にエラーメッセージを表示して終了する。ログインに成功した場合はステップ４２９に進む。「機能コード３」が最後の機能コードであるため、アカウント開放閉塞処理部102は処理を終了する。
【００２１】
図６−１の(ｂ)に示されるOpen-VMS用のコマンドの実行は以下の通りである。
(ｂ)のコマンド行411とコマンド行412は(ａ)のコマンド行401とコマンド行402と同じであり、アカウント開放閉塞処理部102は図６−２に示されるフローのステップ４２１ないしステップ４２３を実行する。図６−２のステップ４２４で、アカウント開放閉塞処理部102は次の機能コードが存在するか否かを判別する。Open-VMSにはHPUXの「su root」に相当するコマンドは必要ないため、Open-VMS用のコマンド(ｂ)には「機能コード２」に続くコードは存在しない。従ってアカウント開放閉塞処理部102の処理はステップ４２４からステップ４２９に進み処理を終了する。
【００２２】
図５のステップ３２０で対象サーバへのログインが成功すると、アカウントの開放(Unlock)が行われる。図５のステップ３１５で識別されたサーバのＯＳに対応するアカウント開放用のコマンドがアカウントデータベース104から読み取られる。
図７-１はアカウント開放用のコマンドの例である。(ａ)はHPUX用のUnlockコマンドの例であり、1つの機能コード「機能コード４」からなり、送信データとて「/usr/lbin/modprpw -l -m alock=NO  ユーザＩＤ」が設定されている。
(ｂ)はOpen-VMS用のUnlockコマンドであり、(ａ)と同じく、1つの機能コード「機能コード４」からなり、送信データとて「MCR AUTHORIZE MODIFY /FLAGS=NoDisUser ユーザＩＤ」が設定されている。
両者の「ユーザＩＤ」には作業申請データに記載されている申請者(ホスト２の作業実施者)のＩＤ(図３では「UserX」)が代入される。(ａ)および(ｂ)の送信データは対応するＯＳのアカウント開放コマンドであり、これらのデータを受信したＯＳは「ユーザＩＤ」で指定されたアカウントの開放処理を行い、成功／不成功の応答を返信する。
【００２３】
図７−２はアカウント開放用のコマンドの処理フローである。「機能コード４」はアカウント開放閉塞処理部102に、送信データ欄に設定されているデータをホストに送信してホストからの応答を待ち、応答が成功の時は処理を正常終了し、不成功の時はエラーメッセージを表示して処理を終了することを指示する。
ステップ５２１で、「機能コード４」を読み込んだアカウント開放閉塞処理部102は、管理者としてログインしている対象サーバに送信データ欄に設定されている各ＯＳに対するUnlockコマンドを送信し、サーバからの応答を待つ。ステップ５２２で、対象サーバからの応答を解析し、コマンドが正常に実行されたか否かを判別する。正常に実行されなかった時はステップ５２３に進み、管理者端末111にエラーメッセージを表示して終了する。
【００２４】
アカウントの開放(Unlock)が正常に行われた時は、図４−２の(ｅ)で作業者用のアカウントにパスワードを設定する。図５のステップ３１５で識別されたサーバのＯＳの種別に対応するパスワード変更用のコマンド(passwdコマンド)がアカウントデータベース104から読み取れられる。
図８-1の(ａ)はHPUX用のコマンドであり４つの機能コードから構成させている。(ｂ)はOpen-VMS用のコマンドであり1つの機能コードと送信データ「MCR AUTHORIZE MODIFY /NOPWDEXP /PASSWD =パスワード ユーザID」により構成されている。両者の「ユーザＩＤ」には作業申請データに記載されているユーザＩＤ、即ち、図７−１のUnlockコマンドの「ユーザＩＤ」の欄に代入された作業者用のＩＤ(図３では「UserX」)が代入される。
HPUX用のコマンド(ａ)の「旧パスワード」「新パスワード」には以前設定されていたパスワードと新たに設定するパスワードが入れられる。「旧パスワード」が設定されていない時は空白となる。「新パスワード」は管理者が指定した文字列とする、管理コンピユータがランダムに生成した文字列とする等の手法が可能である。各パスワードは管理コンピュータ
100内のパスワード登録部103により管理され、アカウントデータベース104の所定の箇所に設定される。
Open-VMS用のコマンド(ｂ)の「パスワード」と「ユーザＩＤ」は各々(ａ)の「新パスワード」と「ユーザＩＤ」に対応する。
【００２５】
図８−２は、開放された作業者用のアカウントのパスワードを変更する処理フローである。
ステップ６２１：アカウント開放閉塞処理部102は図８-１(ａ)のコマンド行601の「機能コード５」を読み込み実行する。「機能コード５」を読み込むことによりアカウント開放閉塞処理部102は、送信データ欄に設定されている「passwd  ユーザＩＤ」をホストに送信し、ホストからの応答を待つ。応答が「エラー」の時はエラーメッセージを表示して処理を終了し、応答がプロンプト「Old password」の時は次の機能コード６を読み込んで実行し、応答がプロンプト「New password」の時は次の次の機能コード７を読み込んで実行する。
「機能コード５」を読み込んだアカウント開放閉塞処理部102は送信データの欄に設定されている「passwd  ユーザＩＤ」を対象サーバに送信し、サーバからの応答を待つ。
ステップ６２２：passwdコマンドに対して対象サーバのＯＳがエラーを応答した場合はステップ６２９に進み、管理者端末111にエラーメッセージを表示して処理を終了する。対象となるアカウントが作業者用のアカウント、またはrootの場合、サーバは設定されているパスワード(旧パスワード)の入力を要求するプロンプト「Old password」を返す場合がある(OSのバージョンによる)。このプロンプトを検知したアカウント開放閉塞処理部102はステップ６２３に進む。設定すべきパスワード(新パスワード)の入力を要求するプロンプト「New password」を検知したアカウント開放閉塞処理部102はステップ６２５に進む。
ステップ６２３：アカウント開放閉塞処理部102はプロンプト「Old password」に応答して、図８−１(ａ)の「機能コード６」を読み込み実行する。「機能コード６」はアカウント開放閉塞処理部102に、送信データの欄に記憶されている「旧パスワード」をサーバに送信し応答を待ち、応答が「エラー」の時はエラーメッセージを表示して処理を終了し、応答がプロンプト「New password」の時は次の機能コード７を読み込み実行することを指示する。
ステップ６２４：旧パスワードの送信に対して、サーバがエラーを応答した場合はステップ６２９に進み、管理者端末111にエラーメッセージを表示して終了する。応答信号として設定すべきパスワード(新パスワード)の入力を要求するプロンプト「New password」を応答した場合はステップ６２５に進む。
ステップ６２５：アカウント開放閉塞処理部102はプロンプト「New password」に応答して、図８−１(ａ)コマンド行６0３の「機能コード７」を読み込む。「機能コード７」はアカウント開放閉塞処理部102に、送信データの欄に記憶されている「新パスワード」をサーバに送信し応答を待つ。
ステップ６２６：新パスワードに使用できない文字が含まれていた等の理由により、新パスワードの送信に対して、サーバがエラーを応答した場合はステップ６２９に進み、管理者端末111にエラーメッセージを表示して終了する。サーバのＯＳが新パスワードの確認入力を要求するプロンプト「Re-enter new password」を応答した場合はステップ６２７に進む。
ステップ６２７：アカウント開放閉塞処理部102はプロンプト「Re-enter new password」に応答して、図８−１(ａ)コマンド行６0４の「機能コード８」を読み込む。「機能コード８」を読み込むことにより、アカウント開放閉塞処理部102は送信データの欄に記憶されている「新パスワード」をサーバに送信し処理を終了する(ステップ６２８)。
【００２６】
図５のステップ３１５で、サーバのＯＳがOpen-VMSと識別され時、アカウント開放閉塞処理部102はパスワード変更コマンドとして図８−１の(ｂ)に示されるOpen-VMS用のパスワード変更コマンドをアカウントデータベース104から読み出す。アカウント開放閉塞処理部102は「機能コード９」を読み込むことにより、送信データの欄に設定されているデータをＯＳに送信する。このデータはサーバのＯＳのパスワード設定コマンドであり、このデータを受信したサーバのＯＳはパスワードの設定処理を行い、成功／不成功の応答を返信する。
Open-VMSのパスワード設定コマンドは1つの機能コードのみである。従って、カウント開放閉塞処理部102はサーバの応答からエラーの有無を判別し、所定のメッセージを管理者端末111に表示して処理を終了する。
【００２７】
図４−２ないし図８−２は、アカウントの解放を指示する作業申請を処理するものである。指示された作業申請がアカウントの閉塞の場合、図４−２の(ｄ)でアカウントを閉塞する処理を行う。アカウント開放閉塞処理部102はアカウントデータベース104から対象サーバのＯＳに適合したLockのコマンドを読み出して実行する。
図９−１(ａ)はHPUX用のLockコマンドの例であり、1つの機能コードと送信データ「/usr/lbin/modprpw -l -m alock=YES ユーザＩＤ」により構成されている。
(ｂ)はOpen-VMS用のLockコマンドの例であり、HPUX用と同様、1つの機能コードと送信データ「MCR AUTHORIZE MODIFY /FLAGS=DisUser ユーザＩＤ」により構成されている。両者の「ユーザＩＤ」には閉塞するアカウントのユーザＩＤが代入される。
図９−２はアカウント閉塞のフローである。アカウント開放閉塞処理部102は「機能コード１０」を読み込むことにより、送信データの欄に設定されているデータをＯＳに送信する。このデータはサーバのＯＳのアカウントの閉塞コマンドであり、受信したＯＳはアカウントの閉塞処理を行い、成功／不成功の応答を返す。
Lockコマンドは1つの機能コードのみである。従って、カウント開放閉塞処理部102はサーバの応答からエラーの有無を判別し、所定のメッセージを管理者端末111に表示して処理を終了する。
【００２８】
システムのメンテナンスにはシステム内の複数のサーバに跨る作業が存在する。このようなメンテナンスでは作業者は関連する複数のサーバに同時にログインする必要がある。このような作業では、アカウントの開放を要求する１つの作業申請により必要となる複数のアカウントの開放を全て要求する。アカウントの開放時には作業申請されたアカウントを全て開放し、メンテナンス作業が終了した時には、開放したアカウントを全て閉塞する。
１つのシステム内でメンテナンス等の作業を複数平行して行うことが可能であり、複数の作業で１つのアカウントを共用する場合がある。本発明は、アカウントデータベース104にアカウントの開放が行われた作業申請と、各作業申請で開放されたアカウントを管理するアカウント対応テーブルを設け、システム内で行われている作業と利用されているアカウントの対応を記憶する構成を有している。
【００２９】
図１０−１はアカウント対応テーブルの例である。(ａ)は「作業申請１」に「アカウント１」と「アカウント３」が開放されており、「作業申請２」に「アカウント２」が開放されている状態のアカウント対応テーブルであり、(ｂ)は作業３の開始に伴い、「作業申請３」に対して「アカウント１」と「アカウント４」が開放された時のアカウント対応テーブルであり、(ｃ)は作業１が終了し、「作業申請１」のアカウントが閉塞された時のアカウント対応テーブルである。(ｂ)の作業３に対するアカウントの開放により、「アカウント１」が作業１と作業３により共用されたことを示している。
図１０−２は新たな作業申請に対してアカウントの開放を行うフローであり、図１０−３は作業の終了により当該作業のために開放されていたアカウントを閉塞するフローである。
【００３０】
図１０−２に示されるアカウントの開放フローは以下の通りである。
ステップ８１１：図４−２の(ｂ)に対応するステップであり、管理者が管理者端末111から作業申請番号を指示する等の方法により管理者コンピュータ100にアカウントの開放処理を指示する。管理者コンピュータ100のアカウント開放閉塞処理部102は指示された作業申請データをアカウント申請データベース110から読み出し、上述した通り、作業申請内容のチェックと解析を行う。
ステップ８１２：アカウントデータベース104に記憶されているアカウント対応テーブルに新たに実行される作業とアカウントを管理する項目を追加する。図１０−１に示されるアカウント対応テーブルでは、(ａ)の状態のアカウント対応テーブルにアカウントの開放を要求された作業３に対応する管理項目「作業申請３」が追加される。
ステップ８１３：ステップ８１１でアカウント申請データベース110から読み出された作業申請データから開放を要求されたアカウントを１つ抽出する。図１０−１の作業３の作業申請データからは「アカウント１」が抽出される。「アカウント１」の処理が終了すると後述するステップ８１７を経て再度ステップ８１３が実行され、「アカウント４」が抽出される。
ステップ８１４：アカウント対応テーブルを検査し、抽出されたアカウントが他の作業申請により既に開放されているか否かを検査する。「アカウント１」は「作業申請１」により既に開放されているため、ステップ８１５はスキップされ、ステップ８１６に進む。「アカウント４」が抽出された場合、「アカウント４」は開放されていないためステップ８１５に進む。
ステップ８１５：図４−２ないし図８−２に記載した手順従って対応するサーバにログインし、要求されたアカウント(図１０−１の作業申請３では「アカウント４」)を開放する。
ステップ８１６：アカウント対応テーブルに「アカウント１」及び「アカウント４」が作業３により使用されていることを示すデータを付加する。
ステップ８１７：ステップ８１１で読み出された作業申請データに他のアカウントが存在するか否かを判定する。「アカウント１」の処理が終了した場合は、他に「アカウント４」が存在するため、ステップ８１３に戻る。「アカウント４」の処理が終了した場合は、他に処理すべきアカウントは存在しないため、ステップ８１８に進む。
ステップ８１８：作業申請者にアカウントが開放されたことと、アカウントにログインするためのパスワードを通知する。
【００３１】
図１０−３に示されるアカウントの閉塞フローは以下の通りである。
ステップ８２１：作業者が作業の終了を管理者に報告すると、管理者は管理者端末111から管理者コンピュータ100に作業申請により開放したアカウントの閉塞を指示する。図１０−１(ｃ)は作業１を閉塞する例であり、アカウント開放閉塞処理部102は指示された作業申請データ、即ち作業申請データ１をアカウント申請データベース110から読み出す。
ステップ８２２：読み出された作業申請データからアカウントを抽出する。作業申請データ１からまず「アカウント１」が抽出される。「アカウント１」の処理が終了すると後述するステップ８２７を経て再度ステップ８２２が実行され、「アカウント３」が抽出される。
ステップ８２３：アカウントデータベース104に記憶されているアカウント対応テーブルを検査し、ステップ８２２で抽出されたアカウントが他の作業で使用されているか否かを検査する。
ステップ８２４：他の作業で使用されているアカウントを閉塞することはできない。図１０−１の「アカウント１」は作業３で使用されているためステップ８２６に進む。ステップ８２２で抽出されたアカウントが「アカウント３」の場合、「アカウント３」を使用している作業は存在しないためステップ８２５に進む。
ステップ８２５：図４−２ないし図６−２と図８−１ないし図９−２に記載した手順により対応するサーバにログインし、要求されたアカウント(図１０−１の「作業申請１」では「アカウント３」)を閉塞する。
ステップ８２６：アカウント対応テーブルの「アカウント１」と「アカウント３」が作業３により使用されていることを示すデータを削除する。
ステップ８２７：作業申請データに閉塞すべきアカウントが他に存在するか否かを検査する。残存する場合はステップ８２２に進み、残りのアカウントの閉塞処理を行う。他に閉塞すべきアカウントが残存しない場合はステップ８２８に進み、作業申請データ中の閉塞処理を終了する。
【産業上の利用可能性】
【００３２】
本発明は異なるＯＳにより管理される複数のサーバからなるシステムにおいて、サーバのメンテナンスに必要な作業用のアカウントの開放を要求する申請データをアカウント申請データベース110に記憶する。また、アカウントの開放、閉塞、パスワードの変更をＯＳに指示するコマンドを各ＯＳ対応に記憶する構成である。システムの管理者が作業の申請番号等によりアカウントの開放を要求する作業申請データを特定すると、管理者コンピュータ100は申請されたアカウントのサーバとそのサーバのＯＳを識別し、ＯＳに適合したコマンドを読み出して実行する。また、メンテナンスの終了により不要となったアカウントを閉塞する場合、管理者は作業申請番号を指定してアカウントの閉塞を指示することにより関連するアカウントを自動的に閉塞する。
本発明の構成により、メンテナンスを行う作業者が要求したアカウントの開放とパスワードの設定、メンテナンスが終了した時に実行するアカウントの閉塞において、管理者はＯＳに対応したログインコマンド、アカウント開放コマンド等を作成する等、ＯＳの種別を意識した操作を行う必要か無く、迅速かつ的確にアカウントの開放あるいは閉塞を行うことが可能となる。
また本発明の他の実施態様では、システム内で行われているメンテナンス等の作業と、各作業のために開放されたアカウントを対応付けて一元管理する構成を採用している。この構成により、複数のメンテナンス作業が同時に行われる状況において、既に開放されているアカウントに対して開放を指示する、あるいは、他の作業で利用されているアカウントを閉塞するという誤操作を防止することが可能となり、管理者の負担と作業時間の軽減が可能となる。
【図面の簡単な説明】
【００３３】
【図１】本発明に係るアカウントの開放閉塞システムの概要図
【図２】本発明に係るシステム及びプログラムのＧＵＩの例を示す図
【図３】本発明に係るアカウントデータベースの例を示す図
【図４−１】本発明に係るコマンドのタイプ別の制御の流れを示す図
【図４−２】本発明に係るシステム及びプログラムの制御の流れを示す図
【図５】本発明に係るシステム及びプログラムの初期処理のフロー図
【図６−１】HPUXとOpen-VMSのログインコマンドを示す図
【図６−２】本発明に係るシステム及びプログラムのログイン処理のフロー図
【図７−１】HPUXとOpen-VMSのUnlockコマンドを示す図
【図７−２】本発明に係るシステム及びプログラムのアカウント開放処理のフロー図
【図８−１】HPUXとOpen-VMSのパスワード変更コマンドを示す図
【図８−２】本発明に係るシステム及びプログラムのパスワード変更処理のフロー図
【図９−１】HPUXとOpen-VMSＯＳのLockコマンドを示す図
【図９−２】本発明に係るシステム及びプログラムのアカウント閉塞処理のフロー図
【図１０−１】アカウント対応テーブルの例
【図１０−２】アカウント開放時のアカウント対応テーブルの管理フローの図
【図１０−３】アカウント閉塞時のアカウント対応テーブルの管理フローの図
【図１１】従来のアカウント開放手順を示す図
【図１】
0005085267.tif 000002
【図２】
0005085267.tif 000003
【図３】
0005085267.tif 000004
【図４−１】
0005085267.tif 000005
【図４−２】
0005085267.tif 000006
【図５】
0005085267.tif 000007
【図６−１】
0005085267.tif 000008
【図６−２】
0005085267.tif 000009
【図７−１】
0005085267.tif 000010
【図７−２】
0005085267.tif 000011
【図８−１】
0005085267.tif 000012
【図８−２】
0005085267.tif 000013
【図９−１】
0005085267.tif 000014
【図９−２】
0005085267.tif 000015
【図１０−１】
0005085267.tif 000016
【図１０−２】
0005085267.tif 000017
【図１０−３】
0005085267.tif 000018
【図１１】
0005085267.tif 000019