以下、情報処理装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
(実施の形態1)
図1は、本実施の形態における情報処理装置のブロック図である。
情報処理装置1は、設定情報格納部101、指定情報格納部102、変更指示受付部103、変更処理部104、変更検出部105、出力部106、指定情報変更受付部107、および指定情報変更処理部108を具備する。
設定情報格納部101には、1以上のソフトウェアの設定に関する情報である1以上の設定情報が格納され得る。一以上のソフトウェアはどのようなソフトウェアであっても良い。一以上のソフトウェアは、例えばアプリケーションソフトウェアである。ここでは、特に、ソフトウェアが、例えば、会計や、販売や、人事等の企業等の業務に用いられる業務システムとして機能するソフトウェアである場合を例に挙げて説明する。このソフトウェアは、情報処理装置1が実行しても良いし、情報処理装置1以外の装置が実行しても良い。設定情報とは、ソフトウェアのユーザや管理者等が変更可能な、ソフトウェアに予め指定されている情報であって、ソフトウェアの動作を指定するための情報である。ソフトウェアによる処理はこの設定情報に従って実行される。設定情報とは、具体的には、いわゆる環境設定や、初期設定等の情報である。
設定情報は、例えば、ソフトウェアの動作に関するもの(ルール)と、ユーザ入力データに関するもの(ルール)とに分類することができる。ソフトウェアの動作に関するものは、例えば、ソフトウェアについての、シングルサインオンの許可についての設定情報、利用者アカウントの設定情報、ログ取得のポリシーの設定情報等である。また、ユーザ入力データに関するものは、例えば、アカウントポリシーの設定情報、パスワードポリシーの設定情報等である。設定情報は、例えば、これらのうちの少なくとも一つ以上を含むものである。また、設定情報には、例えば、ソフトウェアの動作に関するものと、ユーザ入力データに関するものとが混在していてもよい。なお、ここで述べる設定情報は、具体的には、システムの根幹についての設定の情報である。
アカウントポリシーの設定情報とは、ソフトウェアのログイン等に用いられるユーザアカウントに関するルールを指定する設定情報である。アカウントポリシーの設定情報は、例えば、ソフトウェアにアカウントを用いてログイン等を行う際に、パスワードの入力ミスの回数の上限を指定する設定情報である。この入力ミスの回数の上限を、上回る回数の入力ミスがあった場合、そのアカウントによるログインができなくなる。また、アカウントに用いられる文字の文字数や、文字の属性等を指定する情報であっても良い。
パスワードポリシーの設定情報とは、ソフトウェアのログイン等に利用されるパスワードに関するルールを指定する情報である。パスワードポリシーの設定情報は、例えば、パスワードの入力要件の複雑さや、有効期限等を指定する設定情報である。
シングルサインオンの許可についての設定情報とは、例えば、ソフトウェアが、それぞれがログオンの必要な複数のソフトウェアの集合体である場合や、複数の機能について、ログオンによる制限がかけられている場合においては、シングルサインオンによって、どのソフトウェアの利用を可能とするか、あるいはどの機能の利用を可能とするかを指定する設定情報である。言い換えれば、シングルサインオンによりログオン可能なソフトウェアおよび機能を指定する設定情報である。
利用者アカウントの設定情報とは、利用者アカウント別の権限を設定する設定情報である。具体的には、管理者のアカウントに対して許可されている権限を指定する情報や、一般ユーザのアカウントに対して許可されている権限を指定する情報等を指定する情報である。
ログ取得のポリシーの設定情報とは、ログ取得の対象を設定する設定情報である。このログ取得の対象は、ソフトウェアが実行する処理であっても良いし、ソフトウェアに対して行われる設定情報の変更等の処理であっても良い。
設定情報は、通常は、テーブルを構成しているが、本実施の形態においては、かならずしもテーブルを構成していなくても良い。例えばXML等の構造化データを構成していても良い。設定情報格納部101は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
指定情報格納部102は、設定情報格納部101に格納されている1以上の設定情報のうちの、後述する変更検出部105による管理対象となる設定情報を指定する情報である管理対象指定情報が格納され得る。例えば、管理対象指定情報は、設定情報を識別するための情報である設定識別情報と、管理対象とするか否かを指定するための情報である管理対象判断情報とを対応付けた情報である。管理対象指定情報は、例えば、一の設定識別情報と、これに対応付けられた管理対象判断情報とが、一のレコードで管理される情報である。管理対象判断情報は、例えば、いわゆるフラグ等と呼ばれる情報が利用可能である。ただし、管理対象指定情報は、結果として、管理対象となる設定識別情報を指定できる情報であればよい。例えば、管理対象となる設定情報の設定識別情報だけを、管理対象指定情報としても良い。この場合、管理対象指定情報以外の設定識別情報に対応する設定情報は、管理対象でない設定情報となる。なお、設定情報を管理対象に指定する情報は、設定情報を、当該設定情報に対して行われた変更を示す情報を、後述する出力部106から出力する対象に指定する情報と考えても良い。指定情報格納部102は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
変更指示受付部103は、設定情報格納部101に格納されている設定情報に対する変更指示を受け付ける。変更指示は、例えば、設定情報の上書きや、削除、追加、レコードの追加、レコードの削除等の変更を指示する情報や、この情報と変更対象となる設定情報を指定する情報とを組み合わせた情報等である。変更指示受付部103は、例えば、受け付けた変更指示に応じて、変更処理部104に設定情報を変更する命令等を出力するようにしてもよい。また、変更指示受付部103は、受け付けた変更指示に応じて、変更検出部105に変更対象となる設定情報を示す情報を出力するようにしてもよい。また、変更指示受付部103は、受け付けた変更指示に応じて、出力部106に変更内容を示す情報等を出力するようにしてもよい。ここで述べる受付とは、例えば、入力手段からの受付や、他の機器等から送信される入力信号の受信や、記録媒体等からの情報の読み出し等である。変更指示の入力手段は、テンキーやキーボードやマウスやメニュー画面によるもの等、何でも良い。変更指示受付部103は、テンキーやキーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
変更処理部104は、変更指示受付部103が受け付けた変更指示に応じて、当該変更指示に対応した設定情報格納部101に格納されている設定情報に対して変更を行う。例えば、変更指示受付部103から送信される命令に従って、当該命令が指定する設定情報格納部101に格納されている設定情報に対して、命令が指定する変更を行う。ここで行われる変更は、設定情報の上書きや、削除、追加、レコードの追加、レコードの削除等である。変更処理部104は、通常、MPUやメモリ等から実現され得る。変更処理部104の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
変更検出部105は、設定情報格納部101に格納されている設定情報のうちの、指定情報格納部102に格納されている管理対象指定情報により管理対象として指定されている設定情報に対して行われた変更を検出する。
変更検出部105は、管理対象指定情報により管理対象として指定されている設定情報に対して行われた変更をどのように検出してもよい。例えば、変更処理部104が、設定情報に対して変更の処理を行う際に、変更の対象となる設定情報を指定する情報である上述した設定識別情報を変更検出部105等に対して出力するようにし、変更検出部105は、変更処理部104が出力した設定識別情報が示す設定情報が、管理対象指定情報が管理対象として指定する設定情報のいずれかと一致するか否か判断し、一致する場合、管理対象として指定されている設定情報に対して行われたことを検出する。具体的には、変更検出部105は、変更処理部104から出力される設定識別情報が、管理対象として指定されている設定情報の設定識別情報であるか否かを、指定情報格納部102に格納されている管理対象指定情報を用いて判断する。そして、管理対象として指定されている設定情報の設定識別情報である場合、変更処理部104により行われる変更が、管理対象として指定されている設定情報に対して行われた変更であることを検出、即ち判断する。より具体的には、管理対象指定対象情報が、上述したように設定識別情報と管理対象判断情報とを対応付けた情報である場合、管理対象指定情報に含まれる設定識別情報の中から、変更処理部104から出力される設定識別情報に一致する設定識別情報を検索し、検出された設定識別情報に対応付けられている管理対象判断情報が、管理対象であることを指定する情報であった場合、この設定識別情報に対応する設定情報が管理対象であると判断する。そして、変更処理部104により行われる変更が、管理対象指定情報により管理対象として指定されている設定情報に対して行われた変更であることを検出する。
また、設定情報格納部101に格納されている一以上の設定情報について、それぞれの変更の履歴、例えばどの時刻にどの情報が変更されたかを示す情報を、変更処理部等が、定期的に保存しておくようにして、変更検出部105が、定期または不定期の所定のタイミングで、この履歴の情報から変更された設定情報を検出し、変更された設定情報が、管理対象指定情報において管理対象として指定されている設定情報であるかを判断し、管理対象として指定されている設定情報であった場合に、管理対象として指定されている設定情報に対して変更が行われたことを検出する。
また、変更検出部105は、設定情報格納部101に格納されている設定情報のうちの、指定情報格納部102に格納されている管理対象指定情報で管理対象に指定されている設定情報に対して行われる変更、例えばレコードやファイルの更新等を監視するようにしても良い。
また、例えば、変更指示受付部103が、設定情報に対しする変更指示を受け付けた場合に、変更の対象となる設定情報を指定する情報である上述した設定識別情報を変更検出部105等に対して出力するようにし、変更検出部105は、変更指示受付部103が出力した設定識別情報が示す設定情報が、管理対象指定情報が管理対象として指定する設定情報のいずれかと一致するか否か判断し、一致する場合、管理対象として指定されている設定情報に対して行われたことを検出するようにしてもよい。
なお、変更検出部105は、設定情報以外の、アカウントの追加や、パスワード等の変更自体を検出するものではないことはいうまでもない。
変更検出部105は、通常、MPUやメモリ等から実現され得る。変更検出部105の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
出力部106は、変更検出部105が検出した変更を示す情報を出力する。出力部106が出力する変更を示す情報は、変更を示すことができればどのような情報であってもよく、変更内容でも良いし、変更が行われたことを示す情報でも良い。具体的には、変更検出部105が検出した、変更が行われた設定情報の設定識別情報や、変更の行われた時刻を示す情報や、どのような変更が行われたかを示す情報や、削除や追加された文字列等の変更が行われた内容を示す情報や、これらの組み合わせであっても良い。出力部106が出力する変更を示す情報は、いわゆるログ等の情報であってもよい。変更検出部105が検出した変更を示す情報は、変更検出部105が検出した変更に関する情報、あるいは変更内容の詳細を示す情報と考えても良い。
出力部106が、変更を示す情報をどのように取得するかは問わない。例えば、変更処理部104が、変更処理を行う時に、これらの変更処理等の内容を含む情報を出力するようにし、この情報を出力部106が取得して出力するようにしてもよい。例えば、変更指示受付部103が、変更指示を受け付けた場合に、これらの変更指示が示す変更すべき内容を含む情報を出力するようにし、この情報を出力部106が取得して出力するようにしてもよい。また、このような変更処理部104や変更指示受付部103が出力する情報から、出力部106が必要な情報を取得して出力するようにしてもよい。また、出力部106が、設定情報の履歴を示す情報等から変更を示す情報を取得して、出力しても良い。また、変更の行われた時刻の情報は、図示しない時計等の計時手段等から直接取得して出力するようにしても良いし、変更時に、変更検出部105が計時手段等から取得した時刻の情報を取得しても良い。また、出力部106は、変更を示す情報を、予め指定されたタイミングで、予め指定された送信先に、電子メールで送信するようにしてもよい。電子メールで送信する場合、変更を示す情報を、電子メールに添付して送信してもよいし、電子メールの本文として送信しても良い。具体的には、出力部106は、予め指定されたタイミングまで、変更を示す情報を図示しない記憶媒体等に蓄積しておき、予め指定されたタイミングで送信する。予め指定されたタイミングは、一定のタイミングであっても、ランダムなタイミングであってもよい。また、なんらかの処理をトリガーとしても良い。電子メールの送信先は、図示しない記憶媒体等に予め記憶しておき、送信時に取得するようにする。送信先は問わない。例えば、送信先は、ソフトウェアの管理者等を含むことが好ましい。ここで述べる出力とは、ディスプレイへの表示、プロジェクターを用いた投影、プリンタへの印字、音出力、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラム等への処理結果の引渡し等を含む概念である。
出力部106は、ディスプレイやプリンタ等の出力デバイスを含むと考えても含まないと考えても良い。出力部106は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
指定情報変更受付部107は、指定情報格納部102に格納されている管理対象指定情報についての変更指示を受け付ける。具体的には、この変更指示は、管理対象指定情報において管理されている、設定情報格納部101に格納されている一以上の設定情報に対する、管理対象となる設定情報としての指定を変更する指示である。ここで述べる受付とは、例えば、入力手段からの受付や、他の機器等から送信される入力信号の受信や、記録媒体等からの情報の読み出し等である。変更指示の入力手段は、テンキーやキーボードやマウスやメニュー画面によるもの等、何でも良い。指定情報変更受付部107は、テンキーやキーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
指定情報変更処理部108は、指定情報変更受付部107が受け付けた変更指示に従って、指定情報格納部102に格納されている管理対象情報を変更する。具体的には、指定情報変更処理部108は、管理対象指定情報により指定される、設定情報格納部101に格納されている一以上の設定情報が管理対象であるか否かを示す属性を、変更指示に応じて変更する。例えば、指定情報変更処理部108は、管理対象指定情報内の、変更指示が示す設定情報に対応する管理対象判断情報の値を変更する。指定情報変更処理部108は、通常、MPUやメモリ等から実現され得る。指定情報変更処理部108の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
次に、情報処理装置の動作について図2のフローチャートを用いて説明する。
(ステップS201)変更指示受付部103は、変更指示を受け付けたか否かを判断する。受け付けた場合、ステップS202に進み、受け付けていない場合、ステップS209に進む。
(ステップS202)変更処理部104は、ステップS201において受け付けた変更指示に応じて、設定情報格納部101に格納されている設定情報を変更する。例えば、設定情報の一部の情報を書き換えたり、削除したり、追加したりする。
(ステップS203)変更処理部104は、ステップS202において変更した設定情報を示す設定識別情報と、変更内容を示す情報等を出力する。
(ステップS204)変更検出部105は、ステップS203において変更処理部104が出力した設定識別情報と、指定情報格納部102に格納されている管理対象指定情報とを用いて、管理対象となる設定情報に対する変更が行われたか否かを検出する。例えば、ステップS203において、変更処理部104が出力した設定識別情報が示す設定情報が、管理対象指定情報が管理対象として指定する設定情報のいずれかと一致するか否かを判断し、一致する場合、管理対象の設定情報に対する変更が行われたことを検出し、一致しない場合、変更が行われていないことを検出する。変更が行われたことを検出した場合、ステップS205に進み、変更が行われていないことを検出した場合、ステップS201に戻る。
(ステップS205)出力部106は、管理対象に対して変更が行われたことを示す情報を、ステップS203において変更処理部104が出力した変更内容を示す情報等から取得して、図示しないハードディスク等の記憶媒体に蓄積する。
(ステップS206)出力部106は、所定のタイミングであるか否かを判断する。例えば、予め指定した時刻や、曜日、日時等であるか否かを判断する。そして、所定のタイミングである場合、ステップS207に進み、所定のタイミングでない場合、ステップS201に戻る。
(ステップS207)出力部106は、ステップS206により、変更を示す情報が図示しない記録媒体等に蓄積されているか否かを判断する。蓄積されている場合、ステップS208に進み、蓄積されていない場合、ステップS201に戻る。
(ステップS208)出力部106は、ステップS206において蓄積された、変更を示す情報を読み出す。また、出力部106は、予め図示しない記憶媒体等に蓄積される送信先のメールアドレスの情報を取得する。そして、取得したメールアドレスに対して、読み出した変更を示す情報を電子メールで送信する。そして、ステップS201に戻る。なお、送信済みの変更を示す情報については、送信済みであることを示すフラグ等の情報を付与するようにし、このフラグが付加された情報については、再度の電子メール送信を行わないようにすることが好ましい。
(ステップS209)指定情報変更受付部107は、指定情報格納部102に格納されている管理対象指定情報についての変更指示を受け付けたか否かを判断する。受け付けた場合、ステップS210に進み、受け付けていない場合、ステップS206に進む。
(ステップS210)指定情報変更処理部108は、ステップS209において受け付けた管理対象指定情報についての変更指示に従って、指定情報格納部102に格納されている管理対象指定情報を変更する。そして、ステップS206に進む。
なお、図2のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
以下、本実施の形態における情報処理装置の具体的な動作について説明する。ここでは、業務システムを実現するソフトウェアについての設定情報が、予め設定情報格納部101に格納されているものとする。
図3は、設定情報格納部101に格納されている設定情報の一例を示す図である。ここでは、設定情報格納部101には、ソフトウェアについてのパスワードポリシー設定情報1021、アカウントポリシー設定情報1022、シングルサインオンの許可についての設定情報1023等が格納されているものとする。ここでは、各設定情報は異なるファイルを構成しているものとする。但し一のファイルを構成していても良い。
図4は、図3に示したパスワードポリシー設定情報の一例を示す図である。パスワードポリシー設定情報は、ソフトウェアのログイン等に利用されるパスワードに関するルールを指定する情報である。パスワードポリシー設定情報は、「ID」、「設定項目」、および「設定内容」という属性を有している。「ID」は、設定情報を構成するレコードを管理するための識別情報である。「設定項目」は、設定情報の設定可能な項目を示す情報である。「設定内容」は、各設定項目について設定される値である。
ここでは、最初に、ユーザがパスワードポリシー設定情報を変更する場合について説明する。まず、ユーザがマウス等を操作して、パスワードポリシー設定情報の入力インターフェース画面を情報処理装置のモニタ106aに表示させる。モニタ106aは、例えば出力部106の表示デバイスの一つであるとする。
次に、ユーザがマウスやキーボード等を操作して、例えば、入力インターフェース画面のうちの、パスワードの最小文字数を指定するフィールド50の値を、初期値である「4」から、「8」に変更して、「OK」ボタン51を押したとする。この操作に従って、変更指示受付部103は、パスワードポリシー設定情報の「最小文字数」という項目の値を、「8」に変更する指示を受け付ける。変更指示受付部103は、この指示に従って、パスワードポリシー設定情報の「最小文字数」という項目の値を、「8」に変更させる処理を実行させる命令を、変更処理部104に送信する。
図5はモニタ106aに表示されたパスワードポリシー設定情報の入力インターフェース画面の一例を示す図である。
変更処理部104は、変更指示受付部103から送信される命令に従って、設定情報格納部101に格納されているパスワードポリシー設定情報1021の「最小文字数」という項目の値を、「8」に変更する処理を実行する。具体的には、図4に示したパスワードポリシー設定情報の、「設定項目」の値が「最小文字数」であるレコード、即ち「ID」が「001」であるレコードの「設定内容」の値を「4」から「8」に書き換える。
また、変更処理部104は、「パスワードポリシー設定情報」という名称である設定情報の「最小文字数」という項目の値を、「8」に書き換えた処理結果を示す情報を出力する。この出力は、書き換えの処理を行う前に行っても良い。また、この情報は、変更処理部104の行った処理を記録するログに、上記のような処理内容を記録することを指示する命令の出力でも良い。また、ここでは、変更処理部104は、処理を行った時刻を示す情報を、図示しない時計等から取得し、この処理結果を示す情報内に含めて送信する。
図6は、指定情報格納部102に格納されている管理対象指定情報の一例を示す図である。管理対象指定情報は、「ID]と、「設定識別情報」と、「管理対象判断情報」という属性を有している。「ID」は、レコードを管理するための識別情報である。「設定識別情報」は、設定情報を識別するための情報であり、ここでは、設定情報名であるとする。「管理対象判断情報」は、同じレコードの「設定識別情報」が示す設定情報が管理対象であるか否かを指定する情報である。ここでは、値「必要」は管理対象であることを指定し、値「不要」は、管理対象でないことを指定するものとする。
変更検出部105は、変更処理部104が出力する処理結果を示す情報を受信し、この処理結果に含まれる、処理対象となった設定情報を示す情報である設定情報名を検索キーとして、図6に示した管理対象指定情報から、「設定識別情報」の値が、当該検索キーと一致するレコードを検索する。ここでは、処理結果に「パスワードポリシー設定情報」という設定情報名が含まれるため、変更検出部105は、「設定識別情報」の値が、「パスワードポリシー設定情報」に一致するレコードを検索する。ここでは、「ID」が「01」であるレコードの「設定識別情報」の値が、「パスワードポリシー設定情報」であるため、このレコードが検出される。そして、変更検出部105は、このレコードの「管理対象判断情報」の値が、「必要」であるか否かを判断する。ここでは、「ID」が「01」であるレコードの「管理対象判断情報」の値が、「必要」であるため、変更検出部105は、変更処理部104によって行われた変更が、管理対処指定情報により、管理対象に指定された設定情報についての変更であることを検出する。即ち、変更検出部105は、結果的に管理対象に指定された設定情報についての変更を検出したこととなる。そして、検出結果を出力部106に送信する。
出力部106は、変更検出部105の検出結果が、変更処理部104による設定情報に対する変更が、管理対処指定情報により管理対象に指定された設定情報に対する変更であることを示すものであるため、変更検出部105が検出した変更を示す情報を、図示しない記憶媒体等に蓄積する。ここでの変更を示す情報は、上述した変更された設定情報名と、変更された設定項目と、変更された設定内容と、変更日時を示す情報であるとする。出力部106が出力する変更を示す情報は、変更対象や変更日時等を示すいわゆるログと考えても良い。出力部106は、これらの情報を、ここでは例として、変更処理部104が出力する上述した処理結果を示す情報から取得する。
次に、図7に示すようなアカウントポリシー設定情報についての入力インターフェース等を介して、上記と同様に、ユーザがアカウントポリシー設定情報を変更する操作を行ったとする。この場合においても、変更指示受付部103が受け付けたユーザの指示に従って、変更処理部104により、アカウントポリシー設定情報1022に対する変更処理が行われる。
ここで、図6に示した管理対象指定情報のうちの、変更処理部104が処理対象としたアカウントポリシー設定情報の名称を、「設定識別情報」の値として有するレコードに含まれる「管理対象判断情報」の値は、「不要」であるため、変更検出部105は、変更処理部104により行われた変更が、管理対象指定情報により管理対象として指定されている設定情報に対して行われた変更ではないと判断する。即ち、管理対象指定情報により管理対象として指定されている設定情報に対して行われた変更であることを検出しない。
この結果、出力部106は、変更処理部104が処理したアカウントポリシー設定情報に対する変更についての情報は出力しない。
その後、上述したような設定情報に対する変更の処理等が繰り返され、予め指定した日時になったとする。例えば、予め、毎週水曜日の午後5時が指定されていたとすると、この日時になった時点で、出力部106は、予め図示しない格納部等に指定されているメールアドレスを読み出し、このメールアドレスを宛先に設定して、図示しない記憶媒体等に蓄積した設定情報に対する変更を示す情報を読み出し、電子メールで出力する。ここでは、メールアドレスの宛先は、ソフトウェアの管理者のメールアドレスであるとする。
これにより、予め指定された日時に、メールアドレスの宛先となるユーザ、例えば管理者に対して、管理対象指定情報により予め管理対象に指定しておいた設定情報に対して行われた変更を通知することができる。
図8は、送信された電子メールの表示例を示す図である。
次に、管理対象指定情報を変更する場合について説明する。まず、ユーザがマウス等を操作して、管理対象指定情報の入力インターフェース画面を情報処理装置のモニタ106aに表示させる。
図9は、管理対象指定情報についての変更指示を受け付けるための入力インターフェース画面の一例を示す図である。
次に、ユーザがマウスやキーボード等を操作して、例えば、入力インターフェース画面のうちの、「シングルサインオン設定情報」とう設定情報名の横に位置するチェックボックスのうちの、「不要」の列のチェックボックス91にチェックを入れたとする。これにより、「必要」の列のチェックボタン90のチェックが外れるものとする。そして、「OK」ボタンを押したとする。指定情報変更受付部107は、この操作に応じて、変更されたチェックボックスに対応した管理対象指定情報を変更する指示を受け付ける。この変更の指示は、ここでは、変更されたチェックボックスに対応する設定情報についての、管理対象判断情報を、変更後のチェックボックスに対応した値に変更する指示であるとする。例えば、ここでの変更の指示は、「シングルサインオン設定情報」という設定情報についての、管理対象判断情報を「不要」に変更する指示である。
指定情報変更処理部108は、指定情報変更受付部107が受け付けた指示に応じて、指定情報格納部102に格納されている管理対象指定情報を変更する。ここでは、図6に示した管理対象指定情報において、「設定識別情報」の値が、「シングルサインオン設定情報」であるレコードを検索し、そのレコードの「管理対象判断情報」の値を「不要」に変更する。具体的には、図6における「ID」が「03」であるレコードの「管理対象判断情報」の値を、「必要」から「不要」に変更する。
この結果、図3に示したシングルサインオン設定情報1023に対して変更が行われても、変更を示す情報が出力部106から出力されないようにすることができる。
なお、ここでは、チェックが変更されたチェックボックスに対応した設定情報の管理対象指定情報だけを変更するようにしたが、チェックが変更されていない全ての設定情報についての管理対象指定情報の管理対象判断情報を、入力インターフェースが示すチェック状況に対応した値で、上書きするようにしても良い。
以上、本実施の形態によれば、管理対象指定情報により管理対象に指定されている設定情報に対して行われた変更を選択的に検出し、この変更を示す情報を出力するようにしたことにより、管理対象指定情報を用いて、設定情報のそれぞれについて、変更が行われたことを示す情報を出力するか否かを指定することができる。この結果、予め指定したソフトウェアの設定についての変更が行われた場合に、これらの変更を、例えばシステムの管理者等に、適切に出力、例えば通知することができる。例えば、重要度が高く、定期的、あるいは変更が発生したタイミング等において変更状況を確認する必要があるソフトウェア等の設定について変更が行われた場合に、これらについての変更のみを、選択的に、システムの管理者に通知するようにし、重要度が低いものについては、特に通知しないようにすること等が可能となる。
また、本実施の形態によれば、例えば、システムの根幹となる動作や制限事項等について設定する情報である設定情報の変更をレポートすることができ、システム自体の設定の変更が行われたか否かや、どのような変更が行われたかをレポートしたり、記録したりすることができる。この結果、システムが正常に運用されていることを確認することができ、システムが内部監査等の監査の条件を満たしていることを保証することが可能となる。
(実施の形態2)
本実施の形態にかかる情報処理装置は、上述した情報処理装置において、変更処理部が、設定情報のレコードを削除した場合に、当該削除されたレコードを、設定情報から完全に削除するとともに、削除されたレコードを、設定情報に対応した他のテーブルに蓄積しておくようにしたものである。
図10は、本実施の形態にかかる情報処理装置の構成を示す図である。
情報処理装置1aは、設定情報格納部101a、指定情報格納部102、変更指示受付部103a、変更処理部104a、変更検出部105、出力部106、指定情報変更受付部107、指定情報変更処理部108および削除テーブル格納部109を備えている。
情報処理装置1aにおいて、設定情報格納部101a、変更指示受付部103a、変更処理部104a、および削除テーブル格納部109以外の構成については、上記実施の形態1と同様の構成であるので説明は省略する。
設定情報格納部101aは、格納されている1以上の設定情報が、それぞれテーブルを構成している点を除けば、設定情報格納部101aは、上記実施の形態1と同様であるので、詳細な説明は省略する。なお、各設定情報のテーブルにおける各行を構成するデータをここではレコードと呼ぶ。レコードは設定情報の設定項目に対応したデータである。ただし、本実施の形態においては、実質的にテーブルとして扱われるものもテーブルと考える。
変更指示受付部103aは、設定情報格納部101aに格納されている設定情報の1以上のレコードを削除する指示を受け付け得る点を除けば、上記実施の形態1の変更指示受付部と同様であるので、詳細な説明は省略する。
削除テーブル格納部109には、設定情報格納部101aに格納されている設定情報に対応して設けられたテーブルであって、対応する設定情報から削除されたレコードが蓄積され得るテーブルである削除テーブルが格納され得る。設定情報に対応して設けられた削除テーブルは、設定情報と必ずしも1対1で対応していなくてもよい。削除テーブル格納部109は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
変更処理部104aは、設定情報格納部101に格納されている1以上の設定情報についての1以上のレコードを削除する変更指示に応じて、当該削除の対象となるレコードを、当該レコードを含む設定情報に対応する削除テーブルに蓄積し、当該削除の対象となるレコードを、設定情報格納部101に格納されている設定情報から削除する。削除の対象となるレコードを削除テーブルに蓄積する処理と、当該削除の対象となるレコードを設定情報から削除する処理との順番は問わない。ここで述べる削除とは、レコードの完全な削除であり、削除したレコードの位置を、他のレコードで詰める処理も含む処理である。従って、例えば、データを単に不可視としたり、他のデータが上書き可能な状態とする処理ではない。ただし、ここでの削除は、削除の指示を受け付けた際に、必ずしもリアルタイムに行われる必要はない。例えば、情報処理装置1aの電源オフ時や、ソフトウェアの終了時や、他の主要な処理が行われていない時や、ユーザによる操作が行われていない時等に行われるようにしても良い。また、変更処理部104aは、削除テーブル格納部109に、レコードを削除する設定情報に対応した削除テーブルが存在しない場合、レコードを削除する設定情報に対応した削除テーブルを新規に作成するようにしても良い。なお、これらの処理以外の処理については、上記実施の形態1の変更処理部と同様であるので、説明を省略する。変更処理部104aは、通常、MPUやメモリ等から実現され得る。変更処理部104aの処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
つぎに、本実施の形態の情報処理装置1aの動作について、図11のフローチャートを用いて説明する。なお、図11のフローチャートにおいて、図2と同一符号のステップについては、同一または相当する処理が行われるものであり、ここでは説明を省略する。また、図2における設定情報格納部は設定情報格納部101aに、変更指示受付部は変更指示受付部103aに、変更処理部は、変更処理部104aに、それぞれ読み替えられるものとする。
(ステップS1101)変更処理部104aは、変更指示受付部103aが受け付けた変更指示が、設定情報に対する1以上のレコードの削除の指示であるか否かを判断する。レコードの削除の指示である場合、ステップS1102に進み、レコードの削除の指示でない場合、ステップS202に進む。
(ステップS1102)変更処理部104aは、ステップS1101で受け付けた変更指示が指定する削除対象のレコードを含む設定情報に対応した削除テーブルが、削除テーブル格納部109内に存在するか否かを判断する。存在しない場合、ステップS1103に進み、存在する場合、ステップS1104に進む。
(ステップS1103)変更処理部104aは、ステップS1101で受け付けた変更指示が指定する削除対象のレコードを含む設定情報に対応した削除テーブルを、削除テーブル格納部109に作成する。そして、ステップS1104に進む。
(ステップS1104)変更処理部104aは、変更指示が指定する削除対象のレコードを、設定情報格納部101aに格納されている設定情報のテーブルから読み出し、当該削除対象のレコードを含む設定情報に対応した削除テーブルに蓄積する。
(ステップS1105)変更処理部104aは、変更指示が指定する削除対象のレコードを、設定情報格納部101aに格納されている設定情報のテーブルから完全に削除する。また、削除されたレコードが配置されていた位置を、削除されたレコードの次のレコード等で詰める処理をする。そして、ステップS203に進む。
なお、図11のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
以下、本実施の形態の具体例について説明する。
例えば、上記実施の形態において図4に示したような、テーブルを構成している設定情報であるパスワードポリシー設定情報のうちの、3行目のレコード、即ち「ID」が「002」であるレコードを削除する変更指示を、変更指示受付部103aが受け付けたとする。
変更処理部104aは、設定情報格納部101aに格納されている設定情報のうちの、この変更指示が指定する設定情報であるパスワードポリシー設定情報の、「ID」が「002」であるレコードの情報を読み出す。
さらに、変更指示が指定する設定情報であるパスワードポリシー設定情報に対応した削除テーブルが、削除テーブル格納部109に格納されているか否かを判断する。ここでは、格納されていなかったとすると、変更処理部104aは、パスワードポリシー設定情報に対応した削除テーブルを新規に作成する。例えば設定情報と削除テーブルとの対応関係は、対応する設定情報と削除テーブルのそれぞれの識別情報、例えばファイル名等を、同じレコードの2つの属性として有する管理情報等を用いて管理される。そして、作成した削除テーブルに、パスワードポリシー設定情報から読み出した「ID」が「002」であるレコードの情報を蓄積する。
図12は、パスワードポリシー設定情報から読み出した「ID」が「002」であるレコードの情報が格納された削除テーブルの一例を示す図である。削除テーブルの属性等は、対応する設定情報と同様のものを用いるようにしても良いし、さらに、削除された日時の情報等を示す属性値を付加するようにしてもよい。
さらに、変更処理部104aは、図4に示したような設定情報格納部101aに格納されているパスワードポリシー設定情報から、図4に示したような「ID」が「002」であるレコードを削除し、当該削除したレコードの位置を、他のレコード、具体的には、削除したレコードの下のレコードで詰める処理を行う。
図13は、上記の削除の結果得られたパスワードポリシー設定情報の例を示す図である。
以上のように、本実施の形態によれば、テーブルを構成している設定情報のレコードを削除した場合に、レコードが削除されたことを示すフラグ等を付加せずに、レコードを完全に削除するようにしたことにより、テーブルのデータが削除や追加の繰り返し等により肥大化して、メモリへの読み込みの時間や、検索する際の時間が長くなってしまう等の、データ処理時の不具合や処理能力の低下が発生しないようにすることができる。さらに、削除されたレコードを、削除テーブルに蓄積するようにしたことで、各設定情報について、どのようなレコードが削除されたかを、後から確認することが可能となり、レコードの削除にともなうリスクを回避することが可能となる。
なお、上記各実施の形態において、各処理(各機能)は、単一の装置(システム)によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
また、上記各実施の形態において、一の装置に存在する2以上の通信手段(情報送信部など)は、物理的に一の媒体で実現されても良いことは言うまでもない。
また、上記実施の形態において、各構成要素が実行する処理に関係する情報、例えば、各構成要素が受け付けたり、取得したり、選択したり、生成したり、送信したり、受信したりする情報や、各構成要素が処理で用いるしきい値や数式、アドレス等の情報等は、上記説明で明記していない場合であっても、図示しない記録媒体において、一時的に、あるいは長期にわたって保持されていてもよい。また、その図示しない記録媒体への情報の蓄積を、各構成要素、あるいは、図示しない蓄積部が行ってもよい。また、その図示しない記録媒体からの情報の読み出しを、各構成要素、あるいは、図示しない読み出し部が行ってもよい。
また、上記各実施の形態では、情報処理装置がスタンドアロンである場合について説明したが、情報処理装置は、スタンドアロンの装置であってもよく、サーバ・クライアントシステムにおけるサーバ装置であってもよい。後者の場合には、出力部や受付部は、通信回線を介して入力を受け付けたり、画面を出力したりすることになる。
また、上記各実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。
なお、上記各実施の形態における情報処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータを、設定情報格納部に格納されているソフトウェアの設定に関する情報である1以上の設定情報に対する変更指示を受け付ける変更指示受付部と、前記変更指示受付部が受け付けた変更指示に応じて、当該変更指示に対応した前記設定情報格納部に格納されている前記設定情報に対して変更を行う変更処理部と、前記設定情報格納部に格納されている設定情報のうちの、指定情報格納部に格納されている管理対象となる設定情報を指定する情報である管理対象指定情報により管理対象として指定されている設定情報に対して行われた変更を検出する変更検出部と、前記変更検出部が検出した変更を示す情報を出力する出力部として機能させるためのプログラムである。
また、上記プログラムにおいて、前記1以上の設定情報は、それぞれテーブルを構成しており、前記変更処理部は、前記設定情報格納部に格納されている設定情報についての1以上のレコードを削除する前記変更指示に応じて、当該削除の対象となるレコードを、削除テーブル格納部に格納された、当該レコードを含む設定情報に対応して設けられたテーブルであって、当該削除されたレコードが蓄積されうるテーブルである削除テーブルに蓄積し、当該削除の対象となるレコードを、前記設定情報格納部に格納されている設定情報から削除するプログラムである。
なお、上記プログラムにおいて、上記プログラムが実現する機能には、ハードウェアでしか実現できない機能は含まれない。例えば、情報を取得する取得部や、情報を出力する出力部などにおけるモデムやインターフェースカードなどのハードウェアでしか実現できない機能は、上記プログラムが実現する機能には含まれない。
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
図14は、上記プログラムを実行して、上記実施の形態による情報処理装置を実現するコンピュータの外観の一例を示す模式図である。上記実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムによって実現されうる。
図14において、コンピュータシステム900は、CD−ROM(Compact Disk Read Only Memory)ドライブ905、FD(Floppy(登録商標) Disk)ドライブ906を含むコンピュータ901と、キーボード902と、マウス903と、モニタ904とを備える。
図15は、コンピュータシステム900の内部構成を示す図である。図15において、コンピュータ901は、CD−ROMドライブ905、FDドライブ906に加えて、MPU(Micro Processing Unit)911と、ブートアッププログラム等のプログラムを記憶するためのROM912と、MPU911に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するRAM(Random Access Memory)913と、アプリケーションプログラム、システムプログラム、及びデータを記憶するハードディスク914と、MPU911、ROM912等を相互に接続するバス915とを備える。なお、コンピュータ901は、LANへの接続を提供する図示しないネットワークカードを含んでいてもよい。
コンピュータシステム900に、上記実施の形態による情報処理装置の機能を実行させるプログラムは、CD−ROM921、またはFD922に記憶されて、CD−ROMドライブ905、またはFDドライブ906に挿入され、ハードディスク914に転送されてもよい。これに代えて、そのプログラムは、図示しないネットワークを介してコンピュータ901に送信され、ハードディスク914に記憶されてもよい。プログラムは実行の際にRAM913にロードされる。なお、プログラムは、CD−ROM921やFD922、またはネットワークから直接、ロードされてもよい。
プログラムは、コンピュータ901に、上記実施の形態による情報処理装置の機能を実行させるオペレーティングシステム(OS)、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム900がどのように動作するのかについては周知であり、詳細な説明は省略する。
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。