(57)【要約】【課題】多数決処理を用いるシステムにおいて、ポリシファイルの完全性を向上させ、多数決処理のための通信の負荷を低減し、改ざんの時刻を特定する。【解決手段】主ノード及び複数の副ノードとそれらを接続するネットワークを備えた計算機システムにおいて、各ノードは、リソースへのアクセスを制御するためのポリシファイル、及びポリシファイルを参照してアクセスを制御するための多数決処理を行う多数決処理部を備え、ポリシファイルは、１以上のポリシデータを含み、ポリシデータは、各ノードに共通のアクセス制御を示すデータと時刻印のデータとを含み、ノードは、多数決処理を実行する前に、時刻印が正常値であるか否かを判定し、時刻印が正常値であるポリシファイルの状態を正常状態に設定し、正常状態のポリシファイルのみを用いて、多数決処理を実行することを特徴とする計算機システム。【選択図】図９
2010061548.tif 000002
【特許請求の範囲】
【請求項１】
主ノード及び複数の副ノードを備え、前記主ノード及び前記複数の副ノードをネットワークによって接続した計算機システムにおいて、
前記主ノード及び前記複数の副ノードの各々は、
他の前記ノードと接続されるインターフェース、前記インターフェースに接続されるプロセッサ、及び前記プロセッサに接続されるメモリを備え、
リソースへのアクセスを制御するためのポリシファイル、及び前記ポリシファイルを参照してアクセスを制御するための多数決処理を行う多数決処理部を備え、
前記ポリシファイルは、１以上のポリシデータを含み、
前記ポリシデータは、前記各ノードに共通のアクセス制御を示すデータ、及び時刻印のデータを含み、
前記ノードは、
前記多数決処理を実行する前に、前記時刻印が正常値であるか否かを判定し、
前記時刻印が正常値である前記ポリシファイルの状態を正常状態に設定し、
前記正常状態の前記ポリシファイルのみを用いて、前記多数決処理を実行することを特徴とする計算機システム。
【請求項２】
前記ノードは、前記多数決処理の結果、少数側となった前記ポリシファイルの状態を異常状態に設定することを特徴とする請求項１に記載の計算機システム。
【請求項３】
前記時刻印は、年、月、日、時、分及び秒のデータを含み、
前記ノードは、前記月のデータが１から１２であり、前記日のデータが前記年及び前記月を考慮した実在する値であり、前記時のデータが０から２３であり、前記分のデータが０から５９であり、前記秒のデータが０から５９であり、かつ、前記時刻印が判定時より過去の日時である場合、前記時刻印が正常値であると判定し、
前記条件の少なくとも一つを満たさない場合、前記時刻印が異常値であると判定し、
前記時刻印が異常値である前記ポリシファイルの状態を異常状態に設定することを特徴とする請求項１に記載の計算機システム。
【請求項４】
前記ノードは、
前記ポリシファイルを、他の前記ノードに送信し、
前記ポリシファイルを受信した後に、前記受信したポリシファイルに含まれる時刻印が正常値であるか否かを判定し、
前記判定されたポリシファイルの時刻印を、前記判定時の時刻に更新することを特徴とする請求項１に記載の計算機システム。
【請求項５】
前記ノードは、前記ポリシファイルを、他の前記ノードに送信し、
前記各ノードは、
前記ポリシファイルの送信時に、前記ポリシファイルの時刻印が正常値であるか否かを判定し、前記判定されたポリシファイルの時刻印を前記判定時の時刻に更新することを特徴とする請求項１に記載の計算機システム。
【請求項６】
前記ポリシファイルには、前記ポリシファイルが有効である有効時間が設定されており、
前記ノードは、前記時刻印と現在時刻の差が前記有効時間を経過した場合、前記ポリシファイルを他の前記ノードに送信することを特徴とする請求項１に記載の計算機システム。
【請求項７】
前記ノードは、
前記ノードで実行されるトランザクションと、前記トランザクションによってアクセスされるリソースとの対応を規定するリソース管理情報を備え、
前記リソース管理情報に規定されたリソースのアクセスを制御するための多数決処理を、前記トランザクションの実行開始時に一括して行うことを特徴とする請求項１に記載の計算機システム。
【請求項８】
前記ポリシファイルには、前記ポリシファイルが有効である有効時間が設定されており、
前記ノードは時刻印と現在時刻との差が前記有効時間を経過した場合、前記ポリシファイルの状態を保留状態に設定し、
前記保留状態の前記ポリシファイルを用いずに、前記多数決処理を実行することを特徴とする請求項１に記載の計算機システム。
【請求項９】
前記ノードは、前記ポリシファイルの状態が前記異常状態、及び前記保留状態である場合、前記正常状態に状態を回復する回復処理を実行することを特徴とする請求項１に記載の計算機システム。
【請求項１０】
前記ノードは、
前記ポリシファイルの時刻印によって、前記ポリシファイルの改ざんの発生時刻を特定し、
前記時刻印が前記特定された改ざんの発生時刻より後の時刻である前記ポリシファイルの状態を異常状態に設定することを特徴とする請求項１に記載の計算機システム。
【請求項１１】
主ノード及び複数の副ノードを備え、前記主ノード及び前記複数の副ノードをネットワークによって接続した計算機システムにおける処理方法であって、
前記主ノード及び前記複数の副ノードの各々は、
他の前記ノードと接続されるインターフェース、前記インターフェースに接続されるプロセッサ、及び前記プロセッサに接続されるメモリを備え、
リソースへのアクセスを制御するためのポリシファイル、及び前記ポリシファイルを参照してアクセスを制御するための多数決処理を行う多数決処理部を備え、
前記ポリシファイルは、１以上のポリシデータを含み、
前記ポリシデータは、前記各ノードに共通のアクセス制御を示すデータ、及び時刻印のデータを含み、
前記方法は、
前記ノードが、前記多数決処理を実行する前に、前記時刻印が正常値であるか否かを判定し、
前記ノードが、前記時刻印が正常値である前記ポリシファイルの状態を正常状態に設定し、
前記ノードが、前記正常状態の前記ポリシファイルのみを用いて、前記多数決処理を実行することを特徴とする処理方法。
【請求項１２】
前記ノードは、前記多数決処理の結果、少数側となった前記ポリシファイルの状態を、異常状態に設定することを特徴とする請求項１１に記載のデータ処理方法。
【請求項１３】
前記時刻印は、年、月、日、時、分及び秒のデータを含み、
前記方法は、前記時刻印が正常値であるか否かを判定するステップにおいて、
前記月のデータが１から１２であり、前記日のデータが前記年及び前記月を考慮した実在する値であり、前記時のデータが０から２３であり、前記分のデータが０から５９であり、前記秒のデータが０から５９であり、かつ、前記時刻印が判定時より過去の日時である場合、前記時刻印が正常値であると判定し、
前記条件の少なくとも一つを満たさない場合、前記時刻印が異常値であると判定することを特徴とする請求項１１に記載の処理方法。
【請求項１４】
主ノード及び複数の副ノードを備え、前記主ノード及び前記複数の副ノードをネットワークによって接続した計算機システムにおけるノードにデータを処理させるためのプログラムであって、
前記主ノード及び前記複数の副ノードの各々は、
他のノードと接続されるインターフェース、前記インターフェースに接続されるプロセッサ、及び前記プロセッサに接続されるメモリを備え、
リソースへのアクセスを制御するためのポリシファイル、及び前記ポリシファイルを参照してアクセスを制御するための多数決処理を実行し、
前記ポリシファイルは、１以上のポリシデータを含み、
前記ポリシデータは、前記各ノードに共通のアクセス制御を示すデータ、及び時刻印のデータを含み、
前記プログラムは、
前記多数決処理を実行する前に、前記時刻印が正常値であるか否かを判定する手順と、
前記時刻印が正常値である前記ポリシファイルの状態を正常状態に設定する手順と、
前記正常状態の前記ポリシファイルのみを用いて、前記多数決処理を実行する手順とを、前記ノードに実行させるプログラム。
【請求項１５】
前記多数決処理の結果、少数側となった前記ポリシファイルの状態を、異常状態に設定する手順を、前記ノードに実行させる請求項１４に記載のプログラム。
【請求項１６】
前記時刻印は、年、月、日、時、分及び秒のデータを含み、
前記時刻印が正常値であるか否かを判定する手順は、
前記月のデータが１から１２であり、前記日のデータが前記年及び前記月を考慮した実在する値であり、前記時のデータが０から２３であり、前記分のデータが０から５９であり、前記秒のデータが０から５９であり、かつ、前記時刻印が判定時より過去の日時である場合、前記時刻印が正常値であると判定し、
前記条件の少なくとも一つを満たさない場合、前記時刻印が異常値であると判定することを特徴とする請求項１４に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、セキュアＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）を搭載したコンピュータシステムに関し、特に、ポリシファイルの完全性（データが正しい状態に保たれること）の向上する技術に関連する。
【背景技術】
【０００２】
従来のコンピュータシステムにおける高信頼化技術は、ハードウェア障害やソフトウェア障害が発生した際、ユーザに障害を隠すための耐障害技術が中心であり、これによってコンピュータのハードウェアとソフトウェアの信頼性を向上させてきた。
【０００３】
近年、不正アクセスや情報漏洩などが増加し、コンピュータシステムのセキュリティ向上が強く求められている。例えば、セキュアＯＳでは、複数コンピュータにそれぞれポリシファイルを備えることにより、リソースへのアクセス権を判定し、セキュリティや信頼性を向上させてきた。このポリシファイルが改ざんされると、第三者にサーバが乗っ取られ、データ漏洩などの不正行為が行われる。
【０００４】
また、多数の仮想化プログラムが市販されており、１台の計算機に複数のＯＳを稼動させることが容易になっている。
【０００５】
例えば、耐障害システムの技術として、多数のノードから構成されるクラスタ構成において、環境情報（プロセッサ使用状態、メモリ使用状態など）を取得し、これらの情報の多数決処理を行うことにより、あるいはデータとして発生しにくい統計的外れ値により、サーバの障害を検出する技術が提案されている（例えば、特許文献１参照）。
【０００６】
また、ポリシファイルを所有し、ポリシファイル内のルール衝突を解決することにより、セキュリティを確保する技術もある（例えば、特許文献２参照）。
【０００７】
また、ポリシファイルに制御データを設けポリシファイルの改ざんを検知してから、複数ノード間でポリシファイルの多数決処理を行うシステムに関するものもある（例えば、特許文献３、４参照）。
【０００８】
また、サーバ計算機に対するクライアント計算機からのアクセス要求を許可することに関して、アクセス許可後アクセス要求がある一定期間まではアクセス要求待ちであり、アクセス要求がなければアクセスを許可せず、アクセス要求があればアクセスを許可する方法に関するものもある（例えば、特許文献５参照）。
【０００９】
また、本コンピュータに対する認証処理をする情報処理装置において、複数の認証部を持ち経過時間に応じて認証処理を行う数を変化させ、成功した認証の数が必要認証数に達すれば本体計算機の仕様を許可する方法に関するものもある（例えば、特許文献６参照）。
【００１０】
また、ワークステーションと複数の端局制御装置間で、複数の圧縮ディレクトリ情報に矛盾が検出された場合、正しい圧縮ディレクトリ情報を決定し、矛盾した圧縮ディレクトリ情報を修復するものであり、多数派と矛盾するものがあった場合には矛盾したものを修復するシステムに関するものもある（例えば、特許文献７参照）。
【００１１】
また、半導体記憶装置への書込み可否の判定を多数決で行う方法に関するものもある（例えば、特許文献８参照）。
【特許文献１】特開２００４−３５５２３３号公報
【特許文献２】特開２００４−３０３２４３号公報
【特許文献３】特開２００８−０３３７９３号公報
【特許文献４】特開２００７−２９９１８４号公報
【特許文献５】特開２００５−２２８３５１号公報
【特許文献６】特開２００７−２９９０３４号公報
【特許文献７】特開２００２−３７３１００号公報
【特許文献８】特開２００５−０３９１２７号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
セキュアＯＳやアクセス制御の処理は、リソースのアクセスの可否を示すポリシファイルを参照して、リソースのアクセス制御の値を求め、その値によってリソースのアクセスを制御する。このため、セキュアＯＳやアクセス制御の処理は、ポリシファイルの完全性を保つことが要求される。しかし、ポリシファイルは不正アクセスなどによって改ざんされる可能性がある。
【００１３】
ポリシファイルの改ざんを防止する従来方式として、現用サーバと待機サーバからなるホットスタンバイ方式でのバックアップがある。しかし、現用サーバと待機サーバは同一構成なので同時に侵入されやすく、両方のサーバで侵入され、かつ両方のポリシファイルが改ざんされると、正しいポリシファイルがわからないため、現用サーバと待機サーバはポリシファイルを回復できない。このため、ポリシファイルの改ざんを未然に防止し、ポリシファイルの完全性（データが正しい状態に保たれること）を向上させるために、ポリシファイルの多数決処理方式が用いられている（特許文献３参照）。
【００１４】
この多数決処理は、複数のサーバ間で各々のポリシファイルを送受信する必要がある。しかし、従来からポリシファイルを送受信する通信の負荷が大きいという問題があった。また、従来の方法では、改ざんされた時を正確に特定できないため、ポリシファイルを定期的に確認する必要もあった。
【００１５】
本発明が解決しようとする目的は、ポリシファイルの完全性を向上させ、多数決処理のための通信の負荷を小さくし、改ざんの時刻を特定することを目的とする。
【課題を解決するための手段】
【００１６】
主ノード及び複数の副ノードとそれらを接続するネットワークを備えた計算機システムにおいて、各ノードは、リソースへのアクセスを制御するためのポリシファイル、及びポリシファイルを参照してアクセスを制御するための多数決処理を行う多数決処理部を備え、ポリシファイルは、１以上のポリシデータを含み、ポリシデータは、各ノードに共通のアクセス制御を示すデータと時刻印のデータとを含み、ノードは、多数決処理を実行する前に、時刻印が正常値であるか否かを判定し、時刻印が正常値であるポリシファイルの状態を正常状態に設定し、正常状態のポリシファイルのみを用いて、多数決処理を実行することを特徴とする計算機システムを用いる。
【発明の効果】
【００１７】
本発明の実施形態によると、ポリシファイルの完全性を向上させ、多数決処理のオーバヘッドを削減できる。
【発明を実施するための最良の形態】
【００１８】
以下に、本発明の実施形態について図面を参照して説明する。
【００１９】
図１は、本発明の実施形態のシステム構成図である。システムの構成例として、本発明の実施形態のシステムは、ノード１０１〜１５１、ネットワーク２、端末１を備える。ノードは、ノード１（１０１）、ノード２（１１１）、ノード３（１２１）、ノード４（１３１）、ノード５（１４１）及びノード６（１５１）を含む。各ノードは、端末１とネットワーク２を介して接続する。ノード１〜６（１０１〜１５１）は、端末１から電文を受信し、その結果を電文として端末１に返す。
【００２０】
図２は、本発明の実施形態のノードの構成図である。図２は、ノード１（１０１）のハードウェア構成とソフトウェア構成を示す。ノード１は、ハードウェアとして、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０２、メモリ１０３、ＩＯＰ（Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｐｒｏｃｅｓｓｏｒ）１０４、ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃｏｎｔｒｏｌｌｅｒ）１０５、ディスクコントローラ１０６及びディスク装置１０７を備える。
【００２１】
ノード１（１０１）のソフトウェアは、複数のＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）を同時に稼動する仮想化プログラム１０１０、ＯＳ１０１１１〜１０１１３、ポリシファイル１０１２１〜１０１２３、多数決処理部１０１３１〜１０１３３及びアプリケーションプログラム（ＡＰ：Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ）を含む。ＡＰは、ＡＰ１(１０１５１）、ＡＰ２（１０１５２）、ＡＰ３（１０１５３）を含む。
【００２２】
他のノード２〜６（１１１〜１５１）のハードウェア構成とソフトウェア構成は、ノード１（１０１）の構成と同一である。なお、ノードの数はいくつでもよく、本実施形態の六つに限定されない。また、各ノード１〜６は、仮想化プログラム１０１０を使用せず、単一のＯＳ１０１１１が実行される。
【００２３】
図３及び図７は、ポリシファイル１０１２１のデータ構造を示す。ポリシファイル１０１２１は、あるＡＰによる各リソースへのアクセスを、許可するかを示すデータを含む。
【００２４】
図３は、本発明の実施形態のポリシファイル１０１２１の共通アクセス制御データ１０１６１と個別アクセス制御データ１０１７１とを示す図である。ポリシファイル１０１２１は、いくつかのポリシデータの集まりである。ポリシデータは共通アクセス制御データ１０１６１と個別アクセス制御データ１０１７１を含む。
【００２５】
共通アクセス制御データ１０１６１は、ＡＰ１０１６１１、リソース１０１６１２及びアクセス種別１０１６１３を含む。アクセス種別１０１６１３は、ＡＰ１０１６１１がリソース１０１６１２にアクセスできるかを示す。
【００２６】
個別アクセス制御データ１０１７１は、時刻印（タイムスタンプ）１０１７１０を含む。時刻印１０１７１０は、年１０１７１１、月１０１７１２、日１０１７１３、時１０１７１４、分１０１７１５及び秒１０１７１６のデータを含む。
【００２７】
図４には、本発明の実施形態におけるアクセス種別１０１６１３の値を示す図である。
【００２８】
図４において、「アクセス不可（ｎ）」は「００」、「読み出しのみ可能（ｒ）」は「０１」、「読み出し、書き込み可能（ｒｗ）」は「０２」とする。
【００２９】
図５は、本発明の実施形態のＡＰの値を示す図である。ノード１（１０１）のＡＰ１（ＡＰ１０１５１）の値は「０１」、ＡＰ２（ＡＰ１０１５２）の値は「０２」、ＡＰ３（ＡＰ１０１５３）の値は「０３」とする。
【００３０】
図６は、本発明の実施形態のリソース１０１６１２の値を示す。ファイルＡ１１（２０）の値は「０１」、ファイルＢ１１（２１）の値は「０２」と、ファイルＣ１１（２２）の値は「０３」とする。
【００３１】
図７は、本発明の実施形態の共通アクセス制御データ１０１６１と個別アクセス制御データ１０１７１とを含むポリシファイル１０１２１の、具体的な数値例を示す図である。
【００３２】
図７は、リソース１０１６１２をファイルＡ１１（２０）、ファイルＢ１１（２１）、ファイルＣ１１（２２）とし、アプリケーションプログラムが、ノード１（１０１）のＡＰ１（１０１５１）、ＡＰ２（１０１５２）、ＡＰ３（１０１５３）である場合のポリシファイル１０１２１を例として示し、特に、ＡＰ１（１０１５１）がファイルＡ１１（２０）をアクセスする場合を示す。図７において、リソースがファイルＡ１１（２０）で、アプリケーションプログラムがＡＰ１（１０１５１）の共通アクセス制御データ１０１６１は、アクセス種別１０１６１３を「０２」とする。これは、「ノード１（１０１）のＡＰ１（１０１５１）は、ファイルＡ１１（２０）に対して、読み出し及び書き込みは可能である。」ことを意味する。個別アクセス制御データ１０１７１の時刻印１０１７１０は、「２００８０５２１１０２８００」である。これは、２００８年５月２１日１０時２８分００秒に更新されたことを示す。ファイルＢ１１（２１）及びファイルＣ１１（２２）のポリシデータも、同様の意味を持つ。
【００３３】
図８は、本発明の実施形態のトランザクション処理の流れを示す図である。ノード１〜６（１０１〜１５１）は、端末１から電文を受信し、電文に相当するトランザクション処理を実行し、結果を端末１に返す処理の概要を示す。図８は、例として、ノード１（１０１）が電文を受信する場合を示す。まずノード１は、端末１から電文を受信し、受信した電文を解析し、電文に該当するトランザクションを実行する（ステップ３０）。
【００３４】
トランザクションの実行後、ノード１（１０１）は、トランザクションによって実行されたアプリケーションがアクセスしようとするリソースへのアクセスを、ポリシファイル１０１２１で一括して判定する（ステップ３１）。判定の結果、リソースへのアクセスがそれぞれ可能であると判定された場合、ノード１（１０１）は、トランザクションの処理を続ける。図８は、リソースがディスクに格納されているファイルＡ１１（２０）、ファイルＢ１１（２１）、ファイルＣ１１（２２）である場合を例示する。ノード１（１０１）は、ディスクからのデータの読み出し（ステップ３２）、ディスクへのデータの書き込み（ステップ３３）、を処理し、処理結果の電文を端末１に送信して、トランザクションを終了する（ステップ３４）。図８に示す例では、トランザクションはＡＰ１（１０１５１）を実行し、ＡＰ１（１０１５１）では、ファイルＢ１１とファイルＣ１１とを読み出し（ステップ３２１、ステップ３２２）、その結果をファイルＡ１１に書き込む（ステップ３３１）場合を示す。
【００３５】
図９は、本発明の実施形態のポリシファイルの通信処理を示すシーケンス図である。
【００３６】
主ノード１０１は、多数決処理とトランザクション処理を実行し、副ノード１１１〜１５１は主ノード１０１のポリシファイル１０１２１のコピーを所有する。図９では、ノード１（１０１）を主ノード、ノード２（１１１）からノード６（１５１）を副ノードとする。なお、本通信処理は、トランザクションの実行とは別に定期的に実施されてもよいし、トランザクションが発生する毎にトランザクション処理が開始される前に実行されてもよい。
【００３７】
まず、主ノード１０１から副ノード１１１〜１５１へのポリシファイル１０１２１の通信処理を示す。主ノード１０１は、通信に必要となるＣＰＵ１０２やネットワーク２などのリソースの負荷を監視する（ステップ４０）。リソースの負荷が通信に適した使用率である場合、主ノード１０１は、ポリシファイル１０１２１を副ノード１１１〜１５１に送信する（ステップ４１）。
【００３８】
副ノード１１１〜１５１は、ポリシファイル１０１２１を受信し（ステップ４１）、受信したポリシファイル１０１２１の時刻印１０１７１０を判定する。正常値であると判定した場合、副ノード１１１〜１５１は、時刻印１０１７１０が判定された時刻（又は、時刻印１０１７１０が更新された時刻）を時刻印１０１７１０に入力する（ステップ４３）。なお正常値とは、時刻印１０１７１０の値が、時刻印１０１７１０の月１０１７１２の値が１から１２で、日１０１７１３の値がポリシファイル１０１２１を判定した時の年１０１７１１と月１０１７１２を考慮し実在する日であり、時１０１７１４の値は０から２３であり、分１０１７１５の値は０から５９であり、秒１０１７１６の値は０から５９の範囲内である場合に正常値とされる。なお、ポリシファイル１０１２１を受信した時刻よりも過去を示す時刻であることを正常値の条件としてもよい。
【００３９】
次に、副ノード１１１〜１５１から主ノード１０１へのポリシファイル１０１２１の通信処理を示す。副ノード１１１〜１５１も主ノード１０１と同様に、負荷を監視する（ステップ４５）。負荷が通信に適した使用率である場合、副ノード１１１〜１５１は、副ノード１１１〜１５１が持つポリシファイル１０１２１を主ノード１０１に送信する（ステップ４６）。送信するポリシファイル１０１２１は、ポリシファイル１０１２１の全体を送信してもよいし、各副ノード１１１〜１５１に関するポリシデータのみを送信してもよい。
【００４０】
主ノード１０１は、ポリシファイル１０１２１を受信し（ステップ４７）、受信したポリシファイル１０１２１の時刻印１０１７１０を判定する。時刻印１０１７１０が正常値である場合、時刻印１０１７１０に時刻印１０１７１０が判定された時刻を入力する（ステップ４８）。
【００４１】
主ノード１０１は、主ノード１０１で実行するトランザクションがある場合、トランザクションがアクセスするリソースのアクセス制御について、多数決処理を実行する（ステップ４９）。
【００４２】
図１０は、本発明の実施形態のポリシファイル１０１２１の状態とその状態遷移を示す図である。ポリシファイル１０１２１の状態は、正常状態６０、異常状態６１、保留状態６２の三つがある。
【００４３】
正常状態６０は、多数決処理の結果が多数側であり、かつポリシファイル１０１２１の時刻印１０１７１０が示す時刻から、現在時刻までの時間が有効時間内の場合のポリシファイル１０１２１の状態である。なお有効時間とは、任意に定めた時間であり、時刻印１０１７１０が示した時刻から、ポリシファイル１０１２１が有効時間内に判定されない場合、改ざんの可能性が高いものとするものである。
【００４４】
異常状態６１は、多数決処理の結果が少数側であり、又は、ポリシファイル１０１２１の時刻印１０１７１０が示す時刻が、改ざんが検出された時刻より前の時刻を示す場合のポリシファイル１０１２１の状態である。
【００４５】
保留状態６２は、ポリシファイル１０１２１の時刻印１０１７１０が示す時刻から、現在時刻までの時間が有効時間よりも長いポリシファイル１０１２１の状態である。
【００４６】
各ノード（１０１〜１５１）は、ポリシファイル１０１２１の多数決処理を行い、自ノードのポリシファイル１０１２１が多数側であり、かつ時刻印１０１７１０が有効期限内の時刻を示す場合は、ポリシファイル１０１２１を正常状態６０のままとする（６３）。
【００４７】
同様に各ノード（１０１〜１５１）は、ポリシファイル１０１２１の多数決処理を行い、多数決処理の結果が少数側である場合は改ざん発生と判定し、ポリシファイル１０１２１を正常状態６０から異常状態６１とする（６４）。また、各ノード（１０１〜１５１）は、改ざんされたポリシデータの時刻印１０１７１０が示す時刻よりも古い時刻を示すポリシデータを持つポリシファイル１０１２１がある場合も、ポリシファイル１０１２１を異常状態６１とする（６５）。
【００４８】
さらに、各ノード（１０１〜１５１）は、ポリシファイル１０１２１の時刻印１０１７１０が示す時刻から、有効時間を経過すると、ポリシファイル１０１２１を正常状態６０から保留状態６２にする（６６）。異常状態６１、あるいは保留状態６２は、後述の回復処理により、正常状態６０に戻される（６７、６８）。
【００４９】
なお、ポリシファイル１０１２１の正常状態、異常状態、保留状態は、ポリシファイル１０１２１に含まれるポリシデータに付されてもよい。
【００５０】
図１１は、本発明の実施形態の主ノードのポリシファイル１０１２１の例を示す説明図である。
【００５１】
主ノード１０１のポリシファイル１０１２１は、全ノード（１０１〜１５１）のポリシデータをすべて含む。図１１は、ＡＰ１（１０１５１）がファイルＡ１１（２０）にアクセスするためのアクセス権を示す例である。図１１に示す例では、ポリシファイル１０１２１は、有効時間を前回更新してから６０分と設定されている。また、共通アクセス制御データ１０１６１の値は、「ＡＰ１（１０１５１）はファイルＡ１１（２０）読み取りと書き込みがともに可能である」ことを意味する「０１０１０２」が正しい値とする。なお、経過時間２８は、図１１に示す例においてはポリシファイル１０１２１のデータ列として設けたが、個別アクセス制御データ１０１７１の時刻から判定までの時刻の差分を随時求めてもよい。
【００５２】
図１１のノード１（１０１）、ノード２（１１１）及びノード３（１２１）のポリシファイル１０１２１は、共通アクセス制御データ１０１６１の値が「０１０１０２」であり、個別アクセス制御データ１０１７１も正常値であり、経過時間２８も６０分より短いため、改ざんされておらず、正常状態６０である。ノード４（１３１）のポリシファイル１０１２１は、共通アクセス制御データ１０１６１が「０１０１０１」に改ざんされている。ノード５（１４１）のポリシファイル１０１２１は、個別アクセス制御データ１０１７１が「２００８１３２１１０３２００」であり、２００８年１３月２１日１０時３２分００秒を意味し、正常値ではないため、改ざんされている。ノード６（１５１）のポリシファイル１０１２１は、共通アクセス制御データ１０１６１と個別アクセス制御データ１０１７１は改ざんされていないが、経過時間２８が１時間３０分と、有効時間を過ぎている。
【００５３】
図１２は、本発明の実施形態の主ノード１０１がポリシファイル１０１２１を副ノード１１１〜１５１に送信する処理手順を示すシーケンス図である。
【００５４】
まず、前回のポリシファイル１０１２１の送信（ステップ１００）から定められた更新時間が経過する（ステップ１０１）。更新時間は、任意に定められるものとし、ポリシファイル１０１２１の更新を一定時間の間隔で実施する場合に定められる。
【００５５】
ノード１（１０１）は、ネットワーク２とＣＰＵ１０２の使用率を測定する（ステップ１０２）。ノード２〜６（１１１〜１５１）は、各々のＣＰＵの使用率を測定する（ステップ１０３、１０４）。ノード１（１０１）は、ＣＰＵ１０２とネットワーク２の負荷を監視し、これらの負荷が通信に適した使用率である場合、ポリシファイル１０１２１を副ノード１１１〜１５１に送信する。
【００５６】
ノード１（１０１）からノード６（１５１）の各ＣＰＵ１０２及びネットワーク２の負荷が通信に適している場合、ノード１（１０１）は、ポリシファイル１０１２１をノード２〜６（１１１〜１５１）に送信する（ステップ１１０）。ノード２〜６（１１１〜１５１）は、ポリシファイル１０１２１を受信し（ステップ１１１、１１２）、ポリシファイル１０１２１の時刻印１０１７１０を判定する（ステップ１２１、１２２）。
【００５７】
時刻印１０１７１０の値は、時刻印１０１７１０の月１０１７１２の値が１から１２で、日１０１７１３の値がポリシファイル１０１２１を判定した時の年１０１７１１と月１０１７１２を考慮し実在する日であり、時１０１７１４の値は０から２３であり、分１０１７１５の値は０から５９であり、秒１０１７１６の値は０から５９の範囲内である場合に正常値と判定される。なお、ポリシファイル１０１２１を受信した時刻よりも過去を示す時刻であることを正常値の条件としてもよい。そして、時刻印１０１７１０が正常値ではない場合、ノード２〜６（１１１〜１５１）は、ポリシファイル１０１２１が改ざんされたと判断し（ステップ１２３、１２４）、ポリシファイル１０１２１を異常状態６１とする。一方、時刻印１０１７１０が正常値の場合は、ノード２〜６（１１１〜１５１）は、時刻印１０１７１０を判定時の時刻に更新する（ステップ１２５、１２６）。
【００５８】
なお、ノード１（１０１）からノード２〜６（１１１〜１５１）へポリシファイル１０１２１を送信する前に、ノード１（１０１）で時刻印１０１７１０を判定し、更新してもよい。時刻印１０１７１０の判定は、ノード１（１０１）またはノード２〜６（１１１〜１５１）の少なくとも一方で実施されていればよい。
【００５９】
また、ポリシファイル１０１２１の状態である正常状態、異常状態は、ポリシファイル１０１２１にフラグとして付してもよく、ポリシデータにフラグとして付してもよい。
【００６０】
ＣＰＵ１０２とネットワーク２の負荷が通信に適した使用率にならず、有効時間が経過した場合（ステップ１３０）、ノード１（１０１）は、ネットワーク２及びＣＰＵ１０２の使用率にかかわらず、ポリシファイル１０１２１をノード２〜６（１１１〜１５１）に送信する（ステップ１３１）。ノード２〜６（１１１〜１５１）は、ステップ１１１〜１２６を実行する。
【００６１】
図１３は、本発明の実施形態における副ノード１１１〜１５１から主ノード１０１へポリシファイル１０１２１を送信する処理手順を示すシーケンス図である。
【００６２】
副ノード１１１〜１５１からの前回のポリシファイル１０１２１の送信（ステップ２００、２０１）から、定められた更新時間が経過する（ステップ２０２、２０３）。副ノード１１１〜１５１は、各ＣＰＵ１０２の使用率を測定する（ステップ２１０〜２１２）。各ＣＰＵ１０２の負荷が通信に適した使用率である場合、副ノード１１１〜１５１は、ポリシファイル１０１２１を主ノード１０１に送信する（ステップ２２０、２２１）。
【００６３】
なお、副ノード１１１〜１５１から主ノード１０１へ、ポリシファイル１０１２１を送信してもよいし、各副ノード１１１〜１５１に関するポリシデータを抽出して送信してもよい。また、ポリシデータを抽出して送信する場合は、正常状態のポリシデータを送信してもよい。
【００６４】
主ノード１０１は、ポリシファイル１０１２１を受信する（ステップ２３０）。ポリシデータが副ノード１１１〜１５１から送信された場合は、主ノード１０１は、ポリシデータをマージし、主ノード１０１のポリシファイル１０１２１を作成する。主ノード１０１はポリシファイル１０１２１を判定する（ステップ２３１）。図１２のステップ１２３及びステップ１２４と同様に、判定の結果において、時刻印１０１７１０が正常値ではない場合、ポリシファイル１０１２１の改ざんを検出したものとし（ステップ２３２）、主ノード１０１はポリシファイル１０１２１を異常状態６１にする。正常値である場合は、主ノード１０１は時刻印１０１７１０を判定の時刻に更新する（ステップ２３３）。
【００６５】
ＣＰＵ１０２の負荷が通信に適した使用率にならず、副ノード１１１〜１５１の経過時間２８が有効時間を超過する（ステップ２４０、２４１）と、ＣＰＵ１０２の使用率にかかわらず、副ノード１１１〜１５１は、ポリシファイル１０１２１を主ノード１０１に送信し（ステップ１３１）、主ノード１０１は、ステップ２００〜２３２を行う。
【００６６】
次に、図１４と図１５を用いて、トランザクション処理におけるポリシファイル１０１２１の多数決処理について示す。
【００６７】
図１４は、本発明の実施形態のトランザクション処理の全体の処理手順を示すフローチャートである。
【００６８】
トランザクション処理の概要は、図８に示した流れである。図１４では、ノード１（１０１）上でトランザクションが実行される場合を例に示す。ノード１（１０１）は端末１からネットワーク２を経由して、電文を受信する（ステップ３００）。ノード１（１０１）は、電文を解析し、「ファイルＢ１１（２１）とファイルＣ１１（２２）とからデータを読み出し、ファイルＡ１１（２０）にデータを書き込む。その結果を端末１に送信する。」というトランザクションを実行する。
【００６９】
その後トランザクションは、ノード１（１０１）に保持されるリソース管理テーブルから自らがアクセスすべきファイルを認識する（ステップ３０２）。なお、リソース管理テーブルについての詳細は、後述の図１７において示す。図１４に示す処理では、トランザクションがアクセスすべきリソースは、すべてリソース管理テーブルに登録されている。次に、トランザクションは、アクセスするファイルのアクセス権が許可されているか否かを判定するため、多数決処理を一括で実行する（ステップ３１０）。多数決処理の後、アクセスする全てのファイルがアクセス可能であれば、トランザクションは処理を続ける（ステップ３１１、ステップ３１２）。一方、アクセスするファイルがアクセス不可である場合は、トランザクションは処理を中断する（ステップ３１１、ステップ３１３）。
【００７０】
実行結果は電文として端末１に送信され、トランザクションが終了する（ステップ３４０）。
【００７１】
図１５は、図１４の一括多数決処理（ステップ３１０）の詳細なフローチャートである。図１５では、図１１のポリシファイル１０１２１を用いて一括多数決処理を説明する。
【００７２】
ノード１（１０１）は、ポリシファイル１０１２１の共通アクセス制御データ１０１６１を読み出す（ステップ４００）。ノード１（１０１）は、同様に個別アクセス制御データ１０１７１である時刻印１０１７１０を読み出す（ステップ４０１）。
【００７３】
ノード１（１０１）は、時刻印１０１７１０が正常値であるか否かを判定する（ステップ４２０）。判定の方法は、図１２のステップ１２１、１２２と同じである。
【００７４】
図１１に示す例では、ノード４（１３１）のポリシデータは、共通アクセス制御データ１０１６１の値が「０１０１０１」に改ざんされているが、個別アクセス制御データ１０１７１の値は正常値であるので、ステップ４２０の段階ではノード４（１３１）のポリシデータは、異常状態６１としない。ノード５（１４１）は、個別アクセス制御データ１０１７１が「２００８１３２１１０３２００」に改ざんされており、月１０１７１２が「１３」になっているため、時刻印１０１７１０が正常値ではないとして、ノード５（１４１）のポリシデータは異常状態６１とされる。なお、ポリシデータの状態を異常状態６１としたが、ポリシファイル１０１２１の状態を異常状態６１としてもよい。
【００７５】
次に、ノード１（１０１）は、時刻印１０１７１０の時刻と、多数決処理を実施した時刻との差分を経過時間２８とし、時刻印１０１７１０の経過時間２８は有効時間内か否かを判定する。有効時間を経過している場合（ステップ４２７）は、ポリシデータの状態を保留状態６２にする（ステップ４２８）。図１１に示す例では、ノード６（１４１）の経過時間は１時間３０分であり、有効時間を越えている。このため、ノード６（１４１）のポリシデータの状態を保留状態６２とする。なお、ポリシデータの状態を保留状態６２としたが、ポリシファイル１０１２１の状態を保留状態６２としてもよい。
【００７６】
更に、ノード１（１０１）は、状態が異常状態６１又は保留状態６２であるポリシファイル１０１２１又はポリシデータを、多数決の候補からはずす（ステップ４３０）。図１１に示す例では、ノード１（１０１）は、異常状態６１であるノード５（１４１）と保留状態６２であるノード６（１４１）とのポリシファイル１０１２１又はポリシデータを多数決の候補からはずす。
【００７７】
そして、ノード１（１０１）は、残ったノード１（１０１）、ノード２（１１１）、ノード３（１２１）及びノード４（１３１）のポリシデータを順に読み出し、共通アクセス制御データ１０１６１が同値であるポリシファイル１０１２１をカウントアップする（ステップ４３１）。このカウントアップした数が全体のポリシデータの数の過半数以上か否かを判定する（ステップ４４０）。カウントアップした数が過半数に達していなければ、再度ポリシファイル１０１２１を読み出す（ステップ４４１）。一方、カウントアップした数が、過半数に達していれば、過半数となった共通アクセス制御データ１０１６１を正常値とする（ステップ４５０）。
【００７８】
図１１に示す例では、共通アクセス制御データ１０１６１の値が「０１０１０２」の数は、ノード１（１０１）からノード３（１２１）の「３」であり、「０１０１０１」の数はノード４（１３１）の「１」である。この結果、共通アクセス制御データ１０１６１の「０１０１０２」が正常値と判断される。
【００７９】
ノード１（１０１）は、ポリシファイル１０１２１の正常値を決定した後、少数側の共通アクセス制御データ１０１６１を持つポリシデータの状態を異常状態６１とする（ステップ４５１）。図１１の例では、ノード１（１０１）は、ノード４（１３１）のポリシデータの状態を、異常状態６１とする
以上のステップを処理した後、多数決処理は終了する。
【００８０】
図８、図１６及び図１７を用いて、トランザクション処理の処理手順を示す。
【００８１】
図１６は、本発明の実施形態におけるトランザクション処理の処理手順を示すフローチャートである。
【００８２】
図１６では、実行されるトランザクションをトランザクション−Ａとし、トランザクション−Ａ（Ｔｒ−Ａ）は、ＡＰ１（１０１５１）を実行し、Ｔｒ−ＡはＡＰ１（１０１５１）を用いて、ファイルＢ１１（２１）とファイルＣ１１（２２）を順に読み出し、その結果をファイルＡ１１（２０）に書き込む。ファイルＡ１１（２０）、ファイルＢ１１（２１）、ファイルＣ１１（２２）のアクセス種別１０１６１３は、図７に示すポリシファイル１０１２１のアクセス種別１０１６１３と同じである。
【００８３】
ノード１（１０１）は、端末１から電文を受信し、Ｔｒ−Ａを開始する（ステップ５００）。Ｔｒ−Ａは、アクセスする対象となるリソースを認識する（ステップ３０２）。Ｔｒ−Ａがアクセスするリソースは、ファイルＡ１１（２０）、ファイルＢ１１（２１）、ファイルＣ１１（２２）のファイルである。
【００８４】
図１７は、本発明の実施形態のＴｒ−Ａのリソース管理テーブル５５０を示す図である。
【００８５】
本実施形態では、Ｔｒ−Ａが実行される前の段階では、リソース管理テーブル５５０には、ファイルＡ１１（２０）とファイルＢ１１（２１）のみが登録されており、ファイルＣ１１（２２）は登録されていない。リソース管理テーブル５５０には、ファイルＡ１１（２０）とファイルＢ１１（２１）が登録されているため、ファイルＡ１１（２０）とファイルＢ１１（２１）のアクセス権について多数決処理を一括（以下、一括多数決処理）して行う（ステップ５０１）。
【００８６】
ステップ５０２において、Ｔｒ−Ａは、ファイルＢ１１（２１）の読み出し処理を行う。Ｔｒ−Ａは、ファイルＢ１１（２１）が、一括多数決処理済みか否かを判定する（ステップ５０２）。ファイルＢ１１（２１）は、ステップ５０１で一括多数決処理済みなので、Ｔｒ−Ａは、ファイルＢ１１（２１）のアクセス権が許可されているか否かを判定する（ステップ５１０）。ファイルＢ１１（２１）のアクセス権は、図７に示す例より、読み出し可なので、ファイルＢ１１（２１）をノード１（１０１）のメモリ１０３又はディスク装置１０７から読み出す（ステップ５１２）。なお、ステップ５１０で、ファイルＢ１１（２１）にアクセス権が許可されていないと判定された場合、Ｔｒ−Ａは、ファイル１１（２１）へのアクセス不可を通知し、Ｔｒ−Ａを中断する。ファイルＢ１１（２１）の読み出し終了後、Ｔｒ−Ａは、全てのアクセスすべきファイルにアクセスしたか判定し、アクセスすべきファイルが他にある場合は、ステップ５０２に戻る（ステップ５２０）。
【００８７】
次に、Ｔｒ−Ａは、ファイルＣ１１（２２）の読み出し処理を行う。Ｔｒ−Ａは、ファイルＣ１１（２２）が、一括多数決処理済みか否かを判定する（ステップ５０２）。ファイルＣ１１（２２）は、Ｔｒ−Ａ開始時にリソース管理テーブル５５０に登録されておらず、ステップ５０１で一括多数決処理を行っていないので、Ｔｒ−Ａは、多数決処理によって、ファイルＣ１１に対するＡＰ１のアクセス種別１０１６１３の正常値を判定する（ステップ５０３）。そして、Ｔｒ−Ａは、ファイルＣ１１（２２）をリソース管理テーブル５５０に登録する（ステップ５０４）。次に、Ｔｒ−Ａは、ファイルＣ１１（２２）のアクセス権が許可されているか否かを判定する（ステップ５１０）。ファイルＣ１１（２２）のアクセス権は、図７に示す例より、読み出し可なので、Ｔｒ−Ａは、ファイルＣ１１（２２）をノード１（１０１）のメモリ１０３若しくはディスク装置１０７から読み出す（ステップ５１２）。ファイルＣ１１（２２）の読み出し終了後、Ｔｒ−Ａは、全てのアクセスすべきファイルにアクセスしたか判定し、アクセスすべきファイルが他にある場合は、ステップ５０２に戻る（ステップ５２０）。
【００８８】
次に、Ｔｒ−Ａは、ファイルＡ１１（２０）に書き込み処理をする。Ｔｒ−Ａは、ファイルＡ１１（２０）が、一括多数決処理済みか否かを判定する（ステップ５０２）。ファイルＡ１１（２０）はステップ５０１で一括多数決済みなので、Ｔｒ−Ａは、ファイルＡ１１（２０）のアクセス権が許可されているか否かを判定する（ステップ５１０）。ファイルＡ１１（２０）のアクセス権は、図７の例より、読み出し書き込み可なので、Ｔｒ−Ａは、ノード１（１０１）のメモリ１０３又はディスク装置１０７のファイルＡ１１（２０）に書き込む（ステップ５１２）。
【００８９】
Ｔｒ−Ａは、全てのファイルをアクセスしたか否かを判定し（ステップ５２０）、全てのファイルにアクセスした場合は、端末１へ電文を送信し、Ｔｒ−Ａを終了する（ステップ５２１）。
【００９０】
リソース管理テーブル５５０に登録されているリソースは、トランザクション処理の最初にアクセス制御をするために、一括多数決処理される。図１７に示す例では、リソース管理テーブル５５０は、Ｔｒ−Ａのトランザクションに、ファイルＡ１１（２０）とファイルＢ１１（２１）が登録されている。すなわち、ファイルＡ１１（２０）及びファイルＢ１１（２１）のアクセス制御は一括多数決処理が実行済みであるが、ファイルＣ１１（２２）のアクセス制御は多数決処理が未実行の状態である。ファイルＣ１１（２２）は、図１６に示したとおり、Ｔｒ−Ａの処理の中で、多数決処理されたので、リソース管理テーブル５５０に登録される（ステップ５０４）。
【００９１】
図１８及び図１９は、ポリシファイル１０１２１の回復処理を示す図である。
【００９２】
図１８は、本発明の実施形態の主ノードのポリシファイル１０１２１の回復処理を示す図である。
【００９３】
図１８に示す例では、主ノード１０１のポリシファイル１０１２１が多数決処理されたことにより、主ノード１０１のポリシファイル１０１２１は改ざん又は改ざんの可能性のある状態である。
【００９４】
主ノード１０１は、多数決処理を実行し、異常状態６１又は保留状態６２のポリシファイル１０１２１を持つ（ステップ６００）。主ノード１０１は、あらかじめディスク装置１０７にマスターのポリシファイルを持っており、主ノード１０１のポリシファイル１０１２１が異常状態６１又は保留状態６２と判定された場合、ディスク装置１０７からマスターのポリシファイルを読み出す（ステップ６０１）。主ノード１０１は、異常状態６１又は保留状態６２のポリシファイル１０１２１を、ディスク装置１０７から読み出したマスターのポリシファイルで上書きし、ポリシファイル１０１２１の時刻印１０１７１０を上書きした時刻に更新する（ステップ６０２）。上書きと同時に、主ノード１０１は、主ノード１０１のポリシファイル１０１２１を、正常状態６０とする。なお、主ノード１０１は、異常状態６１又は保留状態６２の状態にあるポリシデータに対応した、マスターのポリシファイルのポリシデータを取り出し、異常状態６１又は保留状態６２の状態にあるポリシデータに置き換えてもよい。次に、主ノード１０１は、主ノード１０１のポリシファイル１０１２１を副ノード１１１〜１５１に送信する（ステップ６０３）。
【００９５】
副ノード１１１〜１５１は、ポリシファイル１０１２１を主ノード１０１から受信し（ステップ６１０、６１１）、受信したポリシファイル１０１２１を判定する（ステップ６１２、６１３）。ポリシファイル１０１２１の判定方法は、図１２のステップ１２１、１２２と同じである。判定の結果、時刻印１０１７１０が正常値である場合、副ノード１１１〜１５１は、ポリシファイル１０１２１の時刻印１０１７１０を判定した時刻の数値に更新する（ステップ６１６、６１７）。副ノード１１１〜１５１は、副ノード１１１〜１５１のポリシファイル１０１２１を主ノード１０１に送信する（ステップ６１８、６１９）。
【００９６】
主ノード１０１は、ポリシファイル１０１２１を受信し（ステップ６１０、６１１）、ポリシファイル１０１２１を判定する（ステップ６２１）。ポリシファイル１０１２１の判定方法は、図１２のステップ１２１、１２２と同じである。判定の結果、時刻印１０１７１０が正常値である場合、主ノード１０１は、ポリシファイル１０１２１の時刻印１０１７１０を判定した時刻に更新する（ステップ６２３）。
【００９７】
図１９は、本発明の実施形態の副ノード１１１〜１５１におけるポリシファイル１０１２１の回復処理を示す図である。図１９に示す例では、ノード２（１１１）が副ノードである。
【００９８】
副ノード１１１は、ポリシファイル１０１２１の判定の際に、改ざんを検出した。この判定において、ポリシファイル１０１２１の状態は異常状態６１若しくは保留状態６２になった（ステップ７００）。主ノード１０１は、主ノード１０１のポリシファイル１０１２１を送信する（ステップ７０１）。副ノード１１１は、ポリシファイル１０１２１を受信し（ステップ７０２）、ポリシファイル１０１２１を判定する（ステップ７０３）。ポリシファイル１０１２１の判定方法は、図１２のステップ１２５と同じである。判定の結果、時刻印１０１７１０が正常値である場合、副ノード１１１は、ポリシファイル１０１２１の時刻印１０１７１０を判定した時刻の値に更新する（ステップ７０５）。
【００９９】
図２０は、本発明の実施形態の個別アクセス制御データ１０１７１の時刻印１０１７１０により、改ざんの時刻範囲の特定を説明する図である。
【０１００】
図２０に示す例では、ノード１（１０１）は、ファイルＡ１１（２０）とファイルＢ１１（２１）へのアクセスに関するノード１〜６（１０１〜１５１）のポリシデータを所有し、これらのポリシデータ又はポリシファイル１０１２１について多数決処理を行う。
【０１０１】
ノード１（１０１）は、ファイルＡ１１（２０）へのアクセス時に、多数決処理を実行する。Ａ１１（２０）に関するノード４（１３１）のポリシデータは、共通アクセス制御データ１０１６１が「０１０１０１」に改ざんされている。Ａ１１（２０）に関するノード６（１５１）のポリシデータは、個別アクセス制御データ１０１７１が改ざんされている。このため、図２０に示す例のファイルＡ１１のポリシデータの個別アクセス制御データ１０１７１において、ノード６（１５１）の（２００８０５２１０９３３００：２００８年５月２１日９時３３分００秒）からノード４（１３１）の（２００８０５２１１０３２００：２００８年５月２１日１０時３２分００秒）までの範囲内で改ざんが発生したと特定する。
【０１０２】
一方、ファイルＢ１１に関するノード１〜６（１０１〜１５１）のポリシデータの共通アクセス制御データ１０１６１は、全て一致しており、正常であり、個別アクセス制御データ１０１７１は改ざんされていない。しかし、個別アクセス制御データ１０１７１のノード６の（２００８０５２１０９５３００：２００８年５月２１日９時５３分００秒）は、上記のポリシデータの改ざんの範囲に入るため、改ざんと判定（図１０における処理６５）し、ポリシデータは異常状態となる。このファイルＢ１１に関するノード６のポリシデータは、多数決の候補からはずされ、回復処理によって正常状態に戻される。
【０１０３】
以上のように、ポリシファイル１０１２１に制御データに時刻印を設け、ノード間でポリシファイル１０１２１を転送し、ポリシファイル１０１２１の多数決などの判定により、改ざん時刻を特定する。
【０１０４】
以上、説明したように、本実施形態では、ポリシファイル１０１２１へのアクセスに伴い、複数のノード間で多数決処理をするにあたり、ポリシファイル１０１２１に時刻印１０１７１０を付することによって、多数決処理前にポリシファイル１０１２１の改ざんを早期に見つけることができ、改ざんのあった時刻を特定することができる。また、改ざんが見つかったポリシファイル１０１２１を多数決処理からはずすことにより、多数決処理に要する負荷を低減することができる。また、本実施形態の多数決処理は、ＣＰＵ１０２やネットワーク２の負荷が小さい時にノード間で通信するため、他トランザクションに影響を与えない。
【０１０５】
セキュアＯＳやアクセス制御では、不正アクセスやデータ漏洩を防止するために、ポリシファイル１０１２１は改ざんされていないという完全性が要求されている。本発明では、ポリシファイル１０１２１を複数のノードに分散させて、アクセス時には多数決処理を行うため、セキュアＯＳやアクセス制御に適用可能である。また、ポリシファイル１０１２１以外にも、適用可能である。
【図面の簡単な説明】
【０１０６】
【図１】本発明の実施形態のシステム構成図である。
【図２】本発明の実施形態のノードの構成図である。
【図３】本発明の実施形態のポリシファイルの共通アクセス制御データと個別アクセス制御データを示す図である。
【図４】本発明の実施形態のアクセス種別の値を示す図である。
【図５】本発明の実施形態のＡＰの値を示す図である。
【図６】本発明の実施形態のリソースの値を示す図である。
【図７】本発明の実施形態の共通アクセス制御データと個別アクセス制御データから構成されるポリシファイルの具体的な数値例を示す図である。
【図８】本発明の実施形態のトランザクション処理の流れを示す図である。
【図９】本発明の実施形態のポリシファイルの通信処理を示すシーケンス図である。
【図１０】本発明の実施形態のポリシファイルの状態とその状態遷移を示す図である。
【図１１】本発明の実施形態の主ノードのポリシファイルの例を示す説明図である。
【図１２】本発明の実施形態の主ノードがポリシファイルを副ノードに送信する処理手順を示すシーケンス図である。
【図１３】本発明の実施形態の副ノードが主ノードのポリシファイルを主ノードに送信する処理手順を示すシーケンス図である。
【図１４】本発明の実施形態のトランザクション処理の全体の処理手順を示す図である。
【図１５】本発明の実施形態の一括多数決処理の詳細なフローチャートである。
【図１６】本発明の実施形態のトランザクション処理の処理手順を示すフローチャートである。
【図１７】本発明の実施形態のＴｒ−Ａのリソース管理テーブルを示す図である。
【図１８】本発明の実施形態の主ノードにおけるポリシファイルの回復処理を示す図である。
【図１９】本発明の実施形態の副ノードにおけるポリシファイルの回復処理を示す図である。
【図２０】本発明の実施形態の個別アクセス制御データの時刻印により、改ざんの時刻範囲の特定を説明する図である。
【符号の説明】
【０１０７】
１            端末
２            ネットワーク
１０１        ノード１
１１１        ノード２
１２１        ノード３
１３１        ノード４
１４１        ノード５
１５１        ノード６
１０２        ＣＰＵ
１０３        メモリ
１０４        ＩＯＰ
１０５        ＮＩＣ
１０６        ディスクコントローラ
１０１０      仮想化プログラム
１０１１１    ＯＳ１
１０１２１    ポリシファイル
１０１３１    多数決処理部
１０１５１    ＡＰ１
１０１６１    共通アクセス制御データ
１０１７１    個別アクセス制御データ
１０１６１１  ＡＰ
１０１６１２  リソース
１０１６１３  アクセス種別
１０１７１０  時刻印
【図１】
2010061548.tif 000003
【図２】
2010061548.tif 000004
【図３】
2010061548.tif 000005
【図４】
2010061548.tif 000006
【図５】
2010061548.tif 000007
【図６】
2010061548.tif 000008
【図７】
2010061548.tif 000009
【図８】
2010061548.tif 000010
【図９】
2010061548.tif 000011
【図１０】
2010061548.tif 000012
【図１１】
2010061548.tif 000013
【図１２】
2010061548.tif 000014
【図１３】
2010061548.tif 000015
【図１４】
2010061548.tif 000016
【図１５】
2010061548.tif 000017
【図１６】
2010061548.tif 000018
【図１７】
2010061548.tif 000019
【図１８】
2010061548.tif 000020
【図１９】
2010061548.tif 000021
【図２０】
2010061548.tif 000022