(57)【要約】      （修正有）【課題】セキュリティ特性を変更することなくコンピュータシステムのパラメータ値を変更するためのシステム及び方法を提供する。【解決手段】方法は、コンピュータシステムのシステム構成を変更する要求を受信するステップと、受信した要求に基づいてシステム構成に関連するパラメータを特定するステップとを含む。さらに、特定されたパラメータに基づいて、特定された少なくとも１つのパラメータを変更する命令を受信するステップと、受信した命令に基づいて特定された少なくとも１つのパラメータを変更するトランザクションを開始するステップとを含む。次いで、開始されたトランザクションは、パラメータに対する変更がコンピュータシステムのセキュリティレベルを低下させるかどうかを決定するために解析される。セキュリティレベルを低下させない場合、システム構成に関連する特定されたパラメータを変更する。【選択図】図３Ａ
2019036274.tif 000002
【特許請求の範囲】
【請求項１】
セキュリティ特性を変更することなくコンピュータシステムのパラメータ値を変更する方法であって、
要求受信ステップ、特定ステップ、命令受信ステップ、開始ステップ、決定ステップ、実行ステップを備え、
前記要求受信ステップは、プロセッサにより、コンピュータシステムのシステム構成を変更する要求を受信し、
前記特定ステップは、前記要求に基づいて、データベース内の少なくとも１つのパラメータを特定し、且つ、前記データベースは、前記コンピュータシステムのシステム構成に関するパラメータを記憶し、
前記命令受信ステップは、前記プロセッサにより、前記特定された少なくとも１つのパラメータを変更するための命令を受信し、
前記開始ステップは、前記プロセッサにより、前記受信した命令に基づいて、前記特定された少なくとも１つのパラメータを変更するトランザクションを開始し、
前記決定ステップは、前記プロセッサにより、前記トランザクションが前記コンピュータシステムの少なくとも１つのセキュリティレベルを下げるかどうかを決定し、
前記実行ステップは、前記開トランザクションが前記コンピュータシステムの少なくとも１つのセキュリティレベルを下げないことを前記プロセッサが決定した場合に、前記プロセッサにより、前記システム構成に関連する前記特定された少なくとも１つのパラメータの変更を実行する、
方法。
【請求項２】
キー特定ステップを備え、
前記キー特定ステップは、前記システム構成を変更する要求に基づいて、少なくとも１つのキーを特定し、
前記データベース内の前記少なくとも１つのパラメータの特定が、前記特定されたキーに基づいて実行される、
請求項１に記載の方法。
【請求項３】
表示ステップを備え、
前記表示ステップは、トランザクションウィンドウにインターフェースを表示し、
前記インターフェースは、前記コンピュータシステムのオペレータから、前記特定された少なくとも１つのパラメータを変更するための命令を受信するように構成される、
請求項１に記載の方法。
【請求項４】
前記命令は、前記特定された少なくとも１つのパラメータ値の変更要求、前記特定された少なくとも１つのパラメータの除去要求、又は前記特定された少なくとも１つのパラメータに関連する新しいパラメータの追加要求の少なくとも１つを含む、
請求項３に記載の方法。
【請求項５】
状態決定ステップ及び解析ステップを備え、
前記状態決定ステップは、前記プロセッサにより、前記特定された少なくとも１つのパラメータの現在の状態を決定し、
前記解析ステップは、
前記決定された現在の状態及び前記コンピュータシステムの少なくとも１つのセキュリティレベルに基づいて、前記開始されたトランザクションを解析し、
前記決定された現在の状態から、前記特定された少なくとも１つのパラメータへの変更が、前記コンピュータシステムの少なくとも１つのセキュリティレベルの規則に適合するかどうかを決定する、
請求項１に記載の方法。
【請求項６】
取り消しステップを備え、
前記取り消しステップは、前記パラメータに対する前記変更が前記規則に適合しない場合、前記特定された少なくとも１つのパラメータの前記変更を取り消す、
請求項５に記載の方法。
【請求項７】
変更識別ステップ及びセキュリティレベル決定ステップを備え、
前記変更識別ステップは、前記開始されたトランザクションが前記コンピュータシステムの少なくとも１つのセキュリティレベルを低下させることを前記プロセッサが決定した場合、前記プロセッサにより、前記パラメータを変更するための命令に対する少なくとも１つの変更を識別し、
前記セキュリティレベル決定ステップは、前記プロセッサにより、前記変更の識別が実行され、前記コンピュータシステムの前記システム構成を変更する場合に、前記プロセッサにより、前記パラメータを変更するための命令に対する前記特定された少なくとも１つの変更が、前記コンピュータシステムの少なくとも１つのセキュリティレベルを低下させるかどうかを決定する、
請求項１に記載の方法。
【請求項８】
提示ステップ及び変更実行ステップを備え、
前記提示ステップは、前記特定された少なくとも１つのパラメータを変更するために、前記命令に対する特定された少なくとも１つの変更を前記ユーザインターフェース上に提示し、
前記変更実行ステップは、前記プロセッサにより、前記ユーザインターフェースを介したユーザからの指示を受信すると、前記識された少なくとも１つの変更を実行して前記コンピュータシステムのシステム構成の変更を実行する、
請求項７に記載の方法。
【請求項９】
予備解析ステップを備え、
前記予備解析ステップは、
前記トランザクションの開始前に、前記受信された命令の予備解析を実行し、
前記パラメータが格納されたデータベース内における、前記少なくとも１つの特定されたパラメータと、少なくとも１つの変更されていないパラメータと、の整合性を検証し、
前記データベースに格納されたパラメータは、前記特された少なくとも１つのパラメータに関連する、
請求項１に記載の方法。
【請求項１０】
前記トランザクションは、前記少なくとも１つの変更されていないパラメータと、前記特定された少なくとも１つのパラメータと、の整合性を検証する際に開始される、
請求項９に記載の方法。
【請求項１１】
セキュリティ特性を変更することなくコンピュータシステムのパラメータ値を変更するシステムであって、
データベース及びプロセッサを備え、
前記データベースは、前記コンピュータシステムのシステム構成に関するパラメータを記憶し、
前記プロセッサは、
コンピュータシステムのシステム構成を変更する要求を受信し、
前記要求に基づいて、前記データベース内の少なくとも１つのパラメータを特定し、
前記特定された少なくとも１つのパラメータを変更するための命令を受信し、
前記受信した命令に基づいて、前記特定された少なくとも１つのパラメータを変更するトランザクションを開始し、
前記トランザクションが前記コンピュータシステムの少なくとも１つのセキュリティレベルを下げるかどうかを決定し、
前記開トランザクションが前記コンピュータシステムの少なくとも１つのセキュリティレベルを下げないことを前記プロセッサが決定した場合に、前記システム構成に関連する前記特定された少なくとも１つのパラメータの変更を実行する、
ように構成される、システム。
【請求項１２】
前記プロセッサは、
前記システム構成を変更する要求に基づいて、少なくとも１つのキーを特定し、前記データベース内の前記少なくとも１つのパラメータの特定が、前記特定されたキーに基づいて実行される、
ように構成される、請求項１１に記載のシステム。
【請求項１３】
前記プロセッサは、トランザクションウィンドウにインターフェースを表示し、
前記インターフェースは、前記コンピュータシステムのオペレータから、前記特定された少なくとも１つのパラメータを変更するための命令を受信するように構成される、
請求項１１に記載のシステム。
【請求項１４】
前記命令は、前記特定された少なくとも１つのパラメータ値の変更要求、前記特定された少なくとも１つのパラメータの除去要求、又は前記特定された少なくとも１つのパラメータに関連する新しいパラメータの追加要求の少なくとも１つを含む、
請求項１３に記載のシステム。
【請求項１５】
前記プロセッサは、
前記特定された少なくとも１つのパラメータの現在の状態を決定し、
前記決定された現在の状態及び前記コンピュータシステムの少なくとも１つのセキュリティレベルに基づいて、前記開始されたトランザクションを解析し、前記決定された現在の状態から、前記特定された少なくとも１つのパラメータへの変更が、前記コンピュータシステムの少なくとも１つのセキュリティレベルの規則に適合するかどうかを決定する、
ように構成される、請求項１１に記載のシステム。
【請求項１６】
前記プロセッサは、前記パラメータに対する前記変更が前記規則に適合しない場合、前記特定された少なくとも１つのパラメータの前記変更を取り消す、
ように構成される、請求項１５に記載のシステム。
【請求項１７】
前記プロセッサは、
前記開始されたトランザクションが前記コンピュータシステムの少なくとも１つのセキュリティレベルを低下させることを前記プロセッサが決定した場合、前記パラメータを変更するための命令に対する少なくとも１つの変更を識別し、
前記変更の識別が実行され、前記コンピュータシステムの前記システム構成を変更する場合に、前記パラメータを変更するための命令に対する前記特定された少なくとも１つの変更が、前記コンピュータシステムの少なくとも１つのセキュリティレベルを低下させるかどうかを決定する、
ように構成される、請求項１１に記載のシステム。
【請求項１８】
前記プロセッサは、前記特定された少なくとも１つのパラメータを変更するために、前記命令に対する特定された少なくとも１つの変更をユーザインターフェース上に提示し、前記ユーザインターフェースを介したユーザからの指示を受信すると、前記識された少なくとも１つの変更を実行して前記コンピュータシステムのシステム構成の変更を実行する、
ように構成される、請求項１７に記載のシステム。
【請求項１９】
前記プロセッサは、前記トランザクションの開始前に、前記受信された命令の予備解析を実行し、前記パラメータが格納されたデータベース内における、前記少なくとも１つの特定されたパラメータと、少なくとも１つの変更されていないパラメータと、の整合性を検証し、前記データベースに格納されたパラメータは、前記特された少なくとも１つのパラメータに関連する、
ように構成される、請求項１１に記載のシステム。
【請求項２０】
前記プロセッサは、前記トランザクションを、前記少なくとも１つの変更されていないパラメータと、前記特定された少なくとも１つのパラメータと、の整合性を検証する際に開始する、
ように構成される、請求項１９に記載のシステム。
【請求項２１】
セキュリティ特性を変更することなくコンピュータシステムのパラメータ値を変更するためのコンピュータ実行可能命令を含む非一時的なコンピュータ可読媒体であって、
前記媒体は、要求受信命令、特定命令、命令受信命令、開始命令、決定命令、実行命令を備え、
前記要求受信命令は、コンピュータシステムのシステム構成を変更する要求を受信し、
前記特定命令は、前記要求に基づいて、データベース内の少なくとも１つのパラメータを特定し、且つ、前記データベースは、コンピュータシステムのシステム構成に関するパラメータを記憶し、
前記命令受信命令は、前記特定された少なくとも１つのパラメータを変更するための命令を受信し、
前記開始命令は、前記受信した命令に基づいて、前記特定された少なくとも１つのパラメータを変更するトランザクションを開始し、
前記決定命令は、前記トランザクションが前記コンピュータシステムの少なくとも１つのセキュリティレベルを下げるかどうかを決定し、
前記実行命令は、前記開トランザクションが前記コンピュータシステムの少なくとも１つのセキュリティレベルを下げないことを前記プロセッサが決定した場合に、前記プロセッサにより、前記システム構成に関連する前記特定された少なくとも１つのパラメータの変更を実行する、
媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、コンピュータシステムにおけるセキュリティの分野に関し、より詳細には、セキュリティ特性を変更することなくコンピュータシステムのパラメータ値を変更するシステム及び方法に関する。
【背景技術】
【０００２】
コンピュータ機器におけるセキュリティシステムの使用とそれに伴う進化は、急速なペースで増加し続けている。現在、シンプルなセキュリティシステムから高度且つ複雑なセキュリティシステムに至るまで、膨大な数のセキュリティシステムが存在している。シンプルなシステムは、原則として、単一の脅威（すなわち、セキュリティ問題）から保護し、これに伴う問題を解決するための機能を含むことを目的としている。複雑なシステムは、コンピュータデバイスの包括的な保護を保証する包括的なソリューション全体である。これは、悪意のあるソフトウェアからの保護から、コンピュータデバイス及びそのコンポーネントの制御にいたるまでを含む。
【０００３】
したがって、多くの企業は、セキュリティシステムの改善に関連する様々な技術の研究及び開発に取り組んでいる。これらの技術は、デバイスの安全性とリソース又は様々な脅威に対するユーザのデータを確保するためのソリューションの即時作成と、パフォーマンス、耐故障性、人間工学、セキュリティシステム自体及びセキュリティシステムが動作しているシステム等に関するセキュリティシステムの側面の改善の両方を含み得る。
【０００４】
たとえば、米国特許第７，３８６，８８５号は、コンピュータシステムのプログラム構成要素間の相互作用を制御するためのセキュリティシステムを提案している。この従来のセキュリティシステムは、プログラム実行環境をセキュリティポリシーの実装から分離するという原則に基づいて動作する。さらに、コンポーネントの通信に関するセキュリティの制御は、通信の特性を記述する動的に公式化された属性のセットと、セキュリティポリシーを記述するルールのセットに基づいて実行される。セキュリティシステムは、各プログラムコンポーネントの様々なライフステージで示された制限と属性を利用する。かかる制限は、各ライフステージで徐々に追加される。
【０００５】
セキュリティシステムが様々な側面や基準を考慮すればするほど、制御が複雑になり、特定のセキュリティシステムに関するシステム管理者のスキル又は管理の専門スキルなど、後でそれを扱う際にユーザは追加のスキルが必要になる。したがって、特定のセキュリティシステムとの相互作用の仕組みをデザインするときには、ユーザの知識レベルが考慮され、それに応じてセキュリティシステムが設計される。換言すると、システム開発者は、セキュリティシステムを操作、設定、又は監督するときに、そのような知識の深さだけでなく、ユーザが専門知識を持つ必要性を考慮に入れる。
【０００６】
したがって、包括的なセキュリティ、制御、セットアップ及びその後の規制が必要とされるデバイス（例：ネットワーク管理者のサーバ及びコンピュータ）を対象とするセキュリティシステムの特定の設計は、通常複雑であり、それらのセットアップ及び規制のための一連の特別な知識を必要とする。同時に、コンシューマ機器及びシステム向けのセキュリティシステムの設計では、これらは一般にインタラクティブに設計されてあり、訓練されていないユーザがセキュリティシステムのセットアップを実行できるように作成されている。そのようなシステムは、システムの一般的なセットアップしかできない。すなわち、それらは、セキュリティシステムの全てのパラメータの「微調整（フリーチューニング）」ができず、また、セキュリティシステムによって制御されるオペレーティングシステムとセキュリティシステムに関する非常に重要な特性の設定にアクセスできない。したがって、既存のセキュリティシステムにおける課題の１つは、複雑なセキュリティシステムと簡単な制御を組み合わせたソリューションを提供することである。例えば、セキュリティシステム自体とそれが制御しているシステムの両方にセキュリティ違反をもたらす可能性のあるセキュリティ属性（例：オペレーティングシステム）を変更する場合、特別な知識のないユーザが、間違いを防ぎながら複雑なセキュリティシステムの設定パラメータを制御及び変更することが可能である。
【０００７】
セキュリティを制御するためのさらに別の技術的問題は、システムのセキュリティ違反がない限り、システムのセキュリティレベルに影響を与えるパラメータを変更し得ることである。したがって、特定のシステムにおけるパラメータの不適切な値又は相互に矛盾する値を設定した場合、システムの再構成中に適切な監視がなければ、セキュリティプロパティに違反する可能性がありうる。したがって、このような既存のシステムの限界を考慮して、上述の技術的問題を解決するための新しいアプローチが必要である。
【発明の概要】
【０００８】
本開示は、上記の制限を克服し、任意のタイミングで、一度に一連の変更を行うことを可能にするシステム及び方法を提供し、パラメータの必要な変更数の正確さを検証するために利用される。ここで、任意のタイミングとしては、例えば、パフォーマンスを向上させるための特定のアプリケーションの作業中、又は他のアプリケーションと比較して重要性が高い場合が挙げられる。
【０００９】
開示されたシステム及び方法は、既存のシステムの上記の問題及びオペレーティングシステムなどのシステムの構成（パラメータ）の安全な変更を可能にする目的を考慮することにより実現された。換言すると、監視されているシステムのパラメータを変更する場合には、開示されたシステム及び方法は、行われた変更を制御し、変更されるパラメータに依存する可能性のあるパラメータの変化を明らかにし、セキュリティ侵害を防止することを目標とする。これは、セキュリティ属性の違反の観点から、監視されているシステムのセキュリティの変更の可能性に関するパラメータの変更の影響を判断することによって実現される。
【００１０】
したがって、開示されたシステム及び方法は、その構成、具体的にはシステムのパラメータを変更する場合に、システムの所定レベルのセキュリティを提供するという技術的利点を提供し、その後決定が下される。これは、変更されるパラメータの一貫性と、依存パラメータと、システムのセキュリティプロパティに対するそれらの共同の影響とを検証することによって実現される。
本システム及び方法の別の技術的利点は、構成の全てのパラメータで変更されているパラメータの一貫性を検証し、効率的な作業を確実にすることによって、システム構成の変更に対するシステムのフォールトトレランスを提供することである。
本システム及び方法の別の技術的利点は、システム構成の変更に対するシステムの許容性に対する制限を設け、パラメータのコンフリクトが発見された場合に、システムの効率的な作業を確実にするための措置を取ることである。これは、構成の全てのパラメータのうち、変更されているパラメータの整合性を検証することにより実現される。
【００１１】
したがって、セキュリティ特性を変更することなくコンピュータシステムのパラメータ値を変更するための例示的な方法が提供される。
一実施形態では、
セキュリティ特性を変更することなくコンピュータシステムのパラメータ値を変更する方法であって、
要求受信ステップ、特定ステップ、命令受信ステップ、開始ステップ、決定ステップ、実行ステップを備え、
前記要求受信ステップは、プロセッサにより、コンピュータシステムのシステム構成を変更する要求を受信し、
前記特定ステップは、前記要求に基づいて、データベース内の少なくとも１つのパラメータを特定し、且つ、前記データベースは、前記コンピュータシステムのシステム構成に関するパラメータを記憶し、
前記命令受信ステップは、前記プロセッサにより、前記特定された少なくとも１つのパラメータを変更するための命令を受信し、
前記開始ステップは、前記プロセッサにより、前記受信した命令に基づいて、前記特定された少なくとも１つのパラメータを変更するトランザクションを開始し、
前記決定ステップは、前記プロセッサにより、前記トランザクションが前記コンピュータシステムの少なくとも１つのセキュリティレベルを下げるかどうかを決定し、
前記実行ステップは、前記開トランザクションが前記コンピュータシステムの少なくとも１つのセキュリティレベルを下げないことを前記プロセッサが決定した場合に、前記プロセッサにより、前記システム構成に関連する前記特定された少なくとも１つのパラメータの変更を実行する、
方法が提供される。
【００１２】
別の態様では、
キー特定ステップを備え、
前記キー特定ステップは、前記システム構成を変更する要求に基づいて、少なくとも１つのキーを特定し、
前記データベース内の前記少なくとも１つのパラメータの特定が、前記特定されたキーに基づいて実行される。
【００１３】
別の態様では、
表示ステップを備え、
前記表示ステップは、トランザクションウィンドウにインターフェースを表示し、
前記インターフェースは、前記コンピュータシステムのオペレータから、前記特定された少なくとも１つのパラメータを変更するための命令を受信するように構成される。
【００１４】
別の態様では、
前記命令は、前記特定された少なくとも１つのパラメータ値の変更要求、前記特定された少なくとも１つのパラメータの除去要求、又は前記特定された少なくとも１つのパラメータに関連する新しいパラメータの追加要求の少なくとも１つを含む。
【００１５】
別の態様では、
状態決定ステップ及び解析ステップを備え、
前記状態決定ステップは、前記プロセッサにより、前記特定された少なくとも１つのパラメータの現在の状態を決定し、
前記解析ステップは、前記決定された現在の状態及び前記コンピュータシステムの少なくとも１つのセキュリティレベルに基づいて、前記開始されたトランザクションを解析し、
前記決定された現在の状態から、前記特定された少なくとも１つのパラメータへの変更が、前記コンピュータシステムの少なくとも１つのセキュリティレベルの規則に適合するかどうかを決定する。
【００１６】
別の態様では、
取り消しステップを備え、
前記取り消しステップは、前記パラメータに対する前記変更が前記規則に適合しない場合、前記特定された少なくとも１つのパラメータの前記変更を取り消す。
【００１７】
別の態様では、
変更識別ステップ及びセキュリティレベル決定ステップを備え、
前記変更識別ステップは、
前記開始されたトランザクションが前記コンピュータシステムの少なくとも１つのセキュリティレベルを低下させることを前記プロセッサが決定した場合、前記プロセッサにより、前記パラメータを変更するための命令に対する少なくとも１つの変更を識別し、
前記セキュリティレベル決定ステップは、
前記プロセッサにより、前記変更の識別が実行され、前記コンピュータシステムの前記システム構成を変更する場合に、前記プロセッサにより、前記パラメータを変更するための命令に対する前記特定された少なくとも１つの変更が、前記コンピュータシステムの少なくとも１つのセキュリティレベルを低下させるかどうかを決定する。
【００１８】
別の態様では、
提示ステップ及び変更実行ステップを備え、
前記提示ステップは、前記特定された少なくとも１つのパラメータを変更するために、前記命令に対する特定された少なくとも１つの変更をユーザインターフェース上に提示し、
前記変更実行ステップは、前記プロセッサにより、前記ユーザインターフェースを介したユーザからの指示を受信すると、前記識された少なくとも１つの変更を実行して前記コンピュータシステムのシステム構成の変更を実行する。
【００１９】
別の態様では、
予備解析ステップを備え、
前記予備解析ステップは、前記トランザクションの開始前に、前記受信された命令の予備解析を実行し、前記パラメータが格納されたデータベース内における、前記少なくとも１つの特定されたパラメータと、少なくとも１つの変更されていないパラメータと、の整合性を検証し、前記データベースに格納されたパラメータは、前記特された少なくとも１つのパラメータに関連する。
【００２０】
別の態様では、
前記トランザクションは、前記少なくとも１つの変更されていないパラメータと、前記特定された少なくとも１つのパラメータと、の整合性を検証する際に開始される。
【００２１】
さらに別の態様によれば、
セキュリティ特性を変更することなくコンピュータシステムのパラメータ値を変更するシステムであって、
データベース及びプロセッサを備え、
前記データベースは、前記コンピュータシステムのシステム構成に関するパラメータを記憶し、
前記プロセッサは、
コンピュータシステムのシステム構成を変更する要求を受信し、
前記要求に基づいて、前記データベース内の少なくとも１つのパラメータを特定し、
前記特定された少なくとも１つのパラメータを変更するための命令を受信し、
前記受信した命令に基づいて、前記特定された少なくとも１つのパラメータを変更するトランザクションを開始し、
前記トランザクションが前記コンピュータシステムの少なくとも１つのセキュリティレベルを下げるかどうかを決定し、
前記開トランザクションが前記コンピュータシステムの少なくとも１つのセキュリティレベルを下げないことを前記プロセッサが決定した場合に、前記システム構成に関連する前記特定された少なくとも１つのパラメータの変更を実行する、
ように構成される、システムが提供される。
この態様では、システムは、コンピュータシステムのシステム構成に関するパラメータのデータベースを含む。前記コンピュータシステムのシステム構成を変更する要求を受信するように構成されたプロセッサと、システム構成を変更する要求に基づいて、コンピュータシステムのシステム構成に関連するパラメータのデータベース内の少なくとも１つのパラメータを特定するステップと、識別された少なくとも１つのパラメータを変更するための命令を受信するステップと、受信された命令に基づいて識別された少なくとも１つのパラメータを変更するトランザクションを開始するステップと、前記識別された少なくとも１つのパラメータを変更する前記開始されたトランザクションが前記コンピュータシステムの少なくとも１つのセキュリティレベルを下げるかどうかを決定し、開始されたトランザクションがコンピュータシステムの少なくとも１つのセキュリティレベルを低下させないとプロセッサが判定した場合、システム構成に関連する識別された少なくとも１つのパラメータの変更を実行する。
【００２２】
例示的な態様における上記の簡略化された概要は、本開示の基本的な理解を促進させるものである。かかる概要は、全ての企図された態様の広範な概観ではない。また、全ての側面の重要な要素又は必須の要素を特定することは意図するものでもなく、本開示の任意の又は全ての態様の範囲を説明するものでもない。その唯一の目的は、以下の開示におけるより詳細な説明の前置きとして、１又は複数の態様を簡略化した形で提示することである。前述の目的を達成するために、本開示の１つ以上の態様は、特許請求の範囲に記載され、例示的に指摘される特徴を含む。
【図面の簡単な説明】
【００２３】
添付の図面は、本明細書に組み込まれ、本明細書の一部を構成し、本開示の１つ以上の例示的な態様を示し、詳細な説明とともに、それらの原理及び実施形態を説明する役割を果たす。
【図１】例示的な態様によるコンピュータシステムの構成の安全な変更を保証するためのシステムのブロック図を示す。
【図２】例示的な態様による例示的なシステムのブロック図を示す。
【図３】図３Ａは、例示的な態様による、監視されているシステムの構成を変更する際に所定レベルのセキュリティを保証する方法のフローチャートを示す。図３Ｂは、例示的な態様による、監視されているシステムの構成を変更する際に所定レベルのセキュリティを保証する方法の別のフローチャートを示す。
【図４】開示されたシステム及び方法が例示的な態様にしたがって実装され得る汎用コンピュータシステムの例を示す。かかる汎用コンピュータシステムは、パーソナルコンピュータ又はサーバであり得る。
【発明を実施するための形態】
【００２４】
様々な態様が図面を参照して説明され、同様の参照番号は全体を通して同様の要素を指すために使用される。以下の説明では、説明のために、１又は複数の態様についての完全な理解を促進するために、多数の特定の詳細が示される。かかる概要は、全ての企図された態様の広範な概観ではない。また、全ての側面の重要な要素又は必須の要素を特定することは意図するものでもなく、本開示の任意の又は全ての態様の範囲を説明するものでもない。他の例では、１又は複数の態様の説明を容易にするために、周知の構造及びデバイスがブロック図形式で示されている。以下において、本開示の側面の基本的な理解を提供するために、１又は複数の態様の簡略化された概要を提示する。この概略は、全ての企図された態様の広範な概観ではなく、全ての態様の重要又は重要な要素を特定することも、任意又は全ての態様の範囲を描写することも意図していない。
【００２５】
開示されたシステム及び方法は、特に、システム構成のパラメータを変更するときに、そのシステムの再構成時に確立されたレベルのセキュリティを保証する。そのようなシステムの一例は、図１に示すシステム１００のブロック図である。システム（コンピュータシステム）の構成とは、システムの動作条件を指定するハードウェア及びソフトウェア（例：アプリケーション、スイッチ、変数の値、制御シーケンス）のパラメータのセットを意味する。変更は、イニシエータによって行われる。イニシエータは、システムのユーザ又はシステムが実行されているデバイス、又はそのシステムに関する外部システム（任意のその他のシステム）のいずれかであり得る。開示されたシステム及び方法は、特定のレベルのセキュリティが監視されるシステム（システム１００）であることを保証する。監視対象システムの例としては、コンピューティングデバイス（例：コンピュータシステムを備えたコンピュータ）及びソフトウェアが挙げられる。
【００２６】
ソフトウェアという用語は、オペレーティングシステムなどのシステムソフトウェア、及びセキュリティシステム、学習プログラム、会計プログラム、ＣＡＤなどのアプリケーションプログラム、又はスマートフォンなどのモバイルデバイスに実装されたアプリケーションとして捉えることができる。外部システムは、監視対象システムに含まれていても、監視対象システムの境界外であってもよく、監視対象システムに影響を与えることができる。例えば、かかる影響は、監視対象システムのリソースの利用又は監視対象システムの構成パラメータに対する変更の形で表出する。さらに、外部システム及び監視対象システムは、同じハードウェア（例：パーソナルコンピュータ又はサーバ）又は異なるハードウェアのいずれかに実装することができる。
【００２７】
開示されたシステム及び方法の実施には、監視対象システムの構成パラメータを安全に記憶する記憶装置の作成及び安全な再構成の実行が含まれる。そのような実装の主な特徴は、セキュリティポリシーをシステムのビジネスロジックポリシー（監視対象のシステムと外部システム）から分離することである。これにより、ある共通の動的ストレージ（すなわち、構成パラメータの記憶領域）を作成し、個別に定式化することが可能になる。そして、このストレージの使用に関する異なるバリアントに基づいて配置する必要のあるセキュリティポリシーを決定又は指定することができる。ここで、使用に関するバリアントは、少なくとも以下の一方である。
（１）各パラメータに個別にポリシーを割り当てる。
（２）構成全体を更新するためのポリシーを割り当てる。
このプロセスにより、ポリシーに含まれる動的ルールに基づいて、変更を柔軟に規制することができる。
【００２８】
安全なストレージを提供するために、記憶装置に対する全ての変更が安全な再構成モジュール（以下、再構成モジュール）によって解析される間に、相互作用エージェント（例：インタラクションエージェント１１０）を介して構成へのアクセスが行われる。このような実装により、監視対象システムの構成パラメータの制御のための機能を、システム自体及び外部システムから分離することが可能になる。ストレージには、少なくとも、監視対象システム（ソフトウェア）のセキュリティレベルに影響を与えるパラメータが含まれる。
【００２９】
以下では、図１に示される例示的なシステムのサンプル態様を説明するとき、監視されるシステム１００、再構成モジュール１３０、及び監視対象システムの構成パラメータを記憶する記憶装置１２０（以下、パラメータ記憶装置）を含む。以下、同様に、不適切な変更を識別し、変更されたパラメータ値と他のパラメータ値の整合性を検証することによって、監視対象システムの構成を変更する際に所定レベルのセキュリティを提供する方法の例示的な態様を提示する。セキュリティレベルは、要素（ハードウェアとソフトウェア）の相互作用の条件、基準の全体、互いに監視されているシステムのパラメータ、及び外部システムの要素とのパラメータを特徴づけるものである。これにより、監視対象システムには、システムの様々な脅威及び／又は作業効率に関する保護が提供される。セキュリティレベルは、例えば、開始レベル（脅威に対する一般的な保護ルールが必要な場合）から最大レベル（ハードディスクドライブ（ＨＤＤ）、プロセッサ、データ転送ツールなどのような重要なシステム要素へのアクセスに関する厳しい制限のためにポリシーが提供されている場合）まで規制することができる。
【００３０】
開示されたシステム及び方法の態様に応じて、監視対象システムの構成パラメータを変更するときに、ユーザ又は外部システムとの相互作用は、個別に又は全体として実行され得ることに留意されたい。ここで、任意の所定のアプリケーションが、オペレーティングシステム向けの外部システムとして機能してもよい。したがって、イニシエータ（例：ユーザ）が監視対象システムの構成パラメータ値の変更を希望する場合、イニシエータは、インタラクションエージェント１１０に要求を行う。かかる要求は、少なくとも変更が必要なパラメータに関するデータを含んでいてもよい。その後、インタラクションエージェント１１０は、現在のパラメータ値又は新しいパラメータ値の変更を後で行うためのトランザクションインターフェースを提供する（すなわち、トランザクションウィンドウ１１５を形成する）。トランザクションインターフェースは、パラメータが提示され変更されるトランザクションウィンドウを利用してトランザクションを実行するための機能を提供するインターフェースである。一実施形態では、インターフェースは、全てのパラメータの状態の現在のコピーを含むことができる。また、インターフェースは、変更のためにユーザがアクセス可能なパラメータのみを含んでもよい。
【００３１】
例示的な態様によれば、パラメータのアクセス可能性は、ユーザがシステムで作業している役割又は口座記録に基づいて、事前に解析（予備解析）されてもよい。同様に、トランザクションウィンドウの形成は、対応する外部システム又はユーザによって変更され得るパラメータに関する情報を得るために、インタラクションエージェント１１０とパラメータ記憶装置１２０との間の相互通信によって行われる。
【００３２】
さらに、実施の最も好ましい方法では、インタラクションエージェント１１０が、パラメータを含むソフトウェアによるパラメータの変更要件をユーザから受信する。かかるソフトウェアは、パラメータの変更を規制又は制御することができる。この場合、通信は外部システムと同様に発生する。外部システムは、インタラクションエージェント１１０にパラメータの変更を要求する。外部システムがパラメータに個別に変更を加える理由は、例えば、監視対象システムの外部システムの実行又は初期化であり、その間に監視対象システムの追加動的パラメータが形成又は表示されることがある。次に、再構成モジュール１３０は、トランザクションメカニズムから受信した変更要求に基づいて、インタラクションエージェント１１０を介して記憶装置を変更し、まず変更の正当性及び整合性をチェックする。
【００３３】
したがって、一般的な形態では、図１に示すように、システム１００の構成の安全な変更を提供するためのシステムは、パラメータ記憶装置１２０及び再構成モジュール１３０を含む。一実施形態では、監視対象システム１００は、オペレーティングシステム、例えば、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ、Ｍａｃ  ＯＳ、Ｋａｓｐｅｒｓｋｙ  ＯＳ、又はＡｎｄｒｏｉｄ  ＯＳファミリのオペレーティングシステムのうちの１つである。したがって、以下に示す例示的な態様は、オペレーティングシステムの特徴である構成パラメータの例を示す。
【００３４】
パラメータ記憶装置１２０は、システム１００に関する少なくとも全ての動的構成パラメータを含む。動的構成パラメータは、システム１００のハードウェアとソフトウェアの両方に関係するパラメータである。動的パラメータは、システム１００の動作の過程で変更されるパラメータである。パラメータを変更するときに、それらのパラメータ又はそれらに関連するパラメータがシステム１００の動作にどのように影響するかを（変更を行う前に）一度に知ることは常に不可能である。したがって、そのようなパラメータの不適切な変更は、システム１００のセキュリティ特性の変更を伴い得る。そのため、与えられたセキュリティレベルが低下する可能性がある。したがって、行われた変更が適切か否かの観点からパラメータを監視し、関連又は従属パラメータとの整合性を検証する必要がある。この場合、記憶装置から取得されるパラメータ間の関係については知られていない可能性がある。このようなパラメータは、システム１００自体のパラメータであっても、外部システムのパラメータであってもよい。
【００３５】
パラメータ記憶装置１２０の１つの変形態様では、そこに含まれるパラメータは、キー及びそれらの対応するタイプのパラメータによって識別される。これらの例としては、符号付き及び符号なし整数、文字列、及び浮動小数点数が挙げられる。用語「キー」は、一般に、パラメータ記憶装置１２０内の対応するパラメータの正確な識別を可能にする識別子を指し、開示されるシステム及び方法の例示的な態様に応じて、様々な形態を有し得る。各パラメータは、「セキュリティラベル」の概念に関連付けられている。セキュリティラベルは、ユーザ又は他のシステムによるパラメータのアクセス及び使用の可能性を記述する属性のグループ（リスト）である。原則として、システム内の各ユーザは、以下の概念（識別子）の少なくとも１つに対応する。
概念（識別子）：セキュリティラベルでも利用され得るユーザアカウントレコード及び／又は対応するシステム内のユーザロール。したがって、一実施形態例において、セキュリティラベルは、パラメータ記憶装置１２０及びパラメータ記憶装置１２０全体に含まれるパラメータの異なる監視方法を実現するために使用される。
【００３６】
さらに、パラメータ記憶装置１２０は、更新のトランザクションの性質をサポートする。すなわち、パラメータへの変更は１つずつ行われるのではなく、指定された瞬間に変更が必要なパラメータの変更リストが作成される。換言すると、パラメータ記憶装置１２０の変更を行うために、トランザクションインターフェースのトランザクションウィンドウ１１５が使用される。具体的には、ユーザは、ソフトウェア１０５又は外部システムを用い、そのトランザクションウィンドウに表示されたパラメータ値に必要な変更を加える。コミットとともに実行されるトランザクションウィンドウ１１５の生成及びそれに続く変更を含むトランザクションの形成は、インタラクションエージェント１１０によって行われる。そして、インタラクションエージェント１１０は、検証のため、トランザクションを再構成モジュール１３０に送信する。
【００３７】
再構成モジュール１３０は、セキュリティポリシー（すなわち、所与のセキュリティレベルの低下を満足しない要件との適合）によってコミットされたトランザクションに加えられた変更の正確さを検証することによって、パラメータ記憶装置１２０に含まれるパラメータへの変更の安全な作成を保証する。これにより、記憶装置１２０内の他のパラメータ及びパラメータ値との一貫性を保証する。パラメータの変更は、既に記憶装置に含まれているパラメータ値の変更と、記憶装置における新しいパラメータの配置の両方を意味すると考えられる。再構成モジュール１３０は、解析モジュール１３３と、セキュリティポリシーのデータベース１３５と、決定モジュール１３７とを含み、インタラクションエージェント１１０と相互作用（相互通信）する。開示されるシステム及び方法の例示的な態様に応じて、インタラクションエージェント１１０は、監視対象システム１００の一部であってもよく、又は再構成モジュール１３０と組み合わせてもよいことに留意されたい。
【００３８】
インタラクションエージェント１１０は、インタラクションエージェント１１０がシステム１００の構成を変更するためのトランザクションを開始（作成）する間、イニシエータ（ユーザ又は外部システム）、記憶装置１２０及び再構成モジュール１３０の間の相互作用を司る記憶装置１２０内のパラメータの状態の現在のコピーを生成する。例えば、インタラクションエージェント１１０は、少なくともパラメータ記憶装置１２０との相互作用がパラメータを変更するために生じる部分において、データベース管理システム（ＤＢＭＳ）であってもよい。例えば、相互作用の場面において、ソフトウェア１０５とトランザクションインターフェースとの間には、新しい値がパラメータに割り当てられる。その後、インタラクションエージェント１１０はトランザクションをコミットし、検証のためにトランザクションを再構成システム１３０、具体的には解析モジュール１３３に送信する。このトランザクションに加えて、インタラクションエージェント１１０は、変更を行うときに生成されたパラメータ記憶装置１２０内のパラメータの状態の現在のコピーも送信する。現在のコピーは、例えば、スナップショット技法によって作成され、記憶装置のセット（又は全て）の静的状態を描写することを可能にする。したがって、現在のコピーは、決定された種類の特定のデータセットを構成する。
【００３９】
解析モジュール１３３は、セキュリティポリシーを記憶したデータベース１３５からのセキュリティポリシーを参照し、パラメータの状態の現在のコピーに基づいて、トランザクションにおいてなされた変更を評価する機能を有する。セキュリティポリシーを記憶したデータベース１３５は、記憶装置１２０のパラメータに対する特定のセキュリティポリシーを含む。したがって、セキュリティポリシーは、トランザクションに含まれるパラメータ値の変化、又は記憶装置１２０からのそれらに関連する他のパラメータが、システム１００の所与のセキュリティレベルにどのように影響するかを検証することを可能にする。さらに、各セキュリティポリシーは、パラメータの共同チェックの必要性に応じて形成される。すなわち、ポリシーは、１又は複数のパラメータをチェックする。なお、唯一の制限は、技術的又はソフトウェア的なものである。このようなセキュリティポリシーの使用の際立った特徴は、変更のチェックにおけるセキュリティポリシーは、記憶装置１２０又はそれに含まれるパラメータとの直接的なアクションを実行しないことである。その代わりに、変更の際にパラメータの状態の現在のコピーを使用してなされる評価中に、全体の解析が実行される。ここで、全体の解析には、パラメータへの許容可能な変更のチェックや他のパラメータへの影響などの解析が含まれる。
【００４０】
その結果、トランザクションのパラメータ及び記憶装置１２０内のパラメータの状態に関する情報を含む指示された現在のコピーにセキュリティポリシーを適用し、システム１００上の他のパラメータとは別個に各パラメータの変化の影響と、他のパラメータに対する変化の影響との両方をチェックすることにより、評価がなされる。このとき、変更されたパラメータとそれに関連するパラメータの整合性を考慮する。このように、全ての条件の充足及び／又は整合性のチェックが行われる。かかる条件は、そのトランザクションに含まれる変更されたパラメータのチェックを担当するセキュリティポリシーに含まれる。評価の結果は、少なくとも以下の２つ加えられた変更の影響を判断することである。
（１）記憶装置１２０内の関連するパラメータ又は依存するパラメータとの競合発生
（２）システム１００自体のセキュリティ違反
【００４１】
特に、開示されたシステム及び方法の例示的な態様では、監視されるシステム１００のセキュリティレベルに対するパラメータの変化の影響の評価は、同様に、既知の評価方法の１つによって実現される。また、監視対象システムの複雑さ（例：パラメータの数とそれらの間の関係のタイプ）と評価の正確さに関する要件（すなわち、第１種と第２種の誤差が出現する確率）に依存する。したがって、例えば、評価方法は、バイナリ、確率的、相関的及びベクトルを用いた解析のうちの１つである。
【００４２】
解析を実行した後、解析モジュール１３３は、解析の結果を決定モジュール１３７に送信する。かかる結果には、関連するパラメータの不一致が発生した場合、セキュリティレベルの違反や特定された競合の可能性に関する情報が含まれる。
【００４３】
開示されたシステム及び方法のさらに別の変形態様では、行われた変更を伴うトランザクションをインタラクションエージェント１１０がコミットする前に、行われた変更の予備検証が実行される。このため、インタラクションエージェント１１０は、解析モジュール１３３に要求を送信する。かかる要求は、解析のために好ましい形式でフォーマットされ、少なくとも以下のデータのうちの１つを含む。
・アプリケーションの識別子
・アプリケーションによって提示されるキー
・変更されたパラメータ値
解析モジュール１３３は、セキュリティポリシーのデータベースから対応するパラメータ及びそれらの変更にセキュリティポリシーを適用する。適用されるポリシーにしたがって、そのようなパラメータの変更の可能性は、その正確さの観点から検証される。すなわち、新しい値が許容範囲内にあるかどうか、確立された閾値を超えないかどうか、又は指定された値に適合しているかどうかについての検証がなされる。したがって、例えば、ネットワーク内のＩＰアドレスを指定するパラメータは、特定の（与えられた）サブネットマスクに対してのみ対応していなければならない、とするルールがあった場合、変更されたパラメータのＩＰアドレスが他のものと同じサブネットに属しているかどうかを確認するチェックが行われる。予備検証の間、適用されたセキュリティポリシーに起因するルール又は条件が完全には満たされない可能性がある。この場合、解析モジュール１３３により、ポリシーの未充足部分が後でチェックされる。
【００４４】
別の変形態様では、トランザクション（取引ウィンドウ）の形成中のインタラクションエージェント１１０は、セキュリティポリシーからの要件の部分を最初に考慮するようなものを形成する。ここで、かかるセキュリティポリシーは、ストレージのパラメータ値が変更されている。例えば、ユーザのアカウント記録にしたがってトランザクションウィンドウ１１５が形成される。ここで、かかるアカウント記録は、これらのパラメータのみ、対応するアカウントレコードに対して変更可能な範囲のみを含む。したがって、解析モジュール１３３は、関連するパラメータとの一貫性をチェックするだけでよい。
【００４５】
決定モジュール１３７は、解析モジュール１３３から得られた評価の結果の解析に基づいて、記憶装置１２０に含まれるパラメータに対する変更を決定する。かかる決定は、３つの可能な決定のうちの１つである。
（１）セキュリティレベルが低下していないため、トランザクションウィンドウで指定された形式でパラメータを変更する。
（２）指定されたセキュリティレベルを満たすための事前（予備）修正のみを伴うパラメータの変更を行う。かかる修正は、トランザクションウィンドウで指定された変更、及び更されるパラメータに関連するパラメータの両方に影響する可能性がある。
（３）セキュリティレベルが低下するため、対応する変更を行うことはできない。
【００４６】
修正を行う必要がある場合には、最も好ましい修正が決定される。例示的な態様に応じて、条件のリストが決定され、変更の修正を決定するために使用される。一実施形態では、リストはまた、条件の優先順位に関する情報と、行われた変更の可能な修正の解析時に１つの条件又は別の条件を満たす必要性に関する情報も含む。たとえば、条件のリストには以下の条件が含まれる。
・変更されたパラメータ又は関連するパラメータの修正がセキュリティレベルを低下させる場合、変更は行われない。
・トランザクションウィンドウのパラメータに対する変更は、セキュリティレベルが変更されない限り、関連パラメータの変更よりも優先される。つまり、依存パラメータの修正が最初に行われる。
・関連するパラメータを修正するときは、ユーザ自身が変更を加えた場合には修正をユーザに知らせる。
・変更されたパラメータを修正する前に、ユーザの同意を求める。
【００４７】
モジュール１３７による対応する決定を行った後、インタラクションエージェント１１０を介して対応する変更を行うことにより、再構成モジュール１３０は、記憶装置１２０内のパラメータを更新する。かかる変更は、具体的には、全ての変更、修正された変更、又は与えられたレベルのセキュリティに準拠する変更の部分を含む。
【００４８】
開示されたシステム及び方法の実施におけるさらに別の重要な項目は、起動時に監視対象システムの事前決定（行動の予測可能性）をサポートし得る点である。対応するポートに対して行われている接続をチェックするセキュリティポリシーがあると仮定すると、ポリシーは、所定のポートがある範囲にあるべきであることを示し、その範囲は記憶装置１２０に含まれる特定のパラメータから決定される。したがって、監視対象システムが初期化（開始）されるとき、ブート中に可能な限り早く、再構成モジュール１３０が起動されるべきである。当然に、これは記憶装置１２０のロード前に行われる。このため、挙動を予め決定するために、パラメータ記憶装置１２０に含まれる構成パラメータの設定において使用する全てのセキュリティポリシー及び他の監視対象システム１００の利用者（例：外部システム）は、ブート値などの特別な値を持っている。この値は、予め指定され、起動時からパラメータ記憶装置１２０が動作可能な状態になるまで使用される。この後、パラメータ記憶装置１２０内の値に適合するためのブート値を有するパラメータのチェックが行われる。このような手法は、起動時に、また任意の瞬間に監視対象システム１００の状態を解析し、セキュリティレベルに適合しない場合にはそれを修正することを可能にする。
【００４９】
以下に、構成の安全な変更を保証するためのシステムの動作例を示す。例えば、アプリケーションであるソフトウェア１０５がシステム１００内で起動され、その結果、パラメータの変更を実行する必要があると仮定する。アプリケーション１０５は、インタラクションエージェント１１０にアクセスする。ここで、変更を行うためのキーが指示される。それに応答して、インタラクションエージェント１１０は、トランザクションウィンドウ１１５を作成して、パラメータに必要な変更を入力する。トランザクションウィンドウ１１５を形成する際に、インタラクションエージェント１１０は、受信されたキーとアプリケーションの識別子とに基づいて、アプリケーションに対応するパラメータをパラメータ記憶装置１２０内に設定し、これらのパラメータのセキュリティラベルを確認する。次に、インタラクションエージェント１１０は、トランザクションウィンドウ１１５に、アプリケーション１０５に対応するパラメータのみを表示する。アプリケーション１０５は、トランザクションインターフェースのトランザクションウィンドウ１１５に提示されたパラメータの必要な変更を指定する。次に、インタラクションエージェント１１０は、トランザクションをコミットし、記憶装置１２０のパラメータの現在のコピー（スナップショット）を生成する。その後、再構成モジュール１３０、具体的には解析モジュール１３３にディスパッチする。
【００５０】
再構成モジュール１３０は、解析モジュール１３３を利用し、変更が適用されたときにストレージからのパラメータの整合性をチェックすることにより、受信したデータのセキュリティポリシーにしたがって解析を実行する。特に、アプリケーションによって値が変更されたパラメータに関連するパラメータがセキュリティポリシーに準拠するかどうか、及び、セキュリティレベルを維持するためにパラメータを変更する必要があるかどうかをチェックする。次に、再構成モジュール１３０は、モジュール１３７を利用して以下の決定を行う。チェックの実行時に必要な全てのセキュリティポリシーに準拠した変更が行われ、その結果セキュリティレベルが低下しない場合は、再構成モジュール１３０は、かかる変更に応じていかなる訂正もなしにパラメータ記憶装置１２０の構成を更新する決定を下す。そして、再構成モジュール１３０は、インタラクションエージェント１１０にこれを通知する。次に、インタラクションエージェント１１０は、パラメータ記憶装置１２０の更新を実行する。１つのセキュリティポリシーでも遵守されていない場合は、上述の指定された条件リストに基づいて、変更が行われたかどうか、又は依存パラメータの修正が可能かどうかについて検索される。修正バリアントの検索は、セキュリティレベルが低下しないように行われる。可能な修正バリアントを決定した後、再構成モジュール１３０は、これについてインタラクションエージェント１１０に通知し、対応する訂正を行い、記憶装置１２０の構成を更新する。
【００５１】
安全な構成変更を提供するためのシステムの別の動作例では、ユーザによって最初に変更が行われた場合、インタラクションエージェント１１０は、ユーザに可能な修正を通知し、ユーザからの応答を待つ。
インタラクションエージェント１１０は、（選択された修正バリアントを用いて）対応する回答を受信した後、記憶装置１２０内の対応する更新を実行する。
【００５２】
システム１３０が所与のセキュリティレベルを低下させない単一の修正バリアントを発見しなかった場合には、システム１３０は、セキュリティレベルの低下及び監視対象システム１００の動作における起こり得るエラー（脅威）について、インタラクションエージェント１１０に通知する。インタラクションエージェント１１０は、アプリケーションと通信して変更を取り消すと、ユーザと対話する場合にはその旨をユーザに通知する。再構成システム１３０による特定の決定を行った後のインタラクションエージェント１１０の最終的な動作は、完全に自動化され、ユーザに送信された要求を含まないことに留意されたい。
【００５３】
図２は、監視対象システムの構成の安全な変更を提供するためのシステムの実装のさらに別の例を示す。図２の例では、オペレーティングシステムであるカスペルスキーＯＳ２００（システム１００の特定のインスタンスに相当）に対する、構成パラメータを記憶する安全な記憶装置２２０（記憶装置１２０に相当）が実現される。また、再構成モジュール２３０は、再構成モジュール１３０に相当する。この場合、プロセッサの時間を様々なアプリケーション２０５にどのように割り当てるかという問題を解決する必要がある。さらに、アプリケーション２０５により、プロセッサ使用時間に関するパラメータの変更が定期的に行われる。
【００５４】
例えば、カスペルスキーＯＳ（以下、ＫＯＳ）２００には、「システム」、「サービス」、「アプリケーション」の３つのアプリケーション群が含まれているものとする。各グループは、少なくとも１つのアプリケーション２０５を含む。「アプリケーション」グループには、音声認識、顔認識、及び遠隔接続という３つのアプリケーションが含まれている。記憶装置２２０は、これらのアプリケーションの各々によるプロセッサ時間の使用に関するパラメータを含む。すなわち、パラメータ値は、対応するアプリケーションによるプロセッサ時間の使用量を示す。例示的な態様では、以下のキー／値のペアが、記憶装置２２０内のこれらのアプリケーション２０５に含まれていると仮定する。
【表１】
2019036274.tif 000003
【００５５】
このように、そのキーに基づいて、記憶装置２２０内の対応するパラメータがアクセスされる。また、示された値は、プロセッサ時間に対する（１００％のうちの）パーセントで対応する。ここで、かかるパラメータは、対応するアプリケーション２０５によって使用されることができる。したがって、記憶装置は、ＫＯＳ２００の動作中にこれらのパラメータを変更することを可能にする。
【００５６】
したがって、示されたパラメータが変更されたとき、再構成モジュール２３０は、対応するセキュリティポリシーをパラメータ値の変更に適用する。たとえば、少なくとも次の２つのルールを含むセキュリティポリシーが適用される。
（１）「アプリケーション」グループに含まれる各アプリケーションは、ＣＰＵのプロセッサ時間の３３％以上を使用できない。
（２）「アプリケーション」グループ全体がＣＰＵのプロセッサ時間の８０％以上を使用できない。
【００５７】
したがって、提示されたシステムは、変更を加えた場合、以下のように動作する。提示されたアプリケーションの少なくとも１つからプロセッサ時間の使用に関するパラメータを変更する要求を受信したことに応答して、（インタラクションエージェント１１０のような）エージェント２１０は、アプリケーションの構成を変更するためのトランザクションウィンドウ２１５の生成を開始する。例示的な態様では、トランザクションウィンドウは、例えば、アプリケーションが変更できるパラメータのみを含む。このために、エージェント２１０は、アプリケーションに関する情報に基づいて、記憶装置２２０から対応するパラメータを選択する。トランザクションの過程で、アプリケーションは新しい値をパラメータに割り当て、その後、エージェント２１０はトランザクションをコミットし、記憶装置２２０の構成の現在のコピーを生成する。
【００５８】
さらに、別の例示的な態様では、トランザクションの形成中に、エージェント２１０は、再構成システム２３０に予備検証を要求する。システム２３０は、上記のセキュリティポリシーを適用して予備評価を行う。例えば、「アプリケーション」グループ内のアプリケーションに、プロセッサの使用パラメータ値がＣＰＵの３３％よりも多く割り当てていないことを示すルールのみを用いて予備評価が実行される。この後、システム２３０は、そのクエリに応答して評価に関する情報をエージェント２１０に送る。その結果、エージェント２１０は必要な変更を行う。
【００５９】
したがって、エージェント２１０は、行われた変更をトランザクションにコミットし、検証のために、それを再構成モジュール２３０に送信する。再構成モジュール２３０は、セキュリティポリシーにしたがって他の変更されたパラメータと一致するかどうかを含めて、パラメータの変更の正確さをチェックする。
このため、受信したコピーであって、記憶装置２２０の構成の現在のコピーに基づく再構成モジュール２３０は、セキュリティポリシーからルールを適用する。予備検証が実行されている場合、以後、「アプリケーション」グループの全てのアプリケーションの割り当てを加算し、ＣＰＵの８０％を超えないことを検証するルールのみが適用される。その後、記憶装置の構成内のパラメータを更新する決定が下される。
【００６０】
したがって、例えば、アプリケーションのクォータの変更が、３０％、３０％、１０％の割合で行われる場合は、再構成モジュール２３０は、行われた変更の正確さ及び一貫性の決定を行う。エージェント２１０は、このような決定を受信した後、記憶装置に含まれるパラメータの更新を実行する。
【００６１】
再構成モジュール２３０は、３０％、３０％、３０％の割合でアプリケーションの割合の変更が行われた場合、ポリシーが満たされ且つセキュリティレベルが低下しないように修正バリアントを提案するか、又はパラメータ値のそのような変更をブロックする。
【００６２】
図３Ａは、監視対象システムの構成を変更する際に、所定レベルのセキュリティを保証する方法のフローチャートを示す。
【００６３】
パラメータ記憶装置内の構成のパラメータを変更する要求を受信すると、監視対象システムの構成を変更する際に所定レベルのセキュリティを保証する方法は、少なくとも以下を含むいくつかのステップを実行する。
まず、ステップ３１０において、パラメータを変更する要求の解析が行われる。
次に、ステップ３２０において、パラメータ記憶装置内のパラメータに関する現在の情報を考慮してトランザクションウィンドウが形成され、パラメータを変更する。
次に、ステップ３３０において、行われた変更を伴うトランザクションがコミットされる。
次に、ステップ３４０において、パラメータ記憶装置に含まれるパラメータを変更する可能性についての評価が行われる。
そして、ステップ３５０において、パラメータ記憶装置内のパラメータを更新する決定が行われる。
【００６４】
ステップ３１０において、インタラクションエージェント１１０は、コンピュータハードウェア及び／又はソフトウェア１０５のうちの少なくとも１つから、記憶装置１２０に順番に含まれるパラメータの変更に関する情報を含む要求を受信する。この要求は、要求イニシエータ、すなわちアプリケーションなどのハードウェア及び／又はソフトウェア１０５、又はハードウェア及び／又はソフトウェア１０５のうちの１つのユーザとの任意の通信を介して、ユーザにより策定される。その後、インタラクションエージェント１１０は、要求に関する情報を解析し、その間に提示された少なくとも１つのキーを決定する。このキーは、変更が必要なパラメータ記憶装置１２０内のパラメータの正確な識別を可能にする。一変形形態では、キーはパラメータの識別子である。インタラクションエージェント１１０が受信した要求から発見することができる他の情報は、ハードウェア及び／又はソフトウェア１０５又はユーザの識別情報、新しいパラメータに関する情報、又は少なくとも１つのパラメータ又はその値の変更に関する情報である。
【００６５】
ステップ３２０において、インタラクションエージェント１１０は、変更のために対応するイニシエータにアクセス可能なパラメータの変更を行うために、トランザクションウィンドウを要求元のイニシエータに提示する。
修正パラメータは、監視対象システム１００のパラメータであってもよいし、監視対象システム１００の動作能力に影響を与える外部システムのパラメータであってもよい。提示されたトランザクションウィンドウは、変更に関する情報が入力されるダイアログウィンドウの形態、又はインターフェースの形態とすることができる。インターフェースは、パラメータ記憶装置１２０に含まれる全てのパラメータに関する現在の情報、及び識別されたキー又は識別子に合わせて変更可能なパラメータのみに関する現在の情報を含むこのために、例えば、ユーザのパラメータ記憶装置１２０へのアクセスレベルが決定される。アクセスレベルは、パラメータ及び全体としてのパラメータストレージの使用の可能性の種類を示す。使用されるパラメータの種類には、少なくとも読み取り可能性、少なくとも１つのパラメータの変更、少なくともパラメータ値を変更する変更の位置、パラメータの調整範囲を変更すること、新しいパラメータを追加すること、パラメータの削除などが存在する。
【００６６】
ここで、インターフェースに現在の情報を配置するために、ステップ３２０において、インタラクションエージェント１１０は、パラメータ記憶装置１２０との対話を実行する。このとき、キーを利用し、パラメータ記憶装置１２０に含まれるパラメータの状態の現在のコピーを生成する。したがって、パラメータのセキュリティラベルを考慮し、インタラクションエージェント１１０は、キーに基づいてどのパラメータを変更することができるかを決定する。例えば、インタラクションエージェント１１０は、キーがセキュリティラベルの属性を満たすかどうかを判定する。その後、スナップショット方式を使用して、対応するパラメータの現在のコピーを作成する。この方法は、記憶装置の一組のパラメータの静的状態を描写することを可能にする。したがって、現在のコピーは、解析のための優先タイプのデータセットを表す。
【００６７】
特定の要求に対してダイアログウィンドウが形成され、他の全てのパラメータを有するトランザクションインターフェースが形成される場合、インタラクションエージェント１１０及びトランザクションウィンドウの例示的な態様は、中間バリアントを可能にすることもできる。さらに、例示的な態様は、いくつかのパラメータとのトランザクションインターフェースを提供する。
【００６８】
ステップ３３０において、ハードウェア及び／又はソフトウェア１０５によって入力されたときに変更されるパラメータに関する情報、又は対応するハードウェア及び／又はソフトウェア１０５を介してユーザから取得することができる情報に応答して、インタラクションエージェント１１０は、パラメータに加えられた変更を用いてトランザクションをコミットする。そのような情報としては、例えば、パラメータの新しい値、パラメータの削除、又は新しいパラメータの追加に関するデータが挙げられる。その後、パラメータ記憶装置１２０内の全てのパラメータの状態に関するデータの現在のコピーと共に、トランザクションは、再構成モジュール１３０、具体的には解析モジュール１３３に送信される。現在のコピーがステップ３２０で形成されない場合、又はいくつかのパラメータについてのみ形成される場合、このステップ３３０において、パラメータ記憶装置１２０に含まれる全てのパラメータの現在のコピーが形成される。このために、インタラクションエージェント１１０は、上述したものと同様の動作を実行するが、全てのパラメータの状態の現在のコピーを形成する必要性を考慮に入れている。
【００６９】
ステップ３４０において、再構成モジュール１３０は、解析モジュール１３３を利用して、パラメータに対する対応する変更の作成の評価を実行する。かかる評価は、パラメータの状態について受信された現在のコピーに基づいて、セキュリティポリシーのデータベース１３５からの対応するセキュリティポリシーを利用して実行される。したがって、再構成モジュール１３０は、それらに関連する他のパラメータに加えられた変更の影響を、パラメータ記憶装置１２０及び監視対象システム１００の所与のセキュリティレベルの違反に基づいて解析する。かかる解析は、セキュリティポリシーに含まれているルール（条件）への適合性の観点から、変更されるパラメータ及びこれらに関連するパラメータの一貫性をチェックすることを前提とする。解析を実行した後、解析モジュール１３３は、解析の結果を決定モジュール１３７に提示する。関連パラメータの不一致が生じた場合には、かかる結果には、セキュリティレベルの潜在的な違反（又は低下）に関する情報、及び／又は識別された競合が含まれる。また、特定の場合には、識別された競合を排除するための修正バリアントに関する情報も含まれる。
【００７０】
ステップ３５０において、決定モジュール１３７は、パラメータ記憶装置１２０におけるパラメータの更新を決定する。決定は、得られた結果の解析に基づいて行われる。競合が検出されなかった場合、システムはセキュリティレベルが低下していないことを認識する。そうでない場合、つまり、少なくとも１つの競合が検出された場合、パラメータの変更時にセキュリティレベルが下げられる。解析が完了すると、以下の決定の少なくとも１つが行われる。
（１）セキュリティレベルが低下しないため、ストレージのパラメータを変更する。
（２）セキュリティレベルが低下するため、変更をキャンセルする。
【００７１】
この方法の特定の例示的な態様では、ステップ３５０は、実行可能な修正を決定するために、識別された競合の追加解析を含む以下の一連のステップの少なくとも一方を含む。ここで、かかる修正は、変更されたパラメータ、又は、所定のセキュリティレベルを満たすようにパラメータ記憶装置１２０から読み出された関連パラメータの少なくとも一方に対する修正を含む。したがって、ステップ３５５において、ステップ３４０で得られた結果が解析される。競合が発見されなかった場合、上述したように、変更を行う決定が行われ、これがステップ３９０に送られる。そうでない場合、つまり、競合が識別された場合、決定モジュール１３７は、少なくともセキュリティレベルの低下がないことを保証する可能性のある修正バリアントを解析モジュール１３３に求める。ステップ３６０において、解析モジュール１３３は、訂正バリアントをソートし、決定モジュール１３７に送信する。ステップ３６５において、モジュール１３７は、所与のセキュリティレベルを満足するように、パラメータに対する可能な変更のための修正を決定する。ここで、かかる修正には、トランザクションウィンドウで指定された変更と、変更されるパラメータに関連するパラメータの両方が含まれる。このため、モジュール１３７は条件のリストを使用し、それにしたがって、受け取ったバリアントから修正を行う可能性を決定する。その後、モジュール１３７は、インタラクションエージェント１１０を介してユーザに対応するバリアントを提供するか、又は、独立して変更を修正又はブロックする決定を下す。これらは通常、ハードウェア及び／又はソフトウェア１０５によって変更を加える場合に実行される。したがって、修正変形が存在する場合のステップ３７０において、再構成モジュール１３０は、好ましい変形例に関してユーザの応答を待機し且つ受信し、その情報をインタラクションエージェント１１０に送信する。ステップ３８０において、修正バリアントが存在しない場合、又はバリアントのいずれもが条件リストに対応しない場合、変更のブロックが行われる。したがって、インタラクションエージェント１１０が修正に関する情報を受信した場合、エージェントは対応する変更を行い、ステップ３９０において、パラメータ記憶装置におけるパラメータの更新を実行する。選択された補正バリアントを入力した後、ステップ３５５において、追加の検証も可能である。
【００７２】
図３Ｂは、監視対象システムの構成を変更する際に所定レベルのセキュリティを保証する例示的な方法のさらに別のフローチャートを示す。監視されているシステムの構成を変更したときに所定のレベルのセキュリティを確保する方法は、パラメータ記憶装置内の構成パラメータを変更する要求を受信したときに、図３Ａに関して上述したのと同じステップ３１０，３２０，３３０，３４０，３５０，３８０，３９０を実行することを理解されたい。しかし、さらに、例示的な態様では、ステップ３２０において、変更が許可されたパラメータのみを含むトランザクションウィンドウが形成され、ステップ３２５において、トランザクションウィンドウに入力された変更に対して予備検証が行われる。検証には以下が含まれる。インタラクションエージェント１１０は、解析モジュール１３３の要求を行う。ここで、前記要求は、解析のために好ましい形式で公式化され、少なくとも以下のデータを含む。
・アプリケーションの識別子
・アプリケーションによって提示されるキー
・変更されたパラメータ値
解析モジュール１３３は、セキュリティポリシーデータベース１３５内のセキュリティポリシーを用い、受信した変更を解析する。解析中、正確さを考慮し、パラメータに対する変更を行う可能性を検証する。すなわち、新しい値が許容範囲内にあるかどうか、それが確立された閾値を超えているかどうか、指定された値に準拠しているか、について検証する。予備検証の間に、受信したセキュリティポリシーのルールや条件が完全に実行されていない可能性がある。この場合、実行されなかったポリシー条件は、ステップ３４０において、解析モジュール１３３によって後でチェックされる。
【００７３】
さらに、ステップ３４０では、ステップ３２５で使用されるセキュリティポリシーを満たさない条件にしたがって、他の変更されていないパラメータとの一貫性についてのみ検証が行われる。その後、ステップ３５０において、パラメータ記憶装置の構成におけるパラメータの更新が決定される。決定に基づいて、インタラクションエージェント１１０は、ステップ３８０又はステップ３９０に移行する。したがって、ステップ３８０において、修正バリアントが存在しないか、又はバリアントがいずれも条件リストに対応しない場合、変更のブロックが行われる。ステップ３９０において、インタラクションエージェント１１０は、修正に関する情報を受信した場合に対応する変更を行い、パラメータ記憶装置自体のパラメータの更新を実行する。
【００７４】
図４は、開示されたシステム及び方法が例示的な態様にしたがって実装され得る汎用コンピュータシステム（パーソナルコンピュータ又はサーバであり得る）の例を示す。図示されるように、コンピュータシステム２０は、プロセッサ２１、システムメモリ２２及びプロセッサ２１に関連するメモリを含む様々なシステム構成要素を接続するシステムバス２３を含む。システムバス２３は、バスメモリ又はバスメモリコントローラ、周辺バス、及び他のバスアーキテクチャと相互作用することができるローカルバスを含むことができる。これは、従来技術から公知の任意のバス構造のように実現される。システムメモリは、読み出し専用メモリ（ＲＯＭ）２４及びランダムアクセスメモリ（ＲＡＭ）２５を含む。基本入出力システム（ＢＩＯＳ）２６は、ＲＯＭ２４を使用してオペレーティングシステムをロードするとき等において、パーソナルコンピュータ２０の要素間で情報の伝達を保証するための基本手順を含むことができる。
【００７５】
パーソナルコンピュータ２０はまた、データの読み書きのためのハードディスク２７、取り外し可能な磁気ディスク２９の読み書きのための磁気ディスクドライブ２８、及びＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、その他の光学メディア等の光学ディスク３１の読み書きのための光学式ドライブ３０を含む。ハードディスク２７、磁気ディスクドライブ２８、及び光学式ドライブ３０は、ハードディスクインターフェース３２、磁気ディスクインターフェース３３、及び光学式のドライブインターフェース３４それぞれを横切るシステムバス２３と接続される。ドライブ及び対応するコンピュータ情報メディアは、コンピュータ命令、データ構造体、プログラムモジュール、及びパーソナルコンピュータ２０の他のデータを格納するための電源非依存のモジュールである。
【００７６】
本開示は、ハードディスク２７、取り外し可能な磁気ディスク２９及び取り外し可能な光学ディスク３１を使用するシステムの実装を提供するが、他のタイプのコンピュータ情報媒体５６を使用することが可能であることを理解されたい。他のタイプの媒体としては、コンピュータによって読み取り可能な形式でデータを格納することができる媒体（例：ソリッドステートドライブ、フラッシュメモリカード、デジタルディスク、ランダムアクセスメモリ（ＲＡＭ））が挙げられる。また。これらはコントローラ５５を介してシステムバス２３に接続されている。
【００７７】
コンピュータ２０は、記録されたオペレーティングシステム３５が保持されるファイルシステム３６と、追加のプログラムアプリケーション３７と、他のプログラムモジュール３８と、プログラムデータ３９とを有する。ユーザは、入力装置（キーボード４０、マウス４２）を使用して、パーソナルコンピュータ２０にコマンド及び情報を入力することができる。入力装置として、マイクロホン、ジョイスティック、ゲームコントローラ、スキャナなどの他の入力装置（図示せず）を使用することができる。このような入力デバイスは、通常、シリアルポート４６を介してコンピュータシステム２０に接続され、シリアルポート４６はシステムバスに接続される。ここで、パラレルポート、ゲームポート、又はユニバーサルシリアルバス（ＵＳＢ）等を介する他の方法で接続することもできる。モニタ４７又は他のタイプのディスプレイデバイスもまた、ビデオアダプタ４８等のインターフェースを介してシステムバス２３に接続することができる。モニタ４７に加えて、パーソナルコンピュータは、ウドスピーカ、プリンタ等の他の周辺出力デバイス（図示せず）に接続されてもよい。
【００７８】
パーソナルコンピュータ２０は、１又は複数のリモートコンピュータ４９とのネットワーク接続を通じて、ネットワーク環境で操作することができる。リモートコンピュータ（又はコンピュータ）４９は、パーソナルコンピュータ２０の性質として説明した上述の要素のほとんど又は全てを有するパーソナルコンピュータ又はサーバであってもよい。ルータ、ネットワークステーション、ピア接続の機器、又は他のネットワークノード等の他の機器もまた、かかるコンピュータネットワークで存在し得る。  
【００７９】
ネットワーク接続は、（有線又は無線ネットワーク等の）ローカルエリアコンピュータネットワーク（ＬＡＮ）５０及びワイドエリアコンピュータネットワーク（ＷＡＮ）を形成することができる。そのようなネットワークは、企業のコンピュータネットワーク及び社内ネットワークで利用され、それらはたいていにインターネットにアクセスすることができる。ＬＡＮ又はＷＡＮネットワークにおいて、コンピュータシステム２０は、ネットワークアダプタ又はネットワークインターフェース５１と接続可能なローカルエリアネットワーク５０に接続されている。ネットワークが用いられる時には、パーソナルコンピュータ２０は、インターネット等のワイドエリアコンピュータネットワークによる通信を実現するために、モデム５４又はその他のモジュールを使用することができる。内部又は外部の機器であるモデム５４は、シリアルポート４６によりシステムバス２３と接続される。ここで、かかるネットワーク接続は単なる例示であり、ネットワークの正確な構成を示すものではない。すなわち、現実には、（Ｂｌｕｅｔｏｏｔｈ等の）技術通信モジュールにより、あるコンピュータと他のコンピュータとの接続を確立する他の方法が存在する。
【００８０】
様々な実施形態において、ハードウェア、ソフトウェア、ファームウェア、又はこれらのあらゆる組み合わせにおいて、ここで説明されたシステム及びメソッドを実施し得る。ソフトウェアにおいて実装される場合は、メソッドは不揮発性コンピュータ可読メディアの１又は複数の指示又はコードとして保存され得る。コンピュータ可読メディアは、データストレージを含む。あくまでも例であり限定するものではないが、そのようなコンピュータ可読メディアは、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭ、フラッシュメモリ、若しくは他のタイプの電気、磁気、光学式の記憶媒体、又はその他のメディアであってもよい。すなわち、これらによって指示又はデータ構造体という形で、要求されたプログラムコードを運ぶか又は保存することができ、汎用コンピュータのプロセッサによってアクセスすることができる。
【００８１】
なお、実施形態の通常の機能のうちの全てをここで開示しているわけではない。本開示のいずれの実施形態を開発する場合においてでも、開発者の具体的な目標を達成するためには多くの実施に係る特別な決定が必要であり、これらの具体的な目標は実施形態及び開発者ごとに異なることに留意されたし。そのような開発努力は、複雑で時間を要するものであるが、本開示の利益を享受し得る当業者にとってはエンジニアリングの日常であると理解されたい。
【００８２】
さらに、本明細書で使用される用語又は表現は、あくまでも説明のためであり、限定するものではない。つまり、関連技術の熟練の知識と組み合わせて、本明細書の用語又は表現は、ここに示される教示及び指針に照らして当業者によって解釈されるべきであると留意されたし。明示的な記載がない限り、明細書又は特許請求の範囲内における任意の用語に対して、珍しい又は特別な意味を帰することは意図されていない。本明細書で開示された様々な態様は、例示のために本明細書に言及した既知のモジュールの、現在及び将来の既知の均等物を包含する。さらに、態様及び用途を示し、説明してきたが、本明細書に開示された発明の概念から逸脱することなく、上述したよりも多くの改変が可能であることが、この開示の利益を有する当業者には明らかであろう。
【００８３】
本明細書で開示される様々な態様は、説明のために本明細書で言及される既知のモジュールの、現在及び将来の既知の均等物を包含する。さらに、実施形態及び適用が示されているが、本開示の利益を有する当業者には、本明細書に開示された発明の概念から逸脱することなく上記より多くの変更が可能であることが明らかであろう。
【図１】
2019036274.tif 000004
【図２】
2019036274.tif 000005
【図３Ａ】
2019036274.tif 000006
【図３Ｂ】
2019036274.tif 000007
【図４】
2019036274.tif 000008
【外国語明細書】
2019036274000001.pdf