JP2018509717A - ソフトウェアによって定義されたインフラストラクチャ内のセキュリティのための方法、コンピュータ・プログラム、コンピュータ・システム - Google Patents

ソフトウェアによって定義されたインフラストラクチャ内のセキュリティのための方法、コンピュータ・プログラム、コンピュータ・システム Download PDF

Info

Publication number
JP2018509717A
JP2018509717A JP2017549186A JP2017549186A JP2018509717A JP 2018509717 A JP2018509717 A JP 2018509717A JP 2017549186 A JP2017549186 A JP 2017549186A JP 2017549186 A JP2017549186 A JP 2017549186A JP 2018509717 A JP2018509717 A JP 2018509717A
Authority
JP
Japan
Prior art keywords
security
resources
software
container
computer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2017549186A
Other languages
English (en)
Other versions
JP6730997B2 (ja
Inventor
リ、チュン−シェン
ペンダラキス、ディミトリオス
ラーオ、ジョシュラ
ホグストロム、マット、リチャード
ブレック、ブラッド
ラトナパルキ、ラダ
フランケ、フベルトゥス
パッタナイク、プラタップ、チャンドラ
ウィリアムズ、マイケル、デイヴィッド
クラウダー、スコット
ハリム、ナギー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2018509717A publication Critical patent/JP2018509717A/ja
Application granted granted Critical
Publication of JP6730997B2 publication Critical patent/JP6730997B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45587Isolation or security of virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/034Test or assess a computer or a system

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Debugging And Monitoring (AREA)

Abstract

【課題】ソフトウェア定義インフラストラクチャ内のセキュリティを提供する。【解決手段】ソフトウェア定義環境内のワークロードおよびそのワークロードに対応するリソースのセットを表すセキュリティ・コンテナを確立することと、セキュリティ・コンテナのセキュリティ基準のセットを決定することと、セキュリティ基準のセットに少なくとも部分的に基づいて、セキュリティ・イベントについてワークロードおよびリソースのセットを監視することと、セキュリティ・イベントの識別に応答して、1つまたは複数のセキュリティ・メカニズムを調整することとを含んでいる方法およびシステムが存在する。監視するステップおよび調整するステップは、ソフトウェア定義環境内で処理される。【選択図】図4

Description

本発明は、一般にソフトウェアによって定義された環境(SDE)の分野に関し、より詳細にはSDE内のセキュリティに関する。
企業は、ミッションクリティカルなアプリケーションおよび性能に敏感なアプリケーションを、共有されたインフラストラクチャおよびクラウド上の高度に仮想化された環境に移行することに、ますます積極的になっている。モバイル・アプリケーション、ソーシャル・アプリケーション、および分析アプリケーションは、多くの場合、共有されたインフラストラクチャおよびクラウド上で直接開発され、運用される。現在の仮想化ソリューションおよびクラウド・ソリューションは、それらの容量に関して、計算リソース、ストレージ・リソース、およびネットワーク・リソースの基本的な抽象化のみを可能にする。このアプローチは、多くの場合、これらのリソースの抽象化を簡略化するために、基盤になるシステム・アーキテクチャの標準化を必要とする。さらに、ワークロード最適化システムのアプローチは、基盤になるシステム・アーキテクチャへの(コンパイラを含めた)ワークロードの緊密な統合に依存する。このアプローチは、必要な労働集約的最適化を犠牲にして、各マイクロアーキテクチャによって、およびシステム・レベルの能力によって提供される特殊能力の直接的活用を可能にする。
ソフトウェアによって定義された環境(SDE)では、同じ物理的システム内で多くの仮想「システム」が作成される場合があり、または複数の物理的システムが1つの仮想システム内で仮想化される場合があり、あるいはその両方が行われる場合がある。ソフトウェアによって定義された「システム」は、絶えず最初から作成され、絶えず進化し、最終的に破壊されることが可能であるため、論理的リソースと物理的リソースの間には、永続的な関連(または結合)は存在しない。
フレームワーク(本明細書では「フィスター・フレームワーク(Pfisterframework)」と呼ばれる)は、特定のアプリケーションのワークロードの特徴を表すために使用されてきた。フィスター・フレームワークは、「スレッド競合」対「データ競合」を考慮する。これを考慮して、次の4つのワークロードのカテゴリが定義される。(i)共有されたデータまたはキューを更新する混合ワークロード(企業のソフトウェア(アプリケーションや統合ミドルウェアとしても知られている)など)、(ii)高度にスレッド化されたアプリケーション、(iii)分析を伴う並列データ構造(クラスタ計算環境上のデータセットのストレージおよび大規模処理のためのフレームワークなど)、および(iv)小規模な個別のアプリケーション
本発明が解決しようとする課題は、ソフトウェアによって定義されたインフラストラクチャ内のセキュリティのメカニズムを調整することである。
本発明の第1の態様によれば、ソフトウェアによって定義された環境内のワークロードおよびそのワークロードに対応するリソースのセットを表すセキュリティ・コンテナを確立するステップと、セキュリティ・コンテナのセキュリティ基準のセットを決定するステップと、セキュリティ基準のセットに少なくとも部分的に基づいてセキュリティ・イベントについてワークロードおよびリソースのセットを監視するステップと、セキュリティ・イベントの識別に応答して、1つまたは複数のセキュリティ・メカニズムを調整するステップとを含んでいる方法が存在する。監視するステップおよび調整するステップは、ソフトウェアによって定義された環境内で処理される。
本発明の第2の態様によれば、ソフトウェアによって定義された環境内のワークロードおよびそのワークロードに対応するリソースのセットを表すセキュリティ・コンテナを確立することと、セキュリティ・コンテナのセキュリティ基準のセットを決定することと、セキュリティ基準のセットに少なくとも部分的に基づいてセキュリティ・イベントについてワークロードおよびリソースのセットを監視することと、セキュリティ・イベントの識別に応答して、1つまたは複数のセキュリティ・メカニズムを調整することとを行うようにプログラムされたプログラム命令が記憶されたコンピュータ可読記憶媒体を含んでいるコンピュータ・プログラム製品が存在する。
本発明の第3の態様によれば、プロセッサ・セットおよびコンピュータ可読記憶媒体を含んでいるコンピュータ・システムが存在する。プロセッサ・セットは、コンピュータ可読記憶媒体に記憶されたプログラム命令を実行するように構造化され、配置され、接続され、またはプログラムされ、あるいはこれらの組合せが行われ、プログラム命令は、ソフトウェアによって定義された環境内のワークロードおよびそのワークロードに対応するリソースのセットを表すセキュリティ・コンテナを確立することと、セキュリティ・コンテナのセキュリティ基準のセットを決定することと、セキュリティ基準のセットに少なくとも部分的に基づいてセキュリティ・イベントについてワークロードおよびリソースのセットを監視することと、セキュリティ・イベントの識別に応答して、1つまたは複数のセキュリティ・メカニズムを調整することとを行うようにプログラムされたプログラム命令を含む。
ここで、添付の図面を例として参照し、本発明の実施形態について説明する。
本発明に従うシステムの第1の実施形態において使用されるクラウド・コンピューティング・ノードを表す図である。 本発明に従うクラウド・コンピューティング環境の実施形態(「第1の実施形態のシステム」とも呼ばれる)を表す図である。 第1の実施形態のシステムにおいて使用される抽象モデル・レイヤを表す図である。 第1の実施形態のシステムによって少なくとも部分的に実行される第1の実施形態の方法を示すフローチャートである。 第1の実施形態のシステムの機械論理(例えば、ソフトウェア)部分を示すブロック図である。 本発明に従うシステムの第2の実施形態を示すブロック図である。 第2の実施形態のシステムの機械論理(例えば、ソフトウェア)部分を示すブロック図である。
ソフトウェアによって定義された環境のエンド・ツー・エンドのセキュリティは、ワークロード・リソースの自己記述コンテナを確立することによって提供される。セキュリティ・ポリシーの実施メカニズムは、ソフトウェアによって定義された環境内で開発、配置、および運用される。本発明は、システム、方法、またはコンピュータ・プログラム製品、あるいはこれらの組合せである。コンピュータ・プログラム製品は、プロセッサに本発明の態様を実行させるためのコンピュータ可読プログラム命令を含んでいる1つまたは複数のコンピュータ可読記憶媒体を含む。
コンピュータ可読記憶媒体は、命令実行デバイスによって使用するための命令を保持する、または記憶する、あるいはその両方を行う有形のデバイスである。コンピュータ可読記憶媒体は、例えば、電子ストレージ・デバイス、磁気ストレージ・デバイス、光ストレージ・デバイス、電磁ストレージ・デバイス、半導体ストレージ・デバイス、またはこれらの任意の適切な組合せにすることができるが、これらに限定されない。コンピュータ可読記憶媒体のさらに具体的な例の非網羅的リストは、ポータブル・コンピュータ・ディスケット、ハード・ディスク、ランダム・アクセス・メモリ(RAM:random access memory)、読み取り専用メモリ(ROM:read-onlymemory)、消去可能プログラマブル読み取り専用メモリ(EPROM:erasableprogrammable read-only memoryまたはフラッシュ・メモリ)、スタティック・ランダム・アクセス・メモリ(SRAM:static random access memory)、ポータブル・コンパクト・ディスク読み取り専用メモリ(CD−ROM:compact disc read-only memory)、デジタル多用途ディスク(DVD:digital versatile disk)、メモリ・スティック、フロッピー(R)・ディスク、パンチカードまたは命令が記録されている溝の中の隆起構造などの機械的にエンコードされるデバイス、およびこれらの任意の適切な組合せを含む。本明細書において使用されているコンピュータ可読記憶媒体は、本質的に、電波またはその他の自由に伝搬する電磁波、導波管またはその他の送信媒体を伝搬する電磁波(例えば、光ファイバ・ケーブルを通過する光パルス)、あるいはワイヤを介して送信される電気信号などの一時的信号であると解釈されるべきではない。
本明細書に記載されたコンピュータ可読プログラム命令は、一部の実施形態に従って、コンピュータ可読記憶媒体から各コンピューティング・デバイス/処理デバイスへ、またはネットワーク(例えば、インターネット、ローカル・エリア・ネットワーク、広域ネットワーク、または無線ネットワークあるいはこれらの組合せ)を介して外部コンピュータまたは外部ストレージ・デバイスへダウンロードされる。このネットワークは、銅伝送ケーブル、光伝送ファイバ、無線送信、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータ、またはエッジ・サーバあるいはこれらの組合せを備える。各コンピューティング・デバイス/処理デバイス内のネットワーク・アダプタ・カードまたはネットワーク・インターフェイスは、コンピュータ可読プログラム命令をネットワークから受信し、それらのコンピュータ可読プログラム命令を各コンピューティング・デバイス/処理デバイス内のコンピュータ可読記憶媒体に記憶するために転送する。
本発明の処理を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セット・アーキテクチャ(ISA:instruction-set-architecture)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、あるいは、Smalltalk(R)、C++などのオブジェクト指向プログラミング言語、および「C」プログラミング言語または同様のプログラミング言語などの従来の手続き型プログラミング言語を含む1つまたは複数のプログラミング言語の任意の組合せで記述されたソース・コードまたはオブジェクト・コードにすることができる。コンピュータ可読プログラム命令は、ユーザのコンピュータ上で全体的に実行すること、ユーザのコンピュータ上でスタンドアロン・ソフトウェア・パッケージとして部分的に実行すること、ユーザのコンピュータ上およびリモート・コンピュータ上でそれぞれ部分的に実行すること、あるいはリモート・コンピュータ上またはサーバ上で全体的に実行することができる。後者のシナリオでは、リモート・コンピュータを、ローカル・エリア・ネットワーク(LAN:local area network)または広域ネットワーク(WAN:wide areanetwork)を含む任意の種類のネットワークを介してユーザのコンピュータに接続することができ、または接続を、(例えば、インターネット・サービス・プロバイダを使用してインターネットを介して)外部コンピュータに対して行うことができる。一部の実施形態では、本発明の態様を実行するために、例えばプログラマブル論理回路、フィールドプログラマブル・ゲート・アレイ(FPGA:field-programmable gate arrays)、またはプログラマブル・ロジック・アレイ(PLA:programmable logic arrays)を含む電子回路は、コンピュータ可読プログラム命令の状態情報を利用することによって、電子回路をカスタマイズするためのコンピュータ可読プログラム命令を実行できる。
本発明の態様は、本明細書において、本発明の実施形態に記載された方法、装置(システム)、およびコンピュータ・プログラム製品のフローチャート図またはブロック図あるいはその両方を参照して説明される。フローチャート図またはブロック図あるいはその両方の各ブロック、ならびにフローチャート図またはブロック図あるいはその両方に含まれるブロックの組合せは、コンピュータ可読プログラム命令によって実装されると理解されるであろう。
これらのコンピュータ可読プログラム命令は、コンピュータまたはその他のプログラマブル・データ処理装置のプロセッサを介して実行される命令が、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックにおいて規定された機能/動作を実装するための手段を構築するように、本発明の一部の実施形態に従って、汎用コンピュータ、専用コンピュータ、またはその他のプログラマブル・データ処理装置のプロセッサに提供されてマシンを作り出すものであってよい。このコンピュータ可読プログラム命令は、命令が記憶されたコンピュータ可読記憶媒体が、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックにおいて規定された機能/動作の態様を実装する命令を含んでいる製品を備えるように、コンピュータ可読記憶媒体に記憶され、コンピュータ、プログラマブル・データ処理装置、またはその他のデバイスあるいはこれらの組合せに特定の方法で機能するように指示することができるものであってもよい。
コンピュータ可読プログラム命令は、コンピュータ、その他のプログラマブル装置、またはその他のデバイス上で実行される命令が、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックにおいて規定された機能/動作を実装するように、コンピュータ実装プロセスを生成するべく、本発明の一部の実施形態に従って、コンピュータ、その他のプログラマブル・データ処理装置、またはその他のデバイス上にロードされ、コンピュータ、その他のプログラマブル装置、あるいはその他のデバイス上で一連の動作可能なステップを実行させるものであってもよい。
図内のフローチャートおよびブロック図は、本発明のさまざまな実施形態に記載されているシステム、方法、およびコンピュータ・プログラム製品の可能な実装のアーキテクチャ、機能、および処理を示す。これに関連して、フローチャートまたはブロック図内の各ブロックは、規定された論理機能を実装するための1つまたは複数の実行可能な命令を備える、命令のモジュール、セグメント、または部分を表す。一部の代替の実装では、ブロックに示された機能は、図に示された順序とは異なる順序で発生する。例えば、連続して示された2つのブロックは、実際には、含まれている機能に応じて、実質的に同時に実行されるか、または場合によっては逆の順序で実行されてもよい。ブロック図またはフローチャート図あるいはその両方の各ブロック、ならびにブロック図またはフローチャート図あるいはその両方に含まれるブロックの組合せは、一部の実施形態において、規定された機能または動作を実行するか、または専用ハードウェアとコンピュータ命令の組合せを実行する専用ハードウェアベースのシステムによって実装されるということにも注意する。
本開示にはクラウド・コンピューティングの詳細な説明が含まれているが、本明細書で示された教示の実装は、クラウド・コンピューティング環境に限定されないと、あらかじめ理解される。本発明の実施形態は、既知または今後開発される他のいかなる種類のコンピューティング環境と組み合わせても実装できる。
クラウド・コンピューティングは、構成可能な計算リソース(例えば、ネットワーク、ネットワーク帯域幅、サーバ、処理、メモリ、ストレージ、アプリケーション、仮想マシン、およびサービス)の共有プールへの便利なオンデマンドのネットワーク・アクセスを可能にするためのサービス提供モデルであり、管理上の手間とサービス・プロバイダとのやりとりを最小限に抑えて、それらのリソースが迅速にプロビジョニングおよび解放される。本発明の一部の実施形態では、このクラウド・モデルは、少なくとも5つの特徴、少なくとも3つのサービス・モデル、および少なくとも4つの配置モデルを含む。
特徴は、次のとおりである。
オンデマンドのセルフ・サービス:クラウドの利用者は、サーバの時間、ネットワーク・ストレージなどのコンピューティング能力を一方的に、サービス・プロバイダとの人間的なやりとりを必要とせず、必要に応じて自動的にプロビジョニングする。
幅広いネットワーク・アクセス:能力は、ネットワークを経由して利用可能であり、標準的なメカニズムを使用してアクセスできるため、異種のシン・クライアントまたはシック・クライアント・プラットフォーム(例えば、携帯電話、ラップトップ、PDA)による利用を促進する。
リソース・プール:プロバイダの計算リソースは、プールされ、マルチテナント・モデルを使用して複数の利用者に提供される。さまざまな物理的および仮想的リソースが、要求に従って動的に割り当てられ、および再度割り当てられる。場所に依存しないという感覚があり、利用者は通常、提供されるリソースの正確な場所に関して管理することも知ることもないが、さらに高い抽象レベル(例えば、国、州、データセンタ)では、場所を指定できる場合がある。
迅速な順応性:能力は、迅速かつ柔軟に、場合によっては自動的にプロビジョニングされ、素早くスケールアウトし、迅速に解放されて素早くスケールインする。プロビジョニングに使用できる能力は、利用者には、多くの場合、無制限に見え、任意の量をいつでも購入できる。
測定されるサービス:クラウド・システムは、計測機能を活用することによって、サービスの種類に適した抽象レベル(例えば、ストレージ、処理、帯域幅、およびアクティブなユーザのアカウント)で、リソースの使用を自動的に制御および最適化する。リソースの使用量に対して、監視、制御、またはレポート、あるいはこれらの組合せが実行され、利用されるサービスのプロバイダと利用者の両方に透明性を提供する。
サービス・モデルは、次のとおりである。
SaaS(Software as a Service):利用者に提供される能力は、クラウド・インフラストラクチャ上で稼働しているプロバイダのアプリケーションの利用である。それらのアプリケーションは、Webブラウザ(例えば、Webベースの電子メール)などのシン・クライアント・インターフェイスを介して、さまざまなクライアント・デバイスからアクセスできる。利用者は、ネットワーク、サーバ、オペレーティング・システム、ストレージ、または個々のアプリケーション機能を含む基盤になるクラウド・インフラストラクチャを、限定的なユーザ固有のアプリケーション構成設定を行う可能性を除き、管理することも制御することもない。
PaaS(Platform as a Service):利用者に提供される能力は、プロバイダによってサポートされるプログラミング言語およびツールを使用して作成された、利用者によって作成または取得されたアプリケーションをクラウド・インフラストラクチャに配置することである。利用者は、ネットワーク、サーバ、オペレーティング・システム、またはストレージを含む基盤になるクラウド・インフラストラクチャを管理することも制御することもないが、配置されたアプリケーション、および場合によってはアプリケーション・ホスティング環境の構成を制御することができる。
IaaS(Infrastructure as a Service):利用者に提供される能力は、処理、ストレージ、ネットワーク、およびその他の基本的な計算リソースのプロビジョニングであり、利用者は、一部の実施形態において、オペレーティング・システムまたはアプリケーションあるいはその両方を含む任意のソフトウェアを配置して実行できる。利用者は、基盤になるクラウド・インフラストラクチャを管理することも制御することもないが、オペレーティング・システム、ストレージ、および配置されたアプリケーションを制御することができ、場合によっては、選択されたネットワーク・コンポーネント(例えば、ホスト・ファイアウォール)を限定的に制御できる。
配置モデルは、次のとおりである。
プライベート・クラウド:このクラウド・インフラストラクチャは、組織のためにのみ運用される。これは、組織またはサード・パーティによって管理され、構内または構外に存在する。
コミュニティ・クラウド:このクラウド・インフラストラクチャは、複数の組織によって共有され、関心事(例えば、任務、セキュリティ要件、ポリシー、適合性に関する考慮事項)を共有している特定のコミュニティをサポートする。これは、組織またはサード・パーティによって管理され、構内または構外に存在する。
パブリック・クラウド:このクラウド・インフラストラクチャは、一般ユーザまたは大規模な業界団体が使用できるようになっており、クラウド・サービスを販売する組織によって所有される。
ハイブリッド・クラウド:このクラウド・インフラストラクチャは、データとアプリケーションの移植を可能にする標準化された技術または独自の技術(例えば、クラウド間の負荷を平衡させるためのクラウド・バースト)によって固有の実体を残したまま互いに結合された2つ以上のクラウド(プライベート、コミュニティ、またはパブリック)の複合である。
クラウド・コンピューティング環境は、ステートレス、疎結合、モジュール性、および意味的相互運用性に重点を置いたサービス指向の環境である。クラウド・コンピューティングの中心になるのは、相互接続されたノードのネットワークを備えるインフラストラクチャである。
ここで図1を参照すると、クラウド・コンピューティング・ノードの例の概略図が示されている。クラウド・コンピューティング・ノード10は、適切なクラウド・コンピューティング・ノードの一例に過ぎず、本明細書に記載された本発明の実施形態の使用または機能の範囲に関して、いかなる限定も示唆することを意図されていない。いずれにせよ、クラウド・コンピューティング・ノード10は、前述した任意の機能を実装すること、または実行すること、あるいはその両方を行うことができる。
クラウド・コンピューティング・ノード10内には、他の多数の汎用または専用のコンピューティング・システム環境または構成で運用できるコンピュータ・システム/サーバ12が存在する。コンピュータ・システム/サーバ12での使用に適した既知のコンピューティング・システム、環境、または構成、あるいはその組合せの例は、パーソナル・コンピュータ・システム、サーバ・コンピュータ・システム、シン・クライアント、シック・クライアント、ハンドヘルドまたはラップトップ・デバイス、マイクロプロセッサ・システム、マイクロプロセッサベース・システム、セット・トップ・ボックス、プログラマブル・コンシューマ・エレクトロニクス、ネットワークPC、マイクロコンピュータ・システム、メインフレーム・コンピュータ・システム、およびこれらの任意のシステムまたはデバイスを含む分散クラウド・コンピューティング環境などを含むが、これらに限定されない。
コンピュータ・システム/サーバ12は、コンピュータ・システムによって実行されているプログラム・モジュールなどの、コンピュータ・システムによって実行可能な命令の一般的なコンテキストで説明することができる。通常、プログラム・モジュールは、特定のタスクを実行する、または特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、ロジック、データ構造などを含む。コンピュータ・システム/サーバ12は、本発明の一部の実施形態に従って、通信ネットワークを介してリンクされたリモート処理デバイスによってタスクが実行される、分散クラウド・コンピューティング環境内で実行される。分散クラウド・コンピューティング環境において、プログラム・モジュールは、ローカルおよびリモートの両方のコンピュータ・システムの、メモリ・ストレージ・デバイスを含む記憶媒体に配置できる。
図1に示すように、クラウド・コンピューティング・ノード10内のコンピュータ・システム/サーバ12は、汎用コンピューティング・デバイスの形態で示されている。コンピュータ・システム/サーバ12のコンポーネントは、1つまたは複数のプロセッサまたはプロセッシング・ユニット16、システム・メモリ28、およびシステム・メモリ28を含むさまざまなシステム・コンポーネントをプロセッサ16に結合するバス18を含むが、これらに限定されない。
バス18は、メモリ・バスまたはメモリ・コントローラ、ペリフェラル・バス、アクセラレーテッド・グラフィックス・ポート、および任意のさまざまなバス・アーキテクチャを使用するプロセッサまたはローカル・バスを含む、1つまたは複数の任意の種類のバス構造を表す。例として、そのようなアーキテクチャは、ISA(Industry Standard Architecture)バス、MCA(Micro Channel Architecture)バス、EISA(EnhancedISA)バス、VESA(Video Electronics Standards Association)ローカル・バス、PCI(Peripheral Component Interconnect)バスを含むが、これらに限定されない。
コンピュータ・システム/サーバ12は、通常、さまざまなコンピュータ・システム可読媒体を含む。そのような媒体は、コンピュータ・システム/サーバ12によってアクセスできる任意の使用可能な媒体にすることができ、揮発性および不揮発性媒体、取り外し可能および取り外し不可の媒体の両方を含む。
システム・メモリ28は、ランダム・アクセス・メモリ(RAM)30またはキャッシュ・メモリ32あるいはその両方などの、揮発性メモリの形態のコンピュータ・システム可読媒体を含む。コンピュータ・システム/サーバ12は、一部の実施形態において、その他の取り外し可能/取り外し不可、揮発性/不揮発性のコンピュータ・システム記憶媒体をさらに含む。例として、取り外し不可、不揮発性の磁気媒体(図示されておらず、通常は「ハード・ドライブ」と呼ばれる)に対する読み取りと書き込みを行うために、ストレージ・システム34が提供される。さらに例として、図示されていないが、取り外し可能、不揮発性の磁気ディスク(例えば、「フロッピー(R)・ディスク」)に対する読み取りと書き込みを行うための磁気ディスク・ドライブ、およびCD−ROM、DVD−ROM、またはその他の光媒体などの取り外し可能、不揮発性の光ディスクに対する読み取りと書き込みを行うための光ディスク・ドライブが提供される。そのような例では、それぞれを、1つまたは複数のデータ媒体インターフェイスによってバス18に接続することができる。下でさらに示され、説明されるように、メモリ28は、一部の実施形態において、本発明の実施形態の機能を実行するように構成されるプログラム・モジュールの(例えば、少なくとも1つの)セットを備える少なくとも1つのプログラム製品を含む。
プログラム・モジュール42の(少なくとも1つの)セットを含んでいるプログラム/ユーティリティ40は、以下のものに限定されないが、オペレーティング・システム、1つまたは複数のアプリケーション・プログラム、その他のプログラム・モジュール、およびプログラム・データとともに、例えば、メモリ28に記憶される。オペレーティング・システム、1つまたは複数のアプリケーション・プログラム、その他のプログラム・モジュール、およびプログラム・データまたはこれらの組合せは、それぞれネットワーク環境の実装を含むことができる。プログラム・モジュール42は、通常、本明細書に記載された本発明の実施形態の機能または方法あるいはその両方を実行する。
また、コンピュータ・システム/サーバ12は、本発明の一部の実施形態に従って、キーボード、ポインティング・デバイス、ディスプレイ24などの1つまたは複数の外部デバイス14、ユーザがコンピュータ・システム/サーバ12と情報をやりとりできるようにする1つまたは複数のデバイス、またはコンピュータ・システム/サーバ12が1つまたは複数の他のコンピューティング・デバイスと通信できるようにする任意のデバイス(例えば、ネットワーク・カード、モデムなど)、あるいはその組合せと通信する。そのような通信は、一部の実施形態において、入力/出力(I/O:Input/Output)インターフェイス22を介して発生する。さらに、コンピュータ・システム/サーバ12は、一部の実施形態において、ローカル・エリア・ネットワーク(LAN:Local Area Network)、一般的な広域ネットワーク(WAN:WideArea Network)、またはパブリック・ネットワーク(例えば、インターネット)あるいはその組合せなどの1つまたは複数のネットワークと、ネットワーク・アダプタ20を介して通信する。図示されているように、ネットワーク・アダプタ20は、バス18を介してコンピュータ・システム/サーバ12の他のコンポーネントと通信する。図示されていないが、その他のハードウェア・コンポーネントまたはソフトウェア・コンポーネントあるいはその両方を、コンピュータ・システム/サーバ12と併用できると理解されるべきである。その例は、マイクロコード、デバイス・ドライバ、冗長プロセッシング・ユニット、外部ディスク・ドライブ・アレイ、RAIDシステム、テープ・ドライブ、およびデータ・アーカイブ・ストレージ・システムなどを含むが、これらに限定されない。
ここで図2を参照すると、例示のクラウド・コンピューティング環境50が示されている。図示されているように、クラウド・コンピューティング環境50は、クラウドの利用者によって使用されるローカル・コンピューティング・デバイス(例えば、PDA(Personal Digital Assistant)または携帯電話54A、デスクトップ・コンピュータ54B、ラップトップ・コンピュータ54C、または自動車コンピュータ・システム54N、あるいはその組合せ)が通信できる1つまたは複数のクラウド・コンピューティング・ノード10を備える。ノード10は、互いに通信することができる。ノード10は、前述したプライベート・クラウド、コミュニティ・クラウド、パブリック・クラウド、またはハイブリッド・クラウド、あるいはそれらの組合せなど、1つまたは複数のネットワーク内で物理的または仮想的にグループ化される(図示せず)。これによって、クラウド・コンピューティング環境50は、クラウドの利用者がローカル・コンピューティング・デバイス上でリソースを維持する必要のないサービスとしてインフラストラクチャ、プラットフォーム、またはソフトウェア、あるいはその組合せを提供できる。図2に示されたコンピューティング・デバイス54A〜Nの種類は、例示のみが意図されており、コンピューティング・ノード10およびクラウド・コンピューティング環境50は、任意の種類のネットワークまたはネットワーク・アドレス指定可能な接続(例えば、Webブラウザを使用した接続)あるいはその両方を経由して任意の種類のコンピュータ制御デバイスと通信すると理解される。
ここで図3を参照すると、クラウド・コンピューティング環境50(図2)によって提供される機能的抽象レイヤのセットが示されている。図3に示されたコンポーネント、レイヤ、および機能は、例示のみが意図されており、本発明の実施形態がこれらに限定されないということが、あらかじめ理解されるべきである。図示されているように、次のレイヤおよび対応する機能が提供される。
ハードウェアおよびソフトウェア・レイヤ60は、ハードウェア・コンポーネントおよびソフトウェア・コンポーネントを含む。ハードウェア・コンポーネントの例は、メインフレーム(一例を挙げると、IBM(R) zSeries(R)システム)、RISC(Reduced Instruction Set Computer)アーキテクチャ・ベース・サーバ(一例を挙げると、IBM pSeries(R)システム)、IBM xSeries(R)システム、IBM BladeCenter(R)システム、ストレージ・デバイス60a、ネットワークおよびネットワーク・コンポーネントを含む。ソフトウェア・コンポーネントの例は、ネットワーク・アプリケーション・サーバ・ソフトウェア(一例を挙げると、IBM WebSphere(R)アプリケーション・サーバ・ソフトウェア)、およびデータベース・ソフトウェア(一例を挙げると、IBM DB2(R)データベース・ソフトウェア)を含む。(IBM、zSeries、pSeries、xSeries、BladeCenter、WebSphere、およびDB2は、世界中の多くの管轄区域で登録されているInternational Business Machines Corporationの商標である。)
仮想化レイヤ62は抽象レイヤを提供し、この抽象レイヤから、例えば次のような仮想実体が提供される。仮想サーバ、仮想ストレージ、仮想プライベート・ネットワークを含む仮想ネットワーク、仮想アプリケーションおよびオペレーティング・システム、ならびに仮想クライアント
一例を挙げると、管理レイヤ64は、以下で説明する機能を提供する。リソース・プロビジョニングは、クラウド・コンピューティング環境内でタスクを実行するために利用される計算リソースおよびその他のリソースの動的調達を行う。計測および価格設定は、クラウド・コンピューティング環境内でリソースが利用された際のコスト追跡、およびそれらのリソースの利用に対する請求書の作成と送付を行う。一例を挙げると、それらのリソースは、アプリケーション・ソフトウェア・ライセンスを含む。セキュリティ(図示せず)は、クラウドの利用者およびタスクの同一性検証を行うとともに、データおよびその他のリソースの保護を行う。ユーザ・ポータルは、クラウド・コンピューティング環境へのアクセスを利用者およびシステム管理者に提供する。サービス・レベル管理は、必要なサービス・レベルを満たすように、クラウドの計算リソースの割り当てと管理を行う。サービス水準合意(SLA:Service Level Agreement)計画および実行は、今後の要求が予想されるクラウドの計算リソースの事前準備および調達を、SLAに従って行う。
ワークロード・レイヤ66は、クラウド・コンピューティング環境で利用される機能の例を示している。このレイヤから提供されるワークロードおよび機能の例は、マッピングおよびナビゲーション、ソフトウェア開発およびライフサイクル管理、仮想クラスルーム教育の配信、データ分析処理、トランザクション処理、および、この「発明を実施するための形態」セクションの以下のサブセクションで詳細に説明されるように、本発明に従う機能(機能ブロック66aを参照)を含む。
本明細書に記載されたプログラムは、アプリケーションに基づいて識別され、本発明の特定の実施形態において、そのアプリケーション関してプログラムが実装される。ただし、本明細書における特定のプログラムの名前は単に便宜上使用されていると理解されるべきであり、したがって、本発明は、そのような名前によって識別された、または暗示された、あるいはその両方によって示された特定のアプリケーションのみで使用するように限定されるべきではない。
本発明のさまざまな実施形態の説明は、例示の目的で提示されているが、網羅的であることは意図されておらず、開示された実施形態に限定されない。本発明の範囲および思想を逸脱することなく多くの変更および変形が可能であることは、当業者にとって明らかである。本明細書で使用された用語は、実施形態の原理、実際のアプリケーション、または市場で見られる技術を超える技術的改良を最も適切に説明するため、または他の当業者が本明細書で開示された実施形態を理解できるようにするため選択されている。
図4は、本発明に従う方法を表すフローチャート400を示している。図5は、フローチャート400の方法の各ステップの少なくとも一部を実行するためのプログラム500を示している。以降では、図4(方法のステップのブロックに関する)および図5(ソフトウェア・ブロックに関する)を詳細に参照して、この方法および関連するソフトウェアについて説明する。図5に示されているように、プログラム500が記憶される物理的位置の一例は、ストレージ・ブロック60a内である(図3を参照)。
処理はステップS402から開始され、ステップS402では、リソース・モジュール(「mod」)502がリソースを、ソフトウェアによって定義された環境内で処理されるワークロードのセキュリティ・コンテナに割り当てる。セキュリティ・コンテナは、自己記述コンテナである。自己記述コンテナの特徴については、この「発明を実施するための形態」の「その他のコメント」サブセクションまたは「実施形態」サブセクションあるいはその両方において、下で詳細に説明されている。セキュリティ・コンテナは、複数のサブコンテナで構成されており、各サブコンテナは、ワークロード、環境、またはインフラストラクチャ、あるいはこれらの組合せの分割可能な部分を表している。この説明を要約すると、セキュリティ・コンテナの例は、指定されたワークロードを完了するために選択されたさまざまなリソースを識別することによって、きめの細かいエンド・ツー・エンドのセキュリティを提供する。これらのリソースは、本明細書ではセキュリティ・コンテナ「内」に存在する「コンテンツ」と呼ばれる。リソースは、(i)計算抽象化、(ii)ストレージ抽象化、(iii)ネットワーク抽象化、または(iv)ユーザ、あるいはこれらの組合せを含む。このようにして、エンド・ツー・エンドのランタイム環境の全体が、ソフトウェアによって定義されたセキュリティ・コンテナによって捉えられる。この例では、ランタイム環境ごとにセキュリティ・コンテナが確立され、ランタイム環境は、特定のワークロードに対応する抽象化されたインフラストラクチャおよびユーザを含む。
処理はステップS404に進み、ステップS404では、セキュリティ基準mod504が指定されたワークロードのセキュリティ基準を決定する。各セキュリティ・コンテナは、セキュリティ基準のセットに関連付けられる。例えば、ポリシーの仕様、監視、および実施は、指定されたワークロードおよび対応するセキュリティ・コンテナに従って決定される。本発明の一部の実施形態では、サービス水準合意がセキュリティ基準において考慮される。セキュリティ基準の詳細な説明は、(i)コンテナ固有のポリシーの仕様、(ii)多面的な完全性の監視、および(iii)きめの細かい分離管理に関して、下で説明される。
処理はステップS406に進み、ステップS406では、モニタmod506が、セキュリティ・イベントについて、セキュリティ・コンテナに割り当てられたリソースおよびワークロードを監視する。セキュリティ・イベントは、観察対象の挙動からの逸脱として事前に決定される、または認識される、あるいはその両方が行われる。セキュリティ・インテリジェンスは、(i)深部探索(deep introspection)、(ii)条件に基づく監視、(iii)指定されたユーザに関する挙動モデル、(iv)指定されたプロセスに関する挙動モデル、(v)指定されたワークロードに関する挙動モデル、または(vi)指定されたインフラストラクチャに関する挙動モデル、あるいはこれらの組合せを含むが、これらに限定されない、さまざまな手法に基づく。このステップでは、セキュリティ・イベントの監視は、識別されたセキュリティ・イベントの追跡またはレポートあるいはその両方を含む。次のステップで説明されるように、各セキュリティ・イベントは、独自の応答アクションを引き起こすことができる。この例では、セキュリティ・イベントは、(i)信頼性、(ii)可用性、(iii)有用性、(iv)回復力、または(v)脆弱性、あるいはこれらの組合せに関連付けられる。
処理はステップS408で終了し、ステップS408では、セキュリティ・メカニズムmod508が、識別されたセキュリティ・イベントに従ってセキュリティ・メカニズムを管理する。セキュリティ・メカニズムは、(i)隔離アクション(例えば、分離)、(ii)移行アクション(例えば、ワークロードの再生)、または(iii)アクティブな監視アクション、あるいはこれらの組合せを含むが、これらに限定されない。以下では、セキュリティ・メカニズムについて詳細に説明する。
本発明の一部の実施形態は、現在の技術に対して改善を行うために、次の要因、潜在的な問題、または潜在的領域、あるいはこれらの組合せを認識する。(i)ソフトウェアによって定義された環境(SDE)における実質的な仮想化により、マシンまたはネットワークあるいはその両方の同一性が信頼できないこと、(ii)専用または仮想あるいはその両方の機器(例えば、ファイアウォール、アクセラレータ、DPI、IDS/IPS、DLP、負荷平衡装置、およびゲートウェイ)の使用により、情報技術(IT:information technology)におけるマシンまたはネットワークあるいはその両方の同一性の重要性が低下すること、(iii)SDEのアジリティにより、プログラム可能な計算リソース、ストレージ・リソース、またはネットワーク・ストレージ、あるいはこれらの組合せの立ち上げが迅速に達成されること、(iv)SDEのアジリティにより、プログラム可能な計算リソース、ストレージ・リソース、またはネットワーク・ストレージ、あるいはこれらの組合せの解体が迅速に達成されること、(v)SDEの迅速な立ち上げおよび解体が、セキュリティ・ポリシーと基盤になるハードウェア環境およびソフトウェア環境との間の長期間の関連性から離れること、(vi)SDE環境が適切に実装され、ユーザ、ワークロード、またはソフトウェアによって定義されたインフラストラクチャ(SDI:Software-Defined Infrastructure)、あるいはこれらの組合せを対象にするセキュリティ・ポリシーが迅速に確立されて継続的に進化すること、(vii)SDEのリソースの異質性の増大、リソースが能力に関して抽象化されること、(viii)SDEのリソースの異質性の増大、リソースが容量に関して抽象化されること、または(ix)複数の種類のリソースにまたがるリソースの能力の標準化が、リソースのさまざまな非機能的側面における違い(停電に対する脆弱性およびセキュリティ・リスクなど)を隠すことができること、あるいはこれらの組合せ
SDEセキュリティ・フレームワークの一部の実施形態は、(i)コンテキストを認識したポリシーに基づく分離、および人、プロセス、またはデータあるいはこれらの組合せの完全性の概念を拡大する自己記述的なきめの細かいコンテナに基づくセキュリティ・モデル、(ii)共通のワークロードおよびリソースの抽象化に対するコンテナ固有のポリシーの仕様、監視、実施、(iii)深部探索、条件に基づく監視、人、プロセス、ワークロード、およびインフラストラクチャの挙動モデルなどの手法に基づくセキュリティ監視インテリジェンス、(iv)セキュリティを最適化してセキュリティ・メカニズム(例えば、新しい脆弱性の公開に応じた仮想パッチ、ネットワーク・セキュリティの再構成)を動的に挿入および削除するための、コンテキストおよびリスクを認識した積極的なオーケストレーション(自動化)メカニズム、または(v)セキュリティの監視、分析およびオーケストレーションの実行が、同じソフトウェアによって定義された環境内で開発、配置、および運用され、したがって、同じ共通のワークロードおよびリソースの抽象化を活用すること、あるいはこれらの組合せを含む。
本発明の一部の実施形態は、SDE内の要素の完全性または機密性あるいはその両方を維持する。本発明のさまざまな実施形態によって維持されるさまざまな種類の完全性が存在し、それらは、(i)最下部から最上部までのインフラストラクチャの完全性、(ii)インフラストラクチャのアクセスの完全性(送信中のデータなど)、(iii)データ・アクセスの完全性(保存されたデータなど)、(iv)人の完全性(例えば、連携した同一性管理)、または(v)ワークロードの完全性(静的および動的の両方)、あるいはこれらの組合せを含む。インフラストラクチャの完全性は、ハードウェア、ハイパーバイザ、オペレーティング・システム、またはクラウド管理、あるいはこれらの組合せを含むインフラストラクチャ・スタックが改ざんされないことを保証することを期待する。アクセスの完全性とは、アクセス制御のことであり、例えば、強制アクセス制御(MAC)および役割ベース・アクセス制御(RBAC)によって提供される。また、法規制の順守およびデータ暗号化は、アクセス制御の一部である。静的ワークロードの完全性は、物理的分離、仮想的分離、ファイアウォールによる分離、および暗号による分離によって確立されたセキュリティ・グループまたはセキュリティ・ゾーンあるいはその両方に関連する。動的ワークロードの完全性は、例えばミドルボックスの挿入に関連する。
SDEで利用できるさまざまな種類の機密性も存在し、それらは、(i)VM分離(例えば、しばしば同じハイパーバイザを共有する異なるアドレス空間によって生じた分離)、(ii)ネットワーク分離(例えば、異なるVLANによって生じた分離)、(iii)物理的分離(例えば、エア・ギャップ(領域および利用可能なゾーンなど)によって生じた分離)、または(iv)(iTVDc(integrated trusted virtual data center)に配置されるような)暗号による分離(例えば、異なる暗号鍵によって生じた分離)、あるいはこれらの組合せを含む。
SDEの保守は、周期的なワークロードの再生を提供することも含む。ワークロードの再生は、攻撃の可能性が特定のレベルに増大したときに、多くの場合は事前に決定された周期的サイクルで発生する。特定のレベルのリスクに応じて、既知の汚染されていないソースからイメージが再構築される。
図6は、セキュリティ・システム600のさまざまな部分を示す機能ブロック図であり、ソフトウェアによって定義されたセキュリティ・オーケストレーション602、モニタ・モジュール(「mod」)604、作動/修正mod606、ソフトウェアによって定義された環境608、セキュリティ・インテリジェンス・プラットフォーム610、リソース抽象化620、計算リソース(例えば、Power VM、x86 KVM、ハイ・メモリBWノード、シングル・スレッド高性能ノード(high single thread performance nodes)、ハイ・スレッド・カウント・ノード(high thread count nodes)、およびマイクロサーバ・ノード)622、計算抽象化623、624、625、626、計算コンテナ621、ネットワーク・リソース(例えば、RDMA、イーサネット(R))628、ネットワーク抽象化629、630、631、ネットワーク・コンテナ627、ストレージ・リソース(例えば、SSD、HDD、テープ、ファイル、およびブロック・ストレージ)632、ストレージ抽象化633、634、635、636、およびストレージ・コンテナ637を含んでいる。
この例では、計算622、ストレージ632、およびネットワーク628のリソース抽象化620は、それぞれ能力と容量の両方を捉えている。また、リソースがどのように相互接続されるかというトポロジーが、抽象化において捉えられる。機能と非機能の両方の側面が含まれるということに注意する必要がある。各側面は、(i)信頼性、(ii)可用性、(iii)有用性、(iv)回復力、および(v)脆弱性を含む。さらに、ワークロードの抽象化は、(i)さまざまなワークロード・コンポーネント、(ii)機能的要件、(iii)非機能的要件、および(iv)コンテキスト情報の相互依存性を捉える。機能的要件または非機能的要件あるいはその両方は、回復力、セキュリティ、および適合性を含む。
サブコンテナ621、627、および637はそれぞれ、コンテキストを認識するポリシーに従って単一のエンド・ツー・エンド・コンテナ(end-to-end container)(図示せず)を構成する自己記述コンテナである。多くの自己記述コンテナの集合として示されているソフトウェアによって定義された環境608内のランタイムは、仮想マシン・コンテナ、ベアメタル・コンテナ、またはハイパーバイザ/OS固有のコンテナ、あるいはこれらの組合せを含む。この例では、エンド・ツー・エンド・コンテナは、3つのリソース抽象化(計算621、ネットワーク627、およびストレージ637)を含んでいる。このようにして、エンド・ツー・エンド・ランタイム環境の全体が、コンテナによって捉えられる。あるいは、3つのリソースの一部のサブセットが、エンド・ツー・エンド・コンテナにおいて考慮される。
各「ソフトウェアによって定義された」エンド・ツー・エンド・コンテナは、SDEの残りの部分に対する分離メカニズムを備える。ソフトウェアによって定義された計算サブコンテナ621は、例えば、サブコンテナがVMである場合は、ハイパーバイザによって分離される。その他のコンテナ構造は、(i)Java(R)コンテナ(メモリ空間を分けることによって分離される)、(ii)SOAコンテナ、(iii)Oracle/Sun Solarisコンテナ(Solaris OS上のゾーンによって分離される)、(iv)Google chrome/chromium環境内のコンテナ、および(v)新たに出現したDockerコンテナを含む。データおよびソフトウェアによって定義された記憶領域内の分離は、パーティショニングおよび暗号化によって実現される。ソフトウェアによって定義されたネットワーク内の分離は、例えばOpenFlow環境内の「フロー」の別々の定義によって実現される。(注意:「Java(R)」、「Oracle」、「Sun」、「Solaris」、「Google」、「OpenFlow」、または「Docker」という用語、あるいはこれらの組合せは、世界中のさまざまな管轄区域において商標権の対象になる可能性があり、本明細書では、そのような商標権が存在する可能性がある限り、それらの商標によって正しく示された製品またはサービスへの参照においてのみ使用される。)
自己記述コンテナは、コンテナ内の「コンテンツ」に関連するメタデータを含む。例えばメタデータは、コンテナ内に何があるか、コンテナが何を実行するか、コンテナに関連するセキュリティ、またはコンテナに関連する適合性ポリシー、あるいはこれらの組合せを説明する。エンド・ツー・エンド・コンテナの自己記述的側面は、コンテナの移植性に役立つ。移植性は、コンテナが時々、一次的停止、再開、または移行、あるいはこれらの組合せの対象になる場合に、重要になる。この例では、メタデータ自体のデータ・モデルは、メタデータがどの場所でも正しく理解または解釈され、あるいはその両方が行われるように、自己記述的になっている。
本発明の一部の実施形態は、(i)共通のオントロジー・レジストリ(ontologyregistry)を共有すること、または(ii)(a)手動の関連付けもしく(b)自動的/自律的学習による実行時のオントロジー間のマッピングを解決すること、あるいはその両方によって、SDE内の意味的相互運用性を実現する。
図7は、ソフトウェアによって定義されたセキュリティ・オーケストレーション602およびSDE608内のコンテナベースのツールをさらに示す機能ブロック図である。セキュリティ・オーケストレーション602は、早期警告および遠距離場検出エンジン(far field detection and early warning engine)702、モデリング・モジュール704、保証エンジン706、およびオーケストレーション・エンジン708を含むようにさらに示されている。コンテナベースのツールは、深部探索プローブ710a、710b、710c、高速ワークロード移行モジュール712a、712b、712c、ならびに分離および隔離モジュール714a、714b、714cを含んでいる。
図6および7に示されているように、ポリシーの仕様、ポリシーの監視、およびポリシーの実施は、それぞれコンテナベースである。つまり、ワークロード、インフラストラクチャ、および人のセキュリティ・ポリシーおよび適合性ポリシーは、コンテナごとに管理される。この例では、これらのポリシーの実施は次の3つのコンポーネントを含み、これらの各コンポーネントは、ソフトウェアによって定義された環境内のあらゆるコンテナにそれぞれ関連付けられる。(i)コンテナ固有のポリシーの仕様、(ii)モニタmod604による多面的な完全性の監視、および(iii)作動/修正mod606によるきめの細かい分離管理より具体的には、セキュリティ・ポリシーおよび適合性ポリシー(意味およびオントロジーを含む)は、仕様がソフトウェアによって定義された環境全体で完全に移植可能になるように、自己記述的方法でコンテナごとに指定される。各コンテナの完全性は、ワークロード、インフラストラクチャ、および人という「面」に関して継続的に監視される。深部探索プローブ710a、710b、および710cとして示されたソフトウェアによって定義された「プローブ」は、ワークロードおよびソフトウェアによって定義されたインフラストラクチャ・コンポーネントの深部探索を実施するために使用される。最後に、分離および隔離モジュール714a、714b、および714cによるきめの細かい分離管理は、計算リソース、データ/ストレージ・リソース、またはネットワーク・リソース、あるいはこれらの組合せを含む、コンテナごとのエンド・ツー・エンドの分離を保証する。
この例では、監視結果からの出力は、下で詳細に説明される、早期警告および遠距離場検出エンジン702に供給される。一部の実施形態では、これらの結果は、ポリシーの仕様からの逸脱の可能性を識別するために、ポリシーの仕様と継続的に比較される。保証エンジン706の出力は、可能性のある予防策または耐久手段あるいはその両方のための継続的かつ積極的なオーケストレーションを提供する。
一部の実施形態では、早期警告および遠距離場検出メカニズムは、(i)ワークロード、(ii)アプリケーション、(iii)インフラストラクチャ、または(iv)人、あるいはこれらの組合せのモデルを含む挙動モデルを使用して一緒に結合するデータ(stitching together data)に基づく。ワークロードの挙動は、次の指標のうちの1つまたは複数によって捉えられる。(i)インフラストラクチャの時空間占有範囲(spatio-temporal footprints)、(ii)リソース使用量の(時系列としての)時間的進行、(iii)特定のワークロード内のさまざまなコンポーネントのアクティブ化、および(iv)さまざまなサービスの起動ワークロードの挙動モデルは、(i)アプリケーションのトポロジー、(ii)データ・ソースへの接続性、または(iii)データ・シンクへの接続性、あるいはこれらの組合せを含む、SDEのコンテキストの側面の上に構築される。
インフラストラクチャの挙動は、ソフトウェアによって定義されたシステムによって生じるイベントによって捉えられる。挙動モデルは、(i)有限状態マシン、(ii)ペトリネット、および(iii)その他の種類の表現を含む、さまざまな決定論的モデルまたは確率的モデルのうちの1つに基づく。インフラストラクチャの挙動モデルは、(i)物理的トポロジー、または(ii)物理的インフラストラクチャへのソフトウェアによって定義されたインフラストラクチャのマッピング、あるいはその両方を含む、SDEのコンテキストの側面の上に構築される。
人(例えば、ユーザ、システム管理者、およびサイバー防御者(cyberdefender))の挙動は、(i)組織構造、(ii)ソーシャル・ネットワーク(組織内または組織外、あるいはその両方)、(iii)個人の役割、および(iv)個人の責任などの、挙動のコンテキストの側面を含む。人の挙動モデルは、多くの場合、確率的関数(probabilistic function)になる。この例では、侵入の挙動モデルは、侵入が検出された後に、特定の環境内の侵入の今後の動向の予測を容易にするように構築される。
本発明の一部の実施形態は、次の目的で挙動モデルを使用する。(i)データの統合と連携、(ii)予測分析および条件に基づく監視、または(iii)仮定分析、あるいはこれらの組合せ挙動モデルの用途は、(i)複数のチャネルの生のイベント・データ(およびその他のデータ)を一緒に結合すること、(ii)ノイズ、欠落データ、またはその他のデータの不確実性の問題に対処すること、および(iii)特定のワークロード、インフラストラクチャ、または人、あるいはこれらの組合せの将来の挙動が予測され、対応する実際のイベントと比較される、「条件に基づく監視」の一般的領域に関連する予測分析を含む。これによって、単純なしきい値またはその他のより影響を受けやすい従来手法を使用するよりも非常に早い段階での早期警告を提供する。仮定分析は、制御可能な変数のサブセットに対してアサートされた値を条件にして将来の経路を予測することによって、可能になる。仮定分析を適用することによって、最も良い推定結果につながる制御アクションが、先に進むために選択される。
本発明の一部の実施形態は、リスクの高い挙動または実際の悪意のある挙動のいずれかがワークロード、インフラストラクチャ、または人、あるいはこれらの組合せにおいて観察されたと決定された場合に、積極的なオーケストレーションを起動する。オーケストレーション・エンジン708(図7)による積極的なオーケストレーションは、(i)隔離アクション、(ii)移行アクション、または(iii)アクティブな監視アクション、あるいはこれらの組合せを起動する。
SDEは、さまざまなメカニズムを使用して複数の粒度で個々の環境を分離(または隔離)する機能を提供する。インフラストラクチャおよびワークロードに適用する隔離メカニズムは、(i)スタックのさまざまなレイヤでエンド・ツー・エンド・コンテナによって提供される分離メカニズム、(ii)ソフトウェアによって定義されたネットワークによって提供される分離メカニズム、および(iii)ソフトウェアによって定義されたストレージによって提供される分離メカニズムを含む。これらの分離メカニズムは、ポリシー、重複しないメモリ/ストレージ・アドレス空間(および共有メモリ空間のコピー・オン・ライト)による分離、および個々のドメイン内で異なる暗号鍵を強制することによる分離を含む。人に適用する分離メカニズムは、強制アクセス制御、役割ベース・アクセス制御、またはさまざまな種類のコンテンツ・リソースに対する権限管理メカニズム、あるいはこれらの組合せを含む。
ワークロードを実行するための現在の環境が何らかの理由で脆弱になったと決定された場合、一部の実施形態では、ワークロードが移行される。しばしば移行は、入力/出力環境の残りの部分に対する妨害を最小限に抑えた上で、新しい物理的位置でのアプリケーション環境の再生(再構築)を必要とする。最後に、SDEは、(環境の残りの部分からのハニーポットの非常に良好な分離を提供するので)インフラストラクチャ内のハニーポットの設定を提供する。本発明の一部の実施形態は、外部および内部の両方からの侵入を誘って捕らえるようにハニーポットを動的に設定し、侵入の挙動の観察を改善する。
セキュリティ・ポリシーおよびサービス水準合意(SLA)がソフトウェアによって定義されたインフラストラクチャおよび使用可能な統合された制御プレーンによって推進される使用事例を以下に示す。引き続き図7を参照すると、ワークロードに対応するセキュリティ・ポリシーおよびSLAは、早期警告および遠距離場検出エンジン702によって管理される。この例では、検出および警告エンジンが、(i)通知、(ii)SDEセキュリティ分析、(iii)ワークロード・セキュリティ・プロファイル監視(workload security profile monitoring)、および(iv)修正を含むタスクを処理する。検出および警告エンジンは保証エンジン706と通信し、ワークロード定義に従って、配置時間セキュリティ(deployment-time security)が提供される。さらに、オーケストレーション・エンジン708が、ランタイム・セキュリティ構成のために、保証エンジンならびに検出および警告エンジンから入力を受信する。ワークロードのセキュリティ・ポリシーおよびSLAは、例えば(i)重要ファイルの完全性の監視、(ii)重要ファイルのパッチ、(iii)コンピュータ・リソースの配置、(iv)コンピュータ・リソースの証明書、(v)管理されたスキャン、(vi)接続性、(vii)分離、(viii)負荷平衡、(ix)ファイル・レベルの機密性、および(x)オブジェクト・レベルの機密性を含む。
ソフトウェアによって定義されたインフラストラクチャに対応するセキュリティ・ポリシーおよびSLAは、モニタ・モジュール604および作動/修正モジュール606によって処理され、計算リソース抽象化、ストレージ・リソース抽象化、およびネットワーク・リソース抽象化は、ダッシュボードから管理されるか、物理的ハードウェアのアプリケーション・プログラム・インターフェイス(API:application programming interface)を介して管理される。インフラストラクチャのセキュリティ・ポリシーおよびSLAは、例えば(i)ホストの完全性、(ii)セキュアな信頼性の高いブート、(iii)ハードウェア・セキュリティ・モジュール(HSM:hardware security module)の可用性、(iv)ネットワークの可用性、(v)ネットワークの機密性、(vi)ネットワーク・ロケーション、(vii)ストレージの機密性、(viii)ストレージ・アクセス制御、(ix)ストレージの暗号化、(x)セキュアなストレージ削除、(xi)セキュアなストレージ消去、(xii)ストレージの物理的破壊、(xiii)制御プレーンの完全性、および(xiv)マルチテナント機能を含む。
動作中に、例えば、異常なトラフィックおよびアクションが検出された場合、ソフトウェアによって定義されたネットワークを使用して次のように修正される。ワークロードを定義し、インフラストラクチャ要件を識別した場合、監視活動中にURL(uniform resource locator)ブラックリストが参照される。悪意のあるURLへのネットワーク・アクセスの検出時に、作動/修正モジュール606が動作してネットワークを再構成し、それと同時に、影響を受ける仮想マシンからのトラフィックが条件付きでブロックされる。
その他の使用事例および応答の例を次に示す。重要ファイル(例えば、Webサーバ)の完全性の違反が発生した場合、その違反が検出され、その後、警告またはブロックあるいはその両方が行われる。複数のサーバまたはワークロードあるいはその両方にまたがる重要ファイルの完全性の違反が発生した場合、その違反が検出され、その後、警告またはブロックあるいはその両方が行われる。複雑なワークロードの異常な(プロファイルの範囲外の)通信パターンの検出によって、挙動モデルで表された「望ましい状態」からの逸脱が得られる。複数のデータセンタにまたがるワークロードの配置によって、信頼仮定(trust assumptions)および対応する要件を表すリソース・モデルが得られる。最後に、本発明の一部の実施形態は、データ削除シナリオの構成可能な強度(configurable strength)を提供する。
本発明の一部の実施形態は、次の機能、特徴、または長所、あるいはこれらの組合せのうちの1つまたは複数を含む。(i)インフラストラクチャ全体(計算、ストレージ、およびネットワーク)がプログラム可能である、ソフトウェアによって定義された環境(SDE)内のアプリケーション、データ、またはインフラストラクチャ、あるいはこれらの組合せのセキュリティを保証すること、(ii)ストレージまたはネットワークあるいはその両方の制御プレーンがデータ・プレーンから分離されているSDE内のアプリケーション、データ、またはインフラストラクチャ、あるいはこれらの組合せのセキュリティを保証すること、(iii)イベントの来歴(例えば、誰が何をいつ誰に対してどのようなコンテキストにおいて行ったか)を捉えるためのオーバヘッドの少ないアプローチを提供すること、または(iv)急速に変化する仮想トポロジー内の疑わしいイベントを識別するためのオーバヘッドの少ないアプローチを提供すること、あるいはこれらの組合せ
本発明は、「本発明」という用語によって表された主題が、出願されたときの請求項によってカバーされる、または特許審査の後に最終的に発行される可能性のある請求項によってカバーされるということを、絶対的に示すものであると受け取られるべきではない。「本発明」という用語は、新規である可能性があると考えられている本明細書における開示に関する一般的な印象を読者が得るのを助けるために使用されるが、「本発明」という用語によって示されているような、この理解は、関連する情報が作成されるため、および請求項が修正される可能性があるため、一時的かつ暫定的であり、特許審査の過程で変更される場合がある。
実施形態は、上の「本発明」の定義を参照する。同様の注意が「実施形態」という用語に適用される。
「および/または(and/or)」は、包含的ORである。例えば、A、B、「および/または」Cは、AまたはBまたはCのうちの少なくとも1つが真であり、適用可能であることを意味している。
ユーザ/加入者は、(i)1人の人間、(ii)ユーザまたは加入者として機能するための十分な知性を持つ人工知能の実体、または(iii)関連するユーザまたは加入者のグループ、あるいはこれらの組合せを含むが、必ずしもこれらに限定されない。
受信/提供/送信/入力/出力:特に明示的に規定されない限り、これらの単語は、(i)それらの物体および対象の間の関係に関する直接性の特定の程度、または(ii)それらの物体および対象の間に挿入された中間的なコンポーネント、アクション、もしくは物、またはこれらの組合せの不在、あるいはその両方を意味していると受け取られるべきではない。
モジュール/サブモジュールは、ハードウェア、ファームウェア、またはソフトウェア、あるいはこれらの組合せの任意のセットであり、モジュールが次のいずれの状態であるかにかかわらず、何らかの種類の機能を実行するように動作する。(i)1つにまとまって局所的に近接している、(ii)広い領域にわたって分散している、(iii)大きい一群のソフトウェア・コード内で1つにまとまって近接している、(iv)一群のソフトウェア・コード内に存在する、(v)1つのストレージ・デバイス、メモリ、または媒体内に存在する、(vi)機械的に接続されている、(vii)電気的に接続されている、または(viii)データ通信において接続されている、あるいはこれらの組合せの状態にある。
コンピュータは、大きいデータ処理能力またはマシン可読命令読み出し能力あるいはその両方を備えるデバイスであり、デスクトップ・コンピュータ、メインフレーム・コンピュータ、ラップトップ・コンピュータ、フィールドプログラマブル・ゲート・アレイ(FPGA)ベース・デバイス、スマートフォン、PDA(Personal Digital Assistant)、人体に装着または挿入されるコンピュータ、組み込みデバイス型コンピュータ、特定用途向け集積回路(ASIC:application-specific integrated circuit)ベース・デバイスを含むが、これらに限定されない。

Claims (19)

  1. 方法であって、
    ソフトウェアによって定義された環境内のワークロードおよび前記ワークロードに対応するリソースのセットを表すセキュリティ・コンテナを確立するステップと、
    前記セキュリティ・コンテナのセキュリティ基準のセットを決定するステップと、
    前記セキュリティ基準のセットに少なくとも部分的に基づいて、セキュリティ・イベントについて前記ワークロードおよび前記リソースのセットを監視するステップと、
    セキュリティ・イベントの識別に応答して1つまたは複数のセキュリティ・メカニズムを調整するステップと
    を含み、
    少なくとも前記監視するステップおよび前記調整するステップが前記ソフトウェアによって定義された環境内で処理される、方法。
  2. 前記リソースのセットが、計算リソース、ストレージ・リソース、およびネットワーク・リソースを含み、前記リソースのセットがソフトウェア抽象化である、請求項1に記載の方法。
  3. 前記セキュリティ基準のセットが、前記ソフトウェアによって定義された環境全体で移植可能であるコンテナ固有のポリシーの仕様を含む、請求項1に記載の方法。
  4. 前記監視するステップが、深部探索、条件に基づく監視、および前記リソースのセット内のリソースへの挙動モデルの適用のうちの1つを含む、請求項1に記載の方法。
  5. 前記監視するステップが、挙動モデルをワークロードの挙動に適用するステップであって、前記ワークロードの挙動が、前記ソフトウェアによって定義された環境内のインフラストラクチャ要素の時空間占有範囲のセット、前記リソースのセットの使用量の時間的進行のうちの1つによって捉えられる、前記ステップと、前記ワークロード内のコンポーネントのセットをアクティブにするステップと、前記ワークロードによって実行されるサービスを起動するステップとを含む、請求項4に記載の方法。
  6. 前記1つまたは複数のセキュリティ・メカニズムを調整するステップが、セキュリティ・メカニズムを挿入するステップ、およびセキュリティ・メカニズムを削除するステップのうちの一方を含む、請求項1に記載の方法。
  7. 前記1つまたは複数のセキュリティ・メカニズムが、隔離アクションおよび移行アクションのうちの少なくとも一方を含む、請求項1に記載の方法。
  8. プログラム命令が記憶されたコンピュータ可読記憶媒体を備えるコンピュータ・プログラム製品であって、前記プログラム命令が、
    ソフトウェアによって定義された環境内のワークロードおよび前記ワークロードに対応するリソースのセットを表すセキュリティ・コンテナを確立することと、
    前記セキュリティ・コンテナのセキュリティ基準のセットを決定することと、
    前記セキュリティ基準のセットに少なくとも部分的に基づいて、セキュリティ・イベントについて前記ワークロードおよび前記リソースのセットを監視することと、
    セキュリティ・イベントの識別に応答して1つまたは複数のセキュリティ・メカニズムを調整することと
    を行うようにプログラムされた、コンピュータ・プログラム製品。
  9. 前記リソースのセットが、計算リソース、ストレージ・リソース、およびネットワーク・リソースを含み、前記リソースのセットがソフトウェア抽象化である、請求項8に記載のコンピュータ・プログラム製品。
  10. 前記セキュリティ基準のセットが、前記ソフトウェアによって定義された環境全体で移植可能であるコンテナ固有のポリシーの仕様を含む、請求項8に記載のコンピュータ・プログラム製品。
  11. 監視するようにプログラムされた前記プログラム命令が、深部探索、条件に基づく監視、および前記リソースのセット内のリソースへの挙動モデルの適用のうちの1つを実行するようにさらにプログラムされる、請求項8に記載のコンピュータ・プログラム製品。
  12. 1つまたは複数のセキュリティ・メカニズムを調整することが、セキュリティ・メカニズムを挿入すること、およびセキュリティ・メカニズムを削除することのうちの一方を含む、請求項8に記載のコンピュータ・プログラム製品。
  13. 前記1つまたは複数のセキュリティ・メカニズムが、隔離アクションおよび移行アクションのうちの少なくとも一方を含む、請求項8に記載のコンピュータ・プログラム製品。
  14. コンピュータ・システムであって、
    プロセッサ・セットと、
    コンピュータ可読記憶媒体と
    を備え、
    前記プロセッサ・セットが、前記コンピュータ可読記憶媒体に記憶されたプログラム命令を実行するように構造化、配置、接続、またはプログラム、あるいはこれらの組合せを実行され、
    前記プログラム命令が、
    ソフトウェアによって定義された環境内のワークロードおよび前記ワークロードに対応するリソースのセットを表すセキュリティ・コンテナを確立することと、
    前記セキュリティ・コンテナのセキュリティ基準のセットを決定することと、
    前記セキュリティ基準のセットに少なくとも部分的に基づいて、セキュリティ・イベントについて前記ワークロードおよび前記リソースのセットを監視することと、
    セキュリティ・イベントの識別に応答して1つまたは複数のセキュリティ・メカニズムを調整することと
    を行うようにプログラムされたプログラム命令を含む、コンピュータ・システム。
  15. 前記リソースのセットが、計算リソース、ストレージ・リソース、およびネットワーク・リソースを含み、前記リソースのセットがソフトウェア抽象化である、請求項14に記載のコンピュータ・システム。
  16. 前記セキュリティ基準のセットが、前記ソフトウェアによって定義された環境全体で移植可能であるコンテナ固有のポリシーの仕様を含む、請求項14に記載のコンピュータ・システム。
  17. 監視するようにプログラムされた前記プログラム命令が、深部探索、条件に基づく監視、および前記リソースのセット内のリソースへの挙動モデルの適用のうちの1つを実行するようにさらにプログラムされる、請求項14に記載のコンピュータ・システム。
  18. 1つまたは複数のセキュリティ・メカニズムを調整することが、セキュリティ・メカニズムを挿入すること、およびセキュリティ・メカニズムを削除することのうちの一方を含む、請求項14に記載のコンピュータ・システム。
  19. 前記1つまたは複数のセキュリティ・メカニズムが、隔離アクションおよび移行アクションのうちの少なくとも一方を含む、請求項14に記載のコンピュータ・システム。
JP2017549186A 2015-03-25 2016-03-23 ソフトウェアによって定義されたインフラストラクチャ内のセキュリティのための方法、コンピュータ・プログラム、コンピュータ・システム Active JP6730997B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/667,877 US9652612B2 (en) 2015-03-25 2015-03-25 Security within a software-defined infrastructure
US14/667,877 2015-03-25
PCT/IB2016/051638 WO2016151503A1 (en) 2015-03-25 2016-03-23 Security within software-defined infrastructure

Publications (2)

Publication Number Publication Date
JP2018509717A true JP2018509717A (ja) 2018-04-05
JP6730997B2 JP6730997B2 (ja) 2020-07-29

Family

ID=56975627

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017549186A Active JP6730997B2 (ja) 2015-03-25 2016-03-23 ソフトウェアによって定義されたインフラストラクチャ内のセキュリティのための方法、コンピュータ・プログラム、コンピュータ・システム

Country Status (6)

Country Link
US (4) US9652612B2 (ja)
JP (1) JP6730997B2 (ja)
CN (1) CN107430647B (ja)
DE (1) DE112016000915T5 (ja)
GB (1) GB201716654D0 (ja)
WO (1) WO2016151503A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10534911B2 (en) 2015-03-25 2020-01-14 International Business Machines Corporation Security within a software-defined infrastructure
JP7446332B2 (ja) 2019-05-14 2024-03-08 キンドリル・インク ソフトウェア・プログラムの管理

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10567397B2 (en) 2017-01-31 2020-02-18 Hewlett Packard Enterprise Development Lp Security-based container scheduling
CN106790291B (zh) * 2017-03-09 2020-04-03 腾讯科技(深圳)有限公司 一种入侵检测提示方法及装置
CN108733361B (zh) * 2017-04-20 2022-03-04 北京京东尚科信息技术有限公司 一种实现并发容器的方法和装置
US20180337942A1 (en) * 2017-05-16 2018-11-22 Ciena Corporation Quorum systems and methods in software defined networking
WO2018224243A1 (en) 2017-06-08 2018-12-13 British Telecommunications Public Limited Company Containerised programming
GB2563385A (en) * 2017-06-08 2018-12-19 British Telecomm Containerised programming
EP3635930B1 (en) 2017-06-08 2024-01-03 British Telecommunications public limited company Denial of service mitigation
US10439987B2 (en) 2017-06-12 2019-10-08 Ca, Inc. Systems and methods for securing network traffic flow in a multi-service containerized application
US10521612B2 (en) 2017-06-21 2019-12-31 Ca, Inc. Hybrid on-premises/software-as-service applications
US10484410B2 (en) 2017-07-19 2019-11-19 Cisco Technology, Inc. Anomaly detection for micro-service communications
US11509634B2 (en) 2017-10-27 2022-11-22 Brightplan Llc Secure messaging systems and methods
US10360633B2 (en) 2017-10-27 2019-07-23 Brightplan Llc Secure messaging systems, methods, and automation
US10630650B2 (en) * 2017-10-27 2020-04-21 Brightplan Llc Secure messaging systems and methods
US20210344719A1 (en) * 2017-11-08 2021-11-04 Csp, Inc. Secure invocation of network security entities
US10601679B2 (en) * 2017-12-26 2020-03-24 International Business Machines Corporation Data-centric predictive container migration based on cognitive modelling
US10631168B2 (en) * 2018-03-28 2020-04-21 International Business Machines Corporation Advanced persistent threat (APT) detection in a mobile device
WO2019200102A1 (en) * 2018-04-11 2019-10-17 Cornell University Method and system for improving software container performance and isolation
US11354338B2 (en) 2018-07-31 2022-06-07 International Business Machines Corporation Cognitive classification of workload behaviors in multi-tenant cloud computing environments
US11042646B2 (en) * 2018-08-13 2021-06-22 International Business Machines Corporation Selecting data storage based on data and storage classifications
US11128665B1 (en) * 2018-09-06 2021-09-21 NortonLifeLock Inc. Systems and methods for providing secure access to vulnerable networked devices
US10885200B2 (en) * 2018-11-15 2021-01-05 International Business Machines Corporation Detecting security risks related to a software component
US11106378B2 (en) * 2018-11-21 2021-08-31 At&T Intellectual Property I, L.P. Record information management based on self describing attributes
US11237859B2 (en) 2018-11-28 2022-02-01 Red Hat Israel, Ltd. Securing virtual machines in computer systems
US11632400B2 (en) 2019-03-11 2023-04-18 Hewlett-Packard Development Company, L.P. Network device compliance
US11175939B2 (en) 2019-05-09 2021-11-16 International Business Machines Corporation Dynamically changing containerized workload isolation in response to detection of a triggering factor
US11252170B2 (en) 2019-08-07 2022-02-15 Cisco Technology, Inc. Service plane optimizations with learning-enabled flow identification
US11297090B2 (en) 2019-09-11 2022-04-05 International Business Machines Corporation Security evaluation for computing workload relocation
US12061930B2 (en) 2019-09-27 2024-08-13 Intel Corporation Software defined silicon feature licensing
CN114424168A (zh) * 2019-09-27 2022-04-29 英特尔公司 用于软件定义的硅安全性的系统、方法和装置
US11349663B2 (en) * 2019-10-30 2022-05-31 International Business Machines Corporation Secure workload configuration
US11977612B2 (en) 2020-07-07 2024-05-07 Intel Corporation Software defined silicon guardianship
US20220070225A1 (en) * 2020-09-03 2022-03-03 Vmware, Inc. Method for deploying workloads according to a declarative policy to maintain a secure computing infrastructure
US11573770B2 (en) 2021-05-05 2023-02-07 International Business Machines Corporation Container file creation based on classified non-functional requirements
US11593247B2 (en) 2021-06-03 2023-02-28 Red Hat, Inc. System performance evaluation and enhancement in a software-defined system
US11553005B1 (en) 2021-06-18 2023-01-10 Kyndryl, Inc. Provenance based identification of policy deviations in cloud computing environments

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6986061B1 (en) 2000-11-20 2006-01-10 International Business Machines Corporation Integrated system for network layer security and fine-grained identity-based access control
US6851113B2 (en) 2001-06-29 2005-02-01 International Business Machines Corporation Secure shell protocol access control
US20050114672A1 (en) * 2003-11-20 2005-05-26 Encryptx Corporation Data rights management of digital information in a portable software permission wrapper
US8261345B2 (en) 2006-10-23 2012-09-04 Endeavors Technologies, Inc. Rule-based application access management
US8255915B1 (en) * 2006-10-31 2012-08-28 Hewlett-Packard Development Company, L.P. Workload management for computer system with container hierarchy and workload-group policies
JP2011507236A (ja) 2007-12-07 2011-03-03 フォンタナ・テクノロジー ウェーハを洗浄するための方法および組成物
US20100058486A1 (en) * 2008-08-28 2010-03-04 International Business Machines Corporation Method for secure access to and secure data transfer from a virtual sensitive compartmented information facility (scif)
US9015706B2 (en) * 2010-07-08 2015-04-21 Symantec Corporation Techniques for interaction with a guest virtual machine
US20120144489A1 (en) * 2010-12-07 2012-06-07 Microsoft Corporation Antimalware Protection of Virtual Machines
US8930714B2 (en) 2011-07-19 2015-01-06 Elwha Llc Encrypted memory
US8886925B2 (en) 2011-10-11 2014-11-11 Citrix Systems, Inc. Protecting enterprise data through policy-based encryption of message attachments
EP2883140A1 (en) 2012-08-07 2015-06-17 Advanced Micro Devices, Inc. System and method for tuning a cloud computing system
US10122596B2 (en) 2012-09-07 2018-11-06 Oracle International Corporation System and method for providing a service management engine for use with a cloud computing environment
US9021037B2 (en) 2012-12-06 2015-04-28 Airwatch Llc Systems and methods for controlling email access
US9165150B2 (en) * 2013-02-19 2015-10-20 Symantec Corporation Application and device control in a virtualized environment
US9405551B2 (en) * 2013-03-12 2016-08-02 Intel Corporation Creating an isolated execution environment in a co-designed processor
US9596793B2 (en) 2013-04-17 2017-03-14 Arris Enterprises, Inc. Radio frequency shield with partitioned enclosure
US10075470B2 (en) * 2013-04-19 2018-09-11 Nicira, Inc. Framework for coordination between endpoint security and network security services
CN103258160A (zh) * 2013-05-30 2013-08-21 浪潮集团有限公司 一种虚拟化环境下的云安全监测方法
WO2015070376A1 (zh) * 2013-11-12 2015-05-21 华为技术有限公司 一种实现虚拟化安全的方法和系统
US9705923B2 (en) * 2014-09-02 2017-07-11 Symantec Corporation Method and apparatus for automating security provisioning of workloads
US9652612B2 (en) 2015-03-25 2017-05-16 International Business Machines Corporation Security within a software-defined infrastructure

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10534911B2 (en) 2015-03-25 2020-01-14 International Business Machines Corporation Security within a software-defined infrastructure
US10546121B2 (en) 2015-03-25 2020-01-28 International Business Machines Corporation Security within a software-defined infrastructure
JP7446332B2 (ja) 2019-05-14 2024-03-08 キンドリル・インク ソフトウェア・プログラムの管理

Also Published As

Publication number Publication date
US10546121B2 (en) 2020-01-28
CN107430647A (zh) 2017-12-01
US20180300479A1 (en) 2018-10-18
JP6730997B2 (ja) 2020-07-29
US10043007B2 (en) 2018-08-07
US20180300478A1 (en) 2018-10-18
US20170206352A1 (en) 2017-07-20
DE112016000915T5 (de) 2017-11-23
GB201716654D0 (en) 2017-11-22
US20160283713A1 (en) 2016-09-29
US10534911B2 (en) 2020-01-14
WO2016151503A1 (en) 2016-09-29
US9652612B2 (en) 2017-05-16
CN107430647B (zh) 2021-01-01

Similar Documents

Publication Publication Date Title
JP6730997B2 (ja) ソフトウェアによって定義されたインフラストラクチャ内のセキュリティのための方法、コンピュータ・プログラム、コンピュータ・システム
US11652852B2 (en) Intrusion detection and mitigation in data processing
US10666670B2 (en) Managing security breaches in a networked computing environment
US10841328B2 (en) Intelligent container resource placement based on container image vulnerability assessment
US20190342309A1 (en) Data protection in a networked computing environment
US10979452B2 (en) Blockchain-based malware containment in a network resource
US9906547B2 (en) Mechanism to augment IPS/SIEM evidence information with process history snapshot and application window capture history
US11522905B2 (en) Malicious virtual machine detection
US11803413B2 (en) Migrating complex legacy applications
US10769277B2 (en) Malicious application detection and prevention system for stream computing applications deployed in cloud computing environments
US10313395B2 (en) Placement of operators and encryption of communication based on risk in a computer system node
US10740457B2 (en) System for preventing malicious operator placement in streaming applications
US9843605B1 (en) Security compliance framework deployment
US11016874B2 (en) Updating taint tags based on runtime behavior profiles
US11178110B2 (en) Controlling compliance remediations
US20210294927A1 (en) Tamper detection for hub connected internet of things devices

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171024

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181031

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190627

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190806

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191031

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200331

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200612

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200630

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200703

R150 Certificate of patent or registration of utility model

Ref document number: 6730997

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150