説明

監査ログの出力方法及びサーバクライアントシステム

【課題】サーバクライアントシステムにおける管理者権限と監査者権限との完全な分離を実現する監査ログの出力方法を提供することを課題とする。
【解決手段】サーバクライアントシステム100における管理者がユーザ権限の変更等のために管理・認証データベース102の操作を実行するときは、その操作の履歴である監査ログ106の出力を条件として、前記監査ログ106の出力が成功した場合にのみ前記データベース102の更新処理が実行されることを特徴とする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ユーザを管理、認証するサーバクライアントシステムにおいて、ユーザ管理全般を行う管理者の権限と、その操作を監査する監査者の権限とを完全に分離する技術に関する。
【背景技術】
【0002】
従来、サーバクライアントシステムにおいて、ユーザを管理し、認証する管理・認証サーバデータベース(以下、「管理・認証DB」という)では、管理者にすべての権限が集中していたため、管理者は全ての操作が可能であった。このようなシステムでは、管理者が不正を行わないことが前提としてシステム構築がなされており、管理者はログを削除、改竄することが可能なため、管理者が不正を行った場合にはその追跡が不可能であった。
【0003】
このような管理者の不正を防ぐ手段として、管理者の操作履歴を取得する技術が考えられている。
例えば、特許文献1では、ユーザ管理情報データベースと監査ログ情報データベースをそれぞれに構築することにより、管理者のユーザ管理情報データベース操作に対するログを監査ログ情報データベースに保存して、監査ログ情報データベースに対するアクセスを制御する方法が開示されている。
【0004】
【特許文献1】特開2005−11052号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかしながら、上記特許文献1に記載の技術では、管理者アクセスに対する監査ログを取得することは出来るが、管理部と監査部とが独立して、監査部が稼働していない場合には監査ログが取得できない。すなわち、管理者がデータベース操作を実行した場合に、監査ログが確実に取れることを保証していないという問題点があった。
また、上記方法ではデータベースを複数作成することになるため、システム負荷が増大し、監査者にもデータベース知識が必要となるという問題点があった。
【0006】
上記問題点に鑑み、本発明は、サーバクライアントシステムにおける管理者権限と監査者権限との完全な分離を実現する監査ログの出力方法を提供することを課題とする。
また、上記監査ログの出力方法を用いることにより、システム構築を簡略化し、負荷を低減するサーバクライアントシステムを提供することを課題とする。
【課題を解決するための手段】
【0007】
上記課題を解決するために、請求項1に記載の本発明は、サーバクライアントシステムの監査のために操作の履歴を出力する監査ログの出力方法であって、管理者がユーザ権限の変更等のためにデータベースの操作を実行するときは、その操作の履歴である監査ログの出力を条件として、前記監査ログの出力が成功した場合にのみ前記データベースの更新処理が実行されることを特徴とする監査ログの出力方法である。
【0008】
請求項2に記載の本発明は、前記監査ログへのアクセスをフィルタドライバにより制御することを特徴とする請求項1に記載の監査ログの出力方法である。
【0009】
請求項3に記載の本発明は、前記データベース1操作あたりの監査ログの出力サイズを可変にして、特定のサイズで暗号化することを特徴とする請求項1又は2に記載の監査ログの出力方法である。
【0010】
請求項4に記載の本発明は、前記サーバクライアントシステムの稼動履歴をストリームファイルへ書き込んで監査ログの出力履歴を保持することを特徴とする請求項1ないし3のいずれかに記載の監査ログの出力方法である。
【0011】
請求項5に記載の本発明は、監査のために操作の履歴を出力するサーバクライアントシステムであって、管理者がユーザ権限の変更等のためにデータベースの操作を実行するときは、その操作の履歴である監査ログの出力を条件として、前記監査ログの出力が成功した場合にのみ前記データベースの更新処理が実行されることを特徴とするサーバクライアントシステムである。
【0012】
請求項6に記載の本発明は、前記監査ログへのアクセスをフィルタドライバにより制御することを特徴とする請求項5に記載のサーバクライアントシステムである。
【0013】
請求項7に記載の本発明は、前記データベース1操作あたりの監査ログの出力サイズを可変にして、特定のサイズで暗号化することを特徴とする請求項5又は6に記載のサーバクライアントシステムである。
【0014】
請求項8に記載の本発明は、前記サーバクライアントシステムの稼動履歴をストリームファイルへ書き込んで監査ログの出力履歴を保持することを特徴とする請求項5ないし7のいずれかに記載のサーバクライアントシステムである。
【発明の効果】
【0015】
本発明により、サーバクライアントシステムにおける管理者権限と監査者権限との完全な分離を実現し、管理者による不正を禁止、抑制する監査ログの出力方法を提供することができる。
また、上記監査ログの出力方法を用いることにより、システム構築を簡略化し、負荷を低減するサーバクライアントシステムを提供することができる。
【発明を実施するための最良の形態】
【0016】
以下に、本発明を実施するための最良の形態を図面に基づいて説明する。
【0017】
図1は、本発明に係るサーバクライアントシステムの概略構成図である。
図1に示すように、管理・認証サーバ101は各ユーザの認証情報をもつ管理・認証データベース102(以下、「DB」ともいう)、監査ログ106へのアクセスを制御して監査者以外による閲覧・変更を禁止するフィルタドライバ103、管理者操作ログ・アクセスログ105や監査ログ106を出力するファイルシステム104を備え、さらに、インターネット等のネットワークを介してクライアント107が接続されている。
【0018】
図2は、管理・認証サーバの処理フローを示すフローチャートである。以下に管理・認証サーバの処理フローをフローチャートに基づいて説明する。
最初に、操作する者を判別する(ステップ201)。操作する者が、管理者かユーザかにより操作ログの出力が異なるからである。なお、監査者は通常は管理・認証サーバにおける操作を禁止され、操作が許される場合にも一般ユーザとしての操作のみが許される。監査者に管理者権限を持たせないためである。
管理者操作の場合は、次に、管理者の実行コマンドを監査ログ106に出力して、結果が成功したかどうかを判別する(ステップ202)。管理者がユーザ作成、削除等の操作を実行した場合は、まずその履歴を監査ログ106に出力するからである。
次に、出力が成功した場合は、管理者操作として管理・認証DB102に更新する(ステップ203)。ディスク容量不足等により出力に失敗した場合は、管理者操作としてのDB更新自体は実行せず、操作失敗として管理者操作ログ・アクセスログ105に操作内容を出力した上で(ステップ206)、管理者に処理を戻す。監査ログ106に出力できない状態での管理者操作を禁止するためである。
【0019】
次に、ステップ203で管理・認証DB102の更新結果の監査ログ106への出力が成功したかどうかを判断する(ステップ204)。
次に、更新結果の出力に失敗した場合は、管理・認証DB102をロールバックし(ステップ205)、管理者操作履歴を管理者操作ログ・アクセスログ105に出力する(ステップ206)。監査ログ106に出力できない状態で行われたDB更新を無効にするためである。このように、監査ログ106に出力できない状態での管理者操作を禁止又は無効にすることにより、不正な管理者操作を監査ログ106に残さないで行うことを防止することができる。
次に、更新結果の出力に成功した場合は、そのまま管理者操作履歴を管理者操作ログ・アクセスログ105に出力する(ステップ206)。
また、一般のユーザの認証に対しては、適時、管理・認証DB102を参照(ステップ207)して、ユーザのアクセスログを出力する(ステップ208)。
【0020】
図3は、フィルタドライバの処理フローを示すフローチャートである。監査ログへのアクセスを選別し、監査者以外による閲覧、変更を禁止するためのフィルターの処理フローである。
まず、操作対象出力ファイルが監査ログ106かどうかを判別する(ステップ301)。
次に、操作者の権限により処理を振り分ける(ステップ302)。監査者、管理者、それ以外に振り分ける。
次に、管理者からのアクセスであった場合は、さらにアクセス手段である操作を実行したプログラムを確認する(ステップ303)。
次に、管理プログラムを通したアクセスであれば許可し(ステップ304)、それ以外のモジュール(エクスプローラ等)からのアクセスであれば禁止する(ステップ305)。
【0021】
表1は、ユーザ権限と許可する操作を示す表である。
【0022】
【表1】

【0023】
表1に示すように、本システムで想定するユーザの権限と、その各ユーザに許可する操作をまとめたものである。ステップ302に記載した振り分けは、管理者、監査者及び一般のユーザの三者に対して行われ、この振り分けに基づいて各々が許可された操作を行うことが出来る。管理者は、監査者に許可された操作以外のすべてであり、ユーザ追加、削除、及び、ユーザ毎のユーザ権限割り当て等による管理・認証DB102の更新である。監査者は、管理・承認サーバのプログラムにおいて表1に示すコマンドを実行することが出来る。一般ユーザは、ユーザ認証による管理・認証DB102の参照のみ可能であり、更新は禁止されている。
【0024】
表2は、システム稼働時の監査ログへのアクセス権限を示す表である。
【0025】
【表2】

【0026】
表2に示すように、読み込み、書き込み及び削除の監査ログへの各アクセスの形態に基づいて、上記三者の権限を表にしたものである。監査者以外は、監査ログへのアクセスは禁止されている。但し、管理者が管理サーバのプログラムを通した場合は、書き込みのみを許可している。
【0027】
図4は、監査ログの出力形式の概略図である。監査ログは暗号化することにより、システム稼動時に監査者のみが閲覧できるものとする。暗号化単位は特定のサイズ(Size)毎とし、1操作ログごとには復号できないものとする。システム起動、即ち、フィルタドライバの起動時にドライバ開始時ログSを出力し、システム停止、即ち、フィルタドライバの停止時にドライバ停止ログEを出力する。ドライバ開始時ログS、ドライバ停止ログE、および各種管理者操作実行履歴ログX(実行ログ1:例えばユーザ追加)、Y(実行ログ2:例えばユーザ削除)、Z(実行ログ3:例えばユーザアクセス権追加)は、暗号化単位のサイズを一定にしないようにするために、ランダムなサイズのログR(tn)を付加する。これにより、本システムの未稼働時に、特定の操作ログのサイズを知ることは不可能となり、過去の特定の1操作ログをコピー、貼り付けすることによる改竄を防ぐことができる。
【0028】
図5は、ストリームファイルへの出力の概略図である。ストリームファイルは、時間的連続性を有するシステムの稼働履歴を記録したファイルである。ストリームファイルが削除されることのないものであるルートディレクトリ(c:\)に対して付加(c:\:StreamFile)することで、意図的あるいは誤操作による削除を防ぐ。また、ストリームファイルは、通常、その存在自体がわからないものであるため、不正な編集を防ぐことが可能である。図5に示すように、ストリームファイルには、システム起動、停止時、及び、監査ログの出力先ファイル名が変わるときに、ファイル名(F1〜F3)、ファイルサイズ(S1〜S5)、時刻(T1〜T6)を書き込む。ストリームファイルには実際に存在する(退避、削除されていない)監査ログファイル名が記載されており、監査ログとして存在しない場合は不正削除されたものと判断することができる。ストリームファイル上、同一ファイル名の場合は、サイズが増大(システム停止、起動の場合は等しい)するため、ファイル内の一部を削除された場合はこの値から削除されたことを判断できる。
【0029】
表3は、本発明のサーバクライアントシステム未稼働時の監査ログ削除、改竄への対応をまとめたものである。
【0030】
【表3】

【0031】
表3に示すように、管理者が不正に監査ログを読み込み、書き込み、改竄及び削除した場合でも、本発明による対応により、管理者の不正を未然に防止し、又は、容易に発見することが出来るようになる。
【0032】
以上により、監査ログの出力先をファイルとし、監査ログ出力が不可能な状態においては、管理・認証DBの更新を行わないこととし、さらに、フィルタドライバにより、監査ログへのアクセスを制御し、監査者以外による閲覧、変更を禁止して、管理者の権限と監査者との権限を完全に分離することが出来る。
【図面の簡単な説明】
【0033】
【図1】本発明に係るサーバクライアントシステムの概略構成図である。
【図2】管理サーバの処理フローを示すフローチャートである。
【図3】フィルタドライバの処理フローを示すフローチャートである。
【図4】監査ログの出力形式の概略図である。
【図5】ストリームファイルへの出力の概略図である。
【符号の説明】
【0034】
100 サーバクライアントシステム
101 管理・認証サーバ
102 管理・認証DB
103 フィルタドライバ
104 ファイルシステム
105 管理者操作ログ・アクセスログ
106 監査ログ
107 クライアント

【特許請求の範囲】
【請求項1】
サーバクライアントシステムの監査のために操作の履歴を出力する監査ログの出力方法であって、
管理者がユーザ権限の変更等のためにデータベースの操作を実行するときは、
その操作の履歴である監査ログの出力を条件として、前記監査ログの出力が成功した場合にのみ前記データベースの更新処理が実行される
ことを特徴とする監査ログの出力方法。
【請求項2】
前記監査ログへのアクセスをフィルタドライバにより制御する
ことを特徴とする請求項1に記載の監査ログの出力方法。
【請求項3】
前記データベース1操作あたりの監査ログの出力サイズを可変にして、特定のサイズで暗号化する
ことを特徴とする請求項1又は2に記載の監査ログの出力方法。
【請求項4】
前記サーバクライアントシステムの稼動履歴をストリームファイルへ書き込んで監査ログの出力履歴を保持する
ことを特徴とする請求項1ないし3のいずれかに記載の監査ログの出力方法。
【請求項5】
監査のために操作の履歴を出力するサーバクライアントシステムであって、
管理者がユーザ権限の変更等のためにデータベースの操作を実行するときは、
その操作の履歴である監査ログの出力を条件として、前記監査ログの出力が成功した場合にのみ前記データベースの更新処理が実行される
ことを特徴とするサーバクライアントシステム。
【請求項6】
前記監査ログへのアクセスをフィルタドライバにより制御する
ことを特徴とする請求項5に記載のサーバクライアントシステム。
【請求項7】
前記データベース1操作あたりの監査ログの出力サイズを可変にして、特定のサイズで暗号化する
ことを特徴とする請求項5又は6に記載のサーバクライアントシステム。
【請求項8】
前記サーバクライアントシステムの稼動履歴をストリームファイルへ書き込んで監査ログの出力履歴を保持する
ことを特徴とする請求項5ないし7のいずれかに記載のサーバクライアントシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2007−94749(P2007−94749A)
【公開日】平成19年4月12日(2007.4.12)
【国際特許分類】
【出願番号】特願2005−283182(P2005−283182)
【出願日】平成17年9月29日(2005.9.29)
【出願人】(000233055)日立ソフトウエアエンジニアリング株式会社 (1,610)
【Fターム(参考)】