(57)【特許請求の範囲】
【請求項１】
プロセッサとメモリとを含むシステムによって実行されるセキュリティプロビジョニングを自動化する方法であって、
仮想アプリケーションを開始する要求を受信することであって、前記仮想アプリケーションはサーバから送達され、あたかもクライアント上にインストールされたかのように当該クライアント上で使用される、ことと、
前記仮想アプリケーションの所有者を判定することと、
前記仮想アプリケーションに基づいて、アプリケーションと仮想マシンとに対応するワークロードを特定することと、
前記仮想アプリケーションの前記判定された所有者に基づいて、前記特定されたワークロードを前記メモリ内の複数のセキュリティコンテナの中から１つのセキュリティコンテナ又はサブコンテナに割り当てることと、を含み、少なくとも１つの方法工程が、前記プロセッサによって行われる、方法。
【請求項２】
前記アプリケーション及び前記仮想マシンは、少なくとも１つのファイルに具現化され、
前記特定されたワークロードを前記セキュリティコンテナ又はサブコンテナに割り当てることは、前記少なくとも１つのファイルを前記セキュリティコンテナ又はサブコンテナに書き込むことを含む、請求項１に記載の方法。
【請求項３】
前記セキュリティコンテナ又はサブコンテナは、１つ以上のセキュリティポリシーに従って、複数のワークロードを格納するように構成される、請求項１に記載の方法。
【請求項４】
前記仮想アプリケーションの所有者を判定することは、前記仮想アプリケーションの前記判定された所有者がどの組織に若しくは組織のどの部分に属するか、又は、前記判定された所有者が組織内でどの役割を有するかを判定することを含み、
前記セキュリティコンテナ又はサブコンテナは、ファイアウォールと、マルウェアからの保護とのうちの１つを指定するセキュリティポリシーを有する、請求項１に記載の方法。
【請求項５】
１組のルールにアクセスすることを更に含み、前記１組のルールの各ルールが、所有権条件、並びにセキュリティポリシー、前記セキュリティポリシーが付随したセキュリティコンテナ、又は前記セキュリティポリシーが付随したサブコンテナのうちの１つを指定し、前記特定されたワークロードを前記セキュリティコンテナに割り当てることは、前記１組のルールに更に基づく、請求項１に記載の方法。
【請求項６】
前記所有者は、ＩＰ（インターネットプロトコル）アドレスに基づいて判定される、請求項１に記載の方法。
【請求項７】
前記所有者は、ログオンＩＤ（識別情報）に基づいて判定される、請求項１に記載の方法。
【請求項８】
命令を有する有形の非一過性コンピュータ可読媒体であって、
前記命令は、プロセッサによって実行されると、前記プロセッサに、
仮想アプリケーションの所有者の判定を、前記仮想アプリケーションを開始する要求に応答して行うことであって、前記仮想アプリケーションはサーバから送達され、あたかもクライアント上にインストールされたかのように当該クライアント上で使用される、ことと、
前記仮想アプリケーションを開始する要求に応答して、アプリケーションと仮想マシンとに対応するワークロードを特定することと、
セキュリティポリシーに従い、かつ前記仮想アプリケーションの前記判定された所有者に基づいて、複数のセキュリティコンテナから１つのセキュリティコンテナ又はサブコンテナを選択することと、
前記特定されたワークロードを前記選択されたセキュリティコンテナ又はサブコンテナに割り当てることと、を含む方法を行わせる、有形の非一過性コンピュータ可読媒体。
【請求項９】
前記方法は、
前記判定された所有者がどの組織又は前記組織のどの部分に属するかを判定することを更に含み、前記セキュリティコンテナ又はサブコンテナを選択することは、前記判定された所有者が属する前記組織又は前記組織の前記部分に基づく、請求項８に記載のコンピュータ可読媒体。
【請求項１０】
前記方法は、
前記仮想アプリケーションの前記判定された所有者に基づいて複数のルールを情報に適用することを更に含み、前記セキュリティコンテナ又はサブコンテナを選択することは、前記複数のルールの適用した結果に基づき、前記複数のルールのそれぞれは、指定された組織又は前記組織の一部分からのワークロードの目的地として前記セキュリティコンテナのうちの１つ又は複数のサブコンテナのうちの１つを示す、請求項８に記載のコンピュータ可読媒体。
【請求項１１】
前記仮想アプリケーションの前記所有者の判定は、前記仮想アプリケーションを開始する要求と関連付けられたログオンＩＤ（識別情報）又はＩＰ（インターネットプロトコル）アドレスに基づいており、
前記特定されたワークロードを前記選択されたセキュリティコンテナ又はサブコンテナに割り当てることは、前記アプリケーション及び前記仮想マシンを具現化する少なくとも１つのファイルを前記セキュリティコンテナ又はサブコンテナに書き込むことを含む、請求項８に記載のコンピュータ可読媒体。
【請求項１２】
前記方法は、
前記複数のセキュリティコンテナのそれぞれを、複数のセキュリティポリシーのうちの１つと関連付けることを更に含む、請求項８に記載のコンピュータ可読媒体。
【請求項１３】
前記セキュリティコンテナの選択は、前記判定された所有者が属する組織に対する前記判定された所有者の役割に基づく、請求項８に記載のコンピュータ可読媒体。
【請求項１４】
セキュリティプロビジョニングシステムであって、
仮想アプリケーションを開始する指示を受信するように構成され、前記仮想アプリケーションに基づいてアプリケーションと仮想マシンとに対応するワークロードを判定するように構成され、かつ前記仮想アプリケーションを開始する指示の所有者を判定するように構成される、クラウド管理ツールであって、前記仮想アプリケーションはサーバから送達され、あたかもクライアント上にインストールされたかのように当該クライアント上で使用される、クラウド管理ツールと、
前記仮想アプリケーションを開始する前記指示に応答して、前記仮想アプリケーションを開始する前記指示の前記判定された所有者に基づき、かつセキュリティポリシーに基づいて、前記ワークロードを複数のセキュリティコンテナのうちの１つ又は前記複数のセキュリティコンテナにネスティングされた１つのサブコンテナに割り当てるように構成される、クラウドセキュリティオーケストレーションシステムと、を備え、前記クラウド管理ツール及び前記クラウドセキュリティオーケストレーションシステムのそれぞれが、プロセッサ、ハードウェアモジュール、又はファームウェアモジュールのうちの１つを含む、セキュリティプロビジョニングシステム。
【請求項１５】
前記セキュリティプロビジョニングシステムは前記サーバを更に含み、前記サーバには、前記クラウド管理ツール及び前記クラウドセキュリティオーケストレーションシステムが常在し、
前記サーバは、前記複数のセキュリティコンテナと関連付けられた複数のセキュリティポリシーを含むか又はそれと接続され、前記セキュリティポリシーのそれぞれが、セキュリティコンテナ又はサブコンテナのセキュリティ保護を指定し、
前記サーバは、複数のルールへのアクセスを有し、前記複数のルールのそれぞれが、条件及び前記複数のセキュリティポリシーのうちの１つを指定し、前記クラウドセキュリティオーケストレーションシステムは、前記複数のルール及び前記複数のセキュリティポリシーに従って前記ワークロードを割り当てるように構成される、請求項１４に記載のセキュリティプロビジョニングシステム。
【請求項１６】
前記複数のセキュリティコンテナのそれぞれが、ストレージメモリを含み、かつそれと関連付けられた複数のセキュリティポリシーのうちの１つを有する、請求項１４に記載のセキュリティプロビジョニングシステム。
【請求項１７】
前記クラウド管理ツール及び前記複数のセキュリティコンテナに接続され、仮想マシンを実装するように構成される、物理コンピューティングリソースを更に備える、請求項１４に記載のセキュリティプロビジョニングシステム。
【請求項１８】
前記クラウド管理ツールは、ＩＰ（インターネットプロトコル）アドレス又はログオンＩＤ（識別情報）に基づいて前記所有者を判定するように構成される、請求項１４に記載のセキュリティプロビジョニングシステム。
【請求項１９】
前記クラウドセキュリティオーケストレーションシステムは、前記複数のセキュリティコンテナのうちの前記１つを複数のルールのアプリケーションを介して判定するように構成され、前記複数のルールのそれぞれは、仮想アプリケーションの所有権の態様と、複数のセキュリティポリシーのうちの１つ又は前記複数のセキュリティコンテナのうちの１つとの関連付けを示す、請求項１４に記載のセキュリティプロビジョニングシステム。
【請求項２０】
前記クラウド管理ツール、前記クラウドセキュリティオーケストレーションシステム、及び前記仮想マシンは、ソフトウェア定義型ネットワーク（ＳＤＮ）で動作するように構成される、請求項１４に記載のセキュリティプロビジョニングシステム。
【発明の詳細な説明】
【背景技術】
【０００１】
ＳＤＮ（ソフトウェア定義型ネットワーク（software defined network））システムにおいてセキュリティポリシーを適用するための一般的な設計パターンとして、セキュリティコンテナが現れている。セキュリティコンテナは、関連するセキュリティポリシーを有するアプリケーション及びデータのコンテナである。コンテナは、物理的な計算、ネットワーキング、及びストレージを使用してネットワークセグメンテーションを伴う仮想化基盤として実装されるのが一般的である。セキュリティポリシーは、他のセキュリティ保護の中でもとりわけ、ファイアウォール及びアンチマルウェア保護を定義する。セキュリティコンテナの例としては、ＶＭｗａｒｅ  ＮＳＸにおけるＳｅｃｕｒｉｔｙ  Ｇｒｏｕｐ及びＣｉｓｃｏ  Ａｐｐｌｉｃａｔｉｏｎ  Ｃｅｎｔｒｉｃ  ＩｎｆｒａｓｔｒｕｃｔｕｒｅにおけるＥｎｄｐｏｉｎｔ  Ｇｒｏｕｐが挙げられる。
【発明の概要】
【発明が解決しようとする課題】
【０００２】
ＳＤＮシステムでは、手動で、即ち、管理者によって、例えば、ファイアウォール及びアンチマルウェア保護を有するセキュリティグループを定義することが一般的である。次いで、仮想アプリケーションが、アプリケーション及び仮想マシンと共に、手動、即ち管理者によって、ワークロードとしてセキュリティグループに展開される。仮想アプリケーションを手動、即ち管理者によってセキュリティグループに展開するプロセスは、時間がかかり、間違いが発生し易い。したがって、上述の欠点を克服する解決策が、当該技術分野で必要とされている。
【課題を解決するための手段】
【０００３】
一部の実施形態において、セキュリティプロビジョニングを自動化する方法が提供される。本方法は、仮想アプリケーションを開始する要求を受信すること、及び仮想アプリケーションの所有者を判定することを含む。本方法は、仮想アプリケーションに基づいてワークロードを判定することを含み、このワークロードは、アプリケーション及び仮想マシンを含む。ワークロードは、エンタープライズデータセンタで使用されている様々なプライベート及びパブリッククラウド（Ｖｍｗａｒｅ、ＯｐｅｎＳｔａｃｋ、及びＡＷＳクラウドなど）にわたる仮想アプリケーションの所有者、例えば、ビジネスユニット、テナント、並びにビジネスユニット及びテナントのサブグループに基づいて、複数のセキュリティコンテナのうちの１つのセキュリティコンテナ又はサブコンテナに割り当てられる。少なくとも１つの方法工程が、プロセッサによって行われる。
【０００４】
一部の実施形態において、プロセッサによって実行されるとプロセッサに方法を実行させる命令を有する有形の非一過性コンピュータ可読媒体が、提供される。この方法は、仮想アプリケーションを開始する要求に応答して、仮想アプリケーションの所有者を判定し、仮想アプリケーションを開始する要求に応答して、アプリケーション及び仮想マシンを有するワークロードを判定することを含む。この方法は、セキュリティポリシーに従い、かつ仮想アプリケーションの所有者に基づいて、複数のセキュリティコンテナから１つのセキュリティコンテナ又はサブコンテナを選択すること、及び選択したセキュリティコンテナ又はサブコンテナにワークロードを割り当てることを含む。
【０００５】
一部の実施形態において、セキュリティプロビジョニングシステムが提供される。セキュリティプロビジョニングシステムは、仮想アプリケーションを開始するための指示を受信するように構成された、クラウド管理ツールを含む。クラウド管理ツールは、仮想アプリケーションに基づいてアプリケーション及び仮想マシンを含むワークロードを判定するように構成され、かつ、仮想アプリケーションを開始する指示の所有者を判定するように構成される。このシステムは、仮想アプリケーションを開始する指示に応答して、仮想アプリケーションを開始する指示の所有者に基づき、かつセキュリティポリシーに基づいて、複数のセキュリティコンテナのうちの１つ又は複数のセキュリティコンテナにネスティングされたサブコンテナにワークロードを割り当てるように構成されたクラウドセキュリティオーケストレーションシステムを含む。クラウド管理ツール及びクラウドセキュリティオーケストレーションシステムのそれぞれが、プロセッサ、ハードウェアモジュール、又はファームウェアモジュールのうちの１つを含む。
【０００６】
実施形態の他の態様及び利点は、例えば、記載した実施形態の原理を示す添付図面と関連して行われる以下の詳細な説明から明白になるであろう。
【図面の簡単な説明】
【０００７】
説明した実施形態及びその利点は、添付図面と関連して行われる以下の説明を参照して最もよく理解され得る。これらの図面は、記載された実施形態の趣旨と範囲から逸脱することなく、記載された実施形態に対して当業者によって行われる形態と詳細のいかなる変更も制限しない。
【図１】一部の実施形態によるクラウド管理ツールと協働するクラウドセキュリティオーケストレーションシステムによるセキュリティコンテナ又はサブコンテナへのワークロードの割り当てを示す、セキュリティプロビジョニングシステム及び動作図である。
【図２】一部の実施形態による物理コンピューティングリソース及びストレージメモリを使用して実装されたセキュリティコンテナに接続された仮想マシンを示す、システム図である。
【図３】図１及び２に示される実施形態で実施されるか、又はそれによって実施され得る、セキュリティプロビジョニングを自動化する方法を示すフロー図である。
【図４】本明細書に記載の実施形態を実現することがある例示的なコンピューティングデバイスを示す説明図である。
【発明を実施するための形態】
【０００８】
セキュリティプロビジョニングシステムは、論理コンテナへのワークロードの自動化割り当てに基づいて、自動化セキュリティプロビジョニングを行う。論理コンテナは、セキュリティコンテナであり、マルチテナントクラウドであり得る。セキュリティコンテナへのワークロードの割り当ては、管理アイデンティティ及び役割に基づく。自動化セキュリティプロビジョニングはクラウド管理ツールによって行われ、この管理ツールは、図１〜４を参照して以下に説明されるように、ワークロードをセキュリティコンテナ又はサブコンテナに割り当てる、クラウドセキュリティオーケストレーションシステムと協働して、仮想アプリケーションの所有権を判定する。
【０００９】
図１は、クラウド管理ツール１０４と協働するクラウドセキュリティオーケストレーションシステム１０６による、セキュリティコンテナ１０８又はサブコンテナ１１０へのワークロード１１６の割り当てを示す、セキュリティプロビジョニングシステム及び動作図である。様々な実施形態において、クラウド管理ツール１０４、クラウドセキュリティオーケストレーションシステム１０６、及びセキュリティコンテナ１０８は、クラウド１０２に接続されており、このクラウドは、インターネットなどのグローバル通信ネットワーク又は別のネットワークであり得る。図１に示される実施形態では、クラウド管理ツール１０４、クラウドセキュリティオーケストレーションシステム１０６、及びセキュリティコンテナ１０８は、ネットワーク１２２によって一緒に接続されており、このネットワーク１２２は、エンタープライズにおけるイントラネット、エンタープライズ間を接続するインターネット若しくは他のネットワーク、クラウド１０２、又は様々な他の種類のネットワークであり得る。
【００１０】
図１に示される動作例では、アドミニストレータ１１２が、仮想アプリケーションの開始１１４を要求又は指示する。仮想アプリケーションは、物理コンピューティングリソース２１４を使用して仮想コンピューティング環境に実装されることになるが、これは、図２を参照して更に説明される。仮想アプリケーションを開始する要求又は指示は、クラウド１０２を通じて、クラウド管理ツール１０４へ、又はクラウド管理ツール１０４を介して送信される。即ち、要求又は指示は、クラウド管理ツール１０４を使用して作成され、クラウド１０２を通じて送信される。クラウド管理ツール１０４は、通常、仮想アプリケーションの起動又は開始のために適用され、その要求の受け入れ又は拒否を行い、仮想アプリケーションを適切なリソースに動かすことができる。クラウド管理ツール１０４の例としては、ｖＣｅｎｔｅｒ、ＶＭｗａｒｅのｖＣＡＣ、ＯｐｅｎＳｔａｃｋのＨｏｒｉｚｏｎ／Ｈｅａｔ、ＡＷＳ管理コンソール、及び他の市販のクラウド管理ツールが挙げられる。クラウド管理ツール１０４は、クラウドアプリケーションにおけるリソースを管理するために適用され、仮想アプリケーション開始１１４において示される仮想アプリケーションのためのワークロード１１６を判定することができる。例えば、ワークロード１１６は、データストアとして具現化された１つ以上のアプリケーション１１８、及びファイルとして具現化された１つ以上の仮想マシン１２０を含む。更なる例として、ワークロード１１６は、単一のファイルとして具現化されてもよい。
【００１１】
なおも図１を参照して、クラウド管理ツール１０４及びクラウドセキュリティオーケストレーションシステム１０６は、互いに通信する。一実施形態において、クラウド管理ツール１０４は、仮想アプリケーション開始１１４で示された仮想アプリケーションの所有者を判定し、この所有者に関する情報をクラウドセキュリティオーケストレーションシステム１０６に通信する。例えば、クラウド管理ツール１０４は、仮想アプリケーションの所有者のユーザＩＤ（識別、例えば、ログオンＩＤ）又はＩＰ（インターネットプロトコル）アドレス（例えば、仮想アプリケーション開始１１４が発行される場所のＩＰアドレス）を判定し、それをクラウドセキュリティオーケストレーションシステム１０６に渡すことができる。コンピューティングノードへのトラフィック管理を妨害する管理プロキシ（例えば、ＶＭｗａｒｅにおけるＥＳＸｉ、ＯｐｅｎＳｔａｃｋにおけるＮｏｖａ）は、特定の管理操作及びその操作を実行するのに使用されているアイデンティティを識別することができる。この操作は、例えば、ｖＡｐｐ（仮想アプリケーション）開始操作であり得る。アドミニストレータの組織上の役割は、ユーザＩＤ又はログオンＩＤから抽出することができる（例えば、ビジネスユニットの人間関係部署のシステムアドミニストレータ、ビジネスユニットの人間関係部署若しくはグループのウェブアドミニストレータ、エンジニアリングのシステムアドミニストレータ、又は財務ユニットのアドミニストレータ）。一部の実施形態において、組織上の役割は、Ｄａｔａ  Ｉｎｓｉｇｈｔなどの製品を使用して所有権を推測することができる仮想ワークロードにおけるファイル又はストレージオブジェクトのエンドユーザのアクセスパターンを確認することによって得ることができ、これらは、アプリケーションの所有権を判定するのに適用することができる。クラウドセキュリティオーケストレーションシステム１０６は、そのワークロードをクラウド管理ツール１０４から検出し、このアイデンティティ情報を使用してワークロード１１６を適切なセキュリティコンテナ１０８（例えば、ＶＭｗａｒｅ  ＮＳＸにおける人材の親コンテナ内のウェブサブコンテナ１１０）に割り当てることができる。選択されたセキュリティコンテナ１０８にワークロード１１６を展開することにより、ワークロード１１６は、対応する障害の検出、脆弱性管理、及びソフトウェア定義型ネットワークにより採用されるネットワークセグメンテーションポリシーを継承する。そのような動作は、必要に応じて行われ得るか、仮想アプリケーション開始１１４によってトリガされ得るか、又はポーチング、割り込み、若しくは本明細書の教示に従って容易に判定される他の機構に基づき得る。
【００１２】
図１を継続して、セキュリティコンテナ１０８は、様々な方式でグループ分けすることができ、例えば、クラウドストレージなど、１つの機器又は複数の機器に存在してもよい。例えば、セキュリティコンテナ１０８は、１つ以上のセキュリティコンテナ１０８が複数のテナントのそれぞれ専用となった、マルチテナントストレージメモリとして構築されてもよい。セキュリティコンテナ１０８のそれぞれが、１つ以上のセキュリティポリシーを有する。即ち、１つ以上のセキュリティポリシーが、セキュリティコンテナ１０８のそれぞれ及び／又はサブコンテナ１１０のそれぞれに割り当てられているか、又は関連付けられている。サブコンテナ１１０は、例えば、ネスト内にネスティングされるなど、セキュリティコンテナ１０８内で様々な深さにネスティングされてもよい。このセキュリティポリシーが、セキュリティコンテナ１０８、サブコンテナ１１０、及びその中に格納されたデータ（例えば、セキュリティコンテナ１０８又はサブコンテナ１１０のそれぞれにおける１つ以上のワークロード１１６）に提供又は適用されるセキュリティ保護を決める。
【００１３】
ワークロード１１６を割り当てるセキュリティコンテナ１０８又はサブコンテナ１１０を決定するために、クラウドセキュリティオーケストレーションシステム１０６は、ルールを適用するが、これは、図２を参照して更に説明される。再び図１を参照すると、仮想アプリケーションの所有者に基づいて、クラウドセキュリティオーケストレーションシステム１０６は、セキュリティコンテナ１０８又はサブコンテナ１１０を判定し、ワークロード１１６をセキュリティコンテナ１０８又はサブコンテナ１１０に割り当てる。ワークロード１１６は、次いで、セキュリティコンテナ１０８又はサブコンテナ１１０に展開される、即ち、アプリケーション（複数可）１１８及び仮想マシン（複数可）１２０を具現化するファイルが、選択されたセキュリティコンテナ１０８又はサブコンテナ１１０に書き込まれる。ワークロード１１６は、セキュリティポリシー（１つ又は複数）、並びにそのセキュリティコンテナ１０８又はサブコンテナ１１０の関連するセキュリティ保護を継承する。このようにして、クラウドセキュリティオーケストレーションシステム１０６は、仮想アプリケーションの所有者に基づいて仮想アプリケーションのセキュリティプロビジョニングを自動化する。
【００１４】
図２は、物理コンピューティングリソース２１４及びストレージメモリ２１２を使用して実装された、セキュリティコンテナ１０８に接続された仮想マシン１２０を示す、システム図である。セキュリティコンテナ１０８又はサブコンテナ１１０へのワークロード１１６の割り当てを誘導する、ルール２０２及びポリシー２０４に従って、セキュリティ保護が適用される。クラウド管理ツール１０４及びクラウドセキュリティオーケストレーションシステム１０６は、１つ以上のサーバ２１８で実行するソフトウェアモジュールとして、又はサーバ（複数可）２１８内に含まれるか若しくはそこに接続されたハードウェアも若しくはファームウェアモジュールとして、あるいはこれらの組み合わせとして、具現化されてもよい。ルール２０２及びポリシー２０４は、サーバ（複数可）２１８内若しくはそこに接続されたメモリに記憶されたリスト、テーブル、データベース、ソフトウェアコード、若しくは他のデータ構造として、又はサーバ（複数可）２１８内若しくはそこに接続されたハードウェア若しくはファームウェア、あるいはこれらの組み合わせとして具現化されてもよい。セキュリティコンテナ１０８は、ストレージメモリ２１２が実装された仮想ストレージとして具現化されてもよい。仮想マシン１２０は、仮想コンピューティング技術では一般的なように、それぞれの仮想マシン１２０に割り当てられる物理コンピューティングリソース２１４として具現化されてもよい。例えば、物理コンピューティングリソース２１４は、サーバ、プロセッサ、ローカルメモリ、ネットワークスイッチ若しくはルータを含んでもよく、これらの一部又は全てが、仮想マシン１２０を形成するように割り振られてもよい。図２では、仮想マシン１２０のそれぞれが、ワークロード１１６及び対応する仮想アプリケーション開始１１４に従ってそこで動作する１つ以上のアプリケーション１１８を伴って示されている。ユーザ２０６は、図２に示される実施形態では、仮想マシン１２０及びアプリケーション１１８にアクセスし、それとやり取りすることができる。仮想マシン１２０のうちの１つは、関連するセキュリティコンテナ１０８又はサブコンテナ１１０のセキュリティポリシー２０４に従ったセキュリティ保護としてファイアウォール２０８及びアンチマルウェア２１０を伴って示されている。例えば、ユーザ２０６は、ファイアウォール２０８及びアンチマルウェア２１０（例えば、様々な種類のセキュリティ保護ソフトウェア）を通じて仮想マシン１２０と通信し、通信を監視し、マルウェア（例えば、ウイルス、ハッカーの攻撃）を妨害する。
【００１５】
一部の実施形態では、セキュリティポリシー２０４が、どのセキュリティコンテナ１０８及びサブコンテナ１１０を、どのセキュリティ保護によって保護するかを示す。上述のように、セキュリティ保護は、ファイアウォール２０８、様々な種類のアンチマルウェア２１０、及び当該技術分野で既知の更なるセキュリティ保護を、様々な組み合わせで含み得る。ルール２０２は、仮想アプリケーション開始１１４において要求され、ワークロード１１６に示されている、仮想アプリケーションの所有者の態様に基づいて、セキュリティポリシー２０４に従ってセキュリティコンテナ１０８又はサブコンテナ１１０へのワークロード１１６の割り当てを指示する。これらの態様は、仮想アプリケーションの所有者がどの組織若しくは組織のどの部分に属するか、組織内で所有者がどの役割を有するか、又は所有権に関する他の態様を含んでもよい。ルール２０２の一部又は全てが、テナント特有のものであってもよい。例えば、ルール２０２は、ビジネスユニットの人材部（ＨＲ  ＢＵ）に属する所有者がワークロード１１６を第１のセキュリティ保護範囲により保護する必要があることを指定してもよく、この第１の保護範囲は、第１のセキュリティコンテナ１０８又はサブコンテナ１１０に割り当てられている。ルール２０２は、特定のテナントによって雇用されているか又は特定のテナントを表す所有者を起源とするアプリケーションが、ワークロード１１６を第２のセキュリティ保護範囲により保護する必要があることをしてしてもよく、この第２の保護範囲は、第２のセキュリティコンテナ１０８又はセキュリティコンテナグループ１０８に割り当てられている。ルール２０２は、組織及び／若しくは役割に関する１つ以上の条件、並びに／又は１つ以上の例外を指定し、どの条件及び例外の組み合わせが、どのポリシー２０４又はセキュリティコンテナ１０８若しくはサブコンテナ１１０に向けられているかを示すことができる。ルール２０２に指定される条件を満たし、例外を有さない所有者に属する、図１の仮想アプリケーション開始１１４からのワークロード１１６は、次いで、ルール２０２に従って指定された１つ以上のポリシー２０４を有するセキュリティコンテナ１０８又はサブコンテナ１１０に割り当てられることになる。様々な実施形態において、ルール２０２が、ポリシーを指定してもよく、別のテーブル又は他のデータ構造が、セキュリティコンテナ１０８又はサブコンテナ１１０がどのポリシー２０４を有するかを指定することができる。あるいは、ルール２０２が、セキュリティコンテナ１０８又はサブコンテナ１１０を直接ｔ指定してもよい。クラウドセキュリティオーケストレーションシステム１０６は、次いで、一部の実施形態では、セキュリティコンテナ１０８及び／又はサブコンテナ１１０を直接指定するいずれかのルール２０２にアクセスすることになる。クラウドセキュリティオーケストレーションシステム１０６は、ルール２０２及びポリシー２０４若しくはポリシーのリスト及びコンテナにアクセスして、適宜セキュリティコンテナ１０８及び／又はサブコンテナ１１０を判定することができる。上述のものの変化形は、本明細書の教示に従って容易に判定される。仮想アプリ���ーションの所有者に基づくセキュリティコンテナ１０８又はサブコンテナ１１０の選択は、したがって、ルール２０２及びポリシー２０４の様々な実施形態を有する。所有者に基づく選択は、他の可能性の中でもとりわけ、テナント、組織、及び／又は役割による選択を含み得る。
【００１６】
図１及び２を参照すると、１つ以上の仮想マシン１２０内に１つ以上のアプリケーション１１８を有するワークロード１１６として具現化された仮想アプリケーションが、選択されたセキュリティコンテナ１０８又はサブコンテナ１１０に展開されると、１つ以上の仮想マシン１２０のための物理コンピューティングリソース２１４が割り付けられる。この割り付けは、クラウド管理ツール１０４及び／又は他の仮想コンピューティング要素によって行われ得る。セキュリティ、例えば、上述のファイアウォール２０８及びアンチマルウェア２１０が、選択されたセキュリティコンテナ１０８又はサブコンテナ１１０のポリシー２０４（１つ又は複数）に従って設定される。１つ以上のアプリケーション１１８が、仮想マシン１２０にインストールされ、アプリケーション１１８が起動されると、仮想マシン１２０のメモリ内で実行され得る（即ち、仮想マシン１２０に割り当てられた物理コンピューティングリソース２１４を使用して実行される）。仮想アプリケーション開始１１４（図１を参照されたい）で要求又は誘導された仮想アプリケーションが作成され、仮想アプリケーションの所有権に基づいて自動でセキュリティがプロビジョニングされ、起動される。
【００１７】
図３は、図１及び２に示される実施形態で実施されるか、又はそれによって実施され得る、セキュリティプロビジョニングを自動化する方法を示すフロー図である。本方法の動作又はその変化形の一部又は全ては、クラウド管理環境又は仮想コンピューティング環境内のプロセッサ、より具体的にはクラウド管理ツール及び／又はクラウドセキュリティオーケストレーションシステムを動作させるプロセッサなど、プロセッサによって行われ得る。決定動作３０２では、仮想アプリケーションを開始させるかどうかが決定される。開始させないという回答だった場合、仮想アプリケーション開始は存在せず、フローは決定動作３０２へと戻る。更なる実施形態では、この動作は、他のどこに枝分かれしてもよく、仮想アプリケーション開始の検出に応答して、戻り得る。開始させるという回答だった場合、仮想アプリケーション開始が存在し、フローは動作３０４へと続く。動作３０４において、仮想アプリケーションの所有者が判定される。これは、図１及び図２を参照して上述されたように、ＩＰアドレス又はユーザＩＤに基づき得る。動作３０６において、ワークロードが判定される。ワークロードは、仮想アプリケーションを開始させる要求又は指示に基づくものであり、１つ以上のアプリケーション及び１つ以上の仮想マシンを含む。動作３０８において、所有者情報にルールが適用される。ルールは、所有権の態様を指定し、仮想アプリケーションの所有権の態様に基づいてポリシー又はセキュリティコンテナ若しくはサブコンテナを示す。動作３１０において、ルール及び所有者（即ち、所有者情報）に基づいて、セキュリティコンテナ又はサブコンテナが選択される。
【００１８】
図３の動作３１２において、ワークロードが、選択されたセキュリティコンテナ又はサブコンテナに割り当てられる。一部の実施形態では、ワークロードは、エンタープライズデータセンタで使用されている様々なプライベート及びパブリッククラウド（Ｖｍｗａｒｅ、ＯｐｅｎＳｔａｃｋ、及びＡＷＳクラウドなど）にわたる仮想アプリケーションの所有者、例えば、ビジネスユニット、テナント、並びにビジネスユニット及びテナントのサブグループに基づいて割り当てられる。動作３１２は、アプリケーション（複数可）及び仮想マシン（複数可）を具現化するファイルを、選択されたセキュリティコンテナ又はサブコンテナに書き込むことを含む。動作３１４において、ワークロードに従って、物理コンピューティングリソースが仮想マシン（複数可）に割り当てられる。動作３１４は、仮想コンピューティング環境において行われてもよい。動作３１６において、選択されたセキュリティコンテナ又はサブコンテナのポリシー（又は複数のポリシー）に従って、セキュリティが仮想マシン（複数可）に適用される。適適用されたセキュリティは、ファイアウォール、アンチマルウェア、攻撃検出、脆弱性管理、及び／又はネットワークセグメンテーションなどを含み得る。動作３１８において、ワークロードに従って仮想マシン（複数可）でアプリケーション（複数可）が起動される。
【００１９】
本明細書に記載の方法が、従来の汎用コンピュータシステムなどのデジタル処理システムで実行されてもよいことを理解されたい。あるいは、１つの機能のみを実行するように設計又はプログラムされた専用コンピュータが使用されてもよい。図４は、本明細書に記載の実施形態を実現し得る例示的なコンピューティングデバイスを示す説明図である。図４のコンピューティングデバイスは、一部の実施形態に従って、セキュリティコンテナ又はサブコンテナへのワークロードの割り当てに基づいてセキュリティプロビジョニングを自動化するための機能性の実施形態を行うために使用され得る。コンピューティングデバイスは、バス４０５を介してメモリ４０３に接続された中央処理装置（ＣＰＵ）４０１と、大容量記憶デバイス４０７とを含む。大容量記憶デバイス４０７は、フロッピーディスクドライブ又は固定ディスクドライブなどの永続的データ記憶デバイスを表し、これらは、一部の実施形態ではローカル又はリモートであり得る。大容量記憶デバイス４０７は、一部の実施形態では、バックアップ記憶を実現することができる。メメモリ４０３は、読み取り専用メモリ、ランダムアクセスメモリなどを含み得る。コンピューティングデバイスにあるアプリケーションは、一部の実施形態では、メモリ４０３又は大容量記憶デバイス４０７などのコンピュータ可読媒体を介して記憶又はアクセスされ得る。アプリケーションは、また、コンピューティングデバイスのネットワークモデムや他のネットワークインタフェースによってアクセスされる、変調された変調電子信号の形でもよい。一部の実施形態では、ＣＰＵ  ４０１が、汎用プロセッサ、専用プロセッサ、又は特別にプログラムされた論理回路で具現化されてもよいことを理解されたい。
【００２０】
ディスプレイ４１１は、バス４０５を介して、ＣＰＵ  ４０１、メモリ４０３及び大容量記憶デバイス４０７と通信する。ディスプレイ４１１は、本明細書に記載のシステムと関連付けられた任意の視覚化ツール又はレポートを表示するように構成されている。入出力デバイス４０９は、バス４０５に接続されて、コマンド選択における情報をＣＰＵ  ４０１に通信する。外部デバイス間のデータが入出力デバイス４０９を介して通信されてもよいことを理解されたい。ＣＰＵ  ４０１は、図１〜３を参照して記載される機能性を可能にするために、本明細書に記載される機能性を実行するように定義されてもよい。この機能を具現化するコードは、一部の実施形態では、ＣＰＵ  ４０１などのプロセッサによって実行するためにメモリ４０３又は大容量記憶デバイス４０７内に記憶されてもよい。コンピューティングデバイス上のオペレーティングシステムは、ＭＳ  ＤＯＳ（商標）、ＭＳ−ＷＩＮＤＯＷＳ（商標）、ＯＳ／２（商標）、ＵＮＩＸ（商標）、ＬＩＮＵＸ（商標）、又は他の既知のオペレーティングシステムであってもよい。本明細書に記載の実施形態が、仮想化コンピューティングシステムと一体化されてもよいことを理解されたい。
【００２１】
詳細な説明的な実施形態は、本明細書に開示される。しかしながら、本明細書に開示された特定の機能的詳細は、実施形態を記載するための代表に過ぎない。しかしながら、実施形態は、多くの代替形態で具現化されてもよく、本明細書で説明された実施形態のみに限定されるように解釈されるべきでない。
【００２２】
第１、第２などの用語は、本明細書では、様々な工程又は計算を説明するために使用されることがあり、そのような工程又は計算は、これらの用語によって限定されるべきでないことを理解されたい。これらの用語は、ある工程又は計算を別のものと区別するためにのみ使用される。例えば、本開示の範囲から逸脱せずに、第１の計算を第２の計算と呼ぶことができ、同様に第２の工程を第１の工程と呼ぶことができる。本明細書で使用されるとき、用語「及び／又は（and/or）」と記号「／」は、関連したリスト項目のいずれか及び１つ以上の全ての組み合わせを含む。
【００２３】
本明細書で使用されるとき、単数形「ａ」、「ａｎ」及び「ｔｈｅ」は、文脈で特に明示されない限り、複数形も含むように意図される。更に、用語「備える」、「備えること」、「含む」、及び／又は「含むこと」が、本明細書で使用されるとき、述べられた特徴、整数、工程、動作、要素、及び／又は構成要素の存在を明示するが、１つ以上の他の特徴、整数、工程、動作、要素、構成要素、及び／又はそのグループの存在又は追加を除外しないことを理解されよう。したがって、本明細書で使用される用語は、特定の実施形態を説明するためだけのものであり、限定するものではない。
【００２４】
また、一部の代替実施態様では、示された機能／行為は、図に示された順序以外で行われてもよいことに注意されたい。例えば、連続的に示された２つの図が、実際には、含まれる機能／行為に応じて、実質的に同時に実行されてもよく、逆の順序で実行されてもよい。
【００２５】
上記の実施形態を考慮すると、実施形態が、コンピュータシステムに記憶されたデータに関係する様々なコンピュータ実施動作を用いることがあることを理解されたい。これらの動作は、物理量の物理的操作を必要とするものである。必須ではないものの、通常、これらの量は、記憶し、転送し、組み合わせ、比較し、また別の形で操作することができる、電気信号又は磁気信号の形態をとる。更に、行われる操作は、作成、識別、決定、比較などの用語で参照されることがある。実施形態の一部を構成する本明細書に記載された動作はいずれも、有用な機械動作である。実施形態は、これらの動作を行うためのデバイス又は装置にも関する。装置は、特に、必要とされる目的のために構成されてもよく、又は装置は、コンピュータに記憶されたコンピュータプログラムによって選択的に起動又は構成される汎用コンピュータでもよい。詳細には、本明細書の教示に従って記述されたコンピュータプログラムと共に様々な汎用マシンを使用することができ、必要な動作を実行するためにより特殊な装置を構成したほうが好都合なことがある。
【００２６】
モジュール、アプリケーション、レイヤ、エージェント、又は他の方法で実行可能なエンティティは、ハードウェア、プロセッサ実行ソフトウェア、又はこれらの組み合わせとして実現されてもよい。ソフトウェアベースの実施形態が本明細書に開示される場合、ソフトウェアが、コントローラなどの物理的マシンで具現化されてもよいことを理解されたい。例えば、コントローラは、第１のモジュール及び第２のモジュールを含んでもよい。コントローラは、例えば、方法、アプリケーション、レイヤ、又はエージェントの様々な動作を実行するように構成されていてもよい。
【００２７】
これらの実施形態はまた、有形の非一過性コンピュータ可読媒体上のコンピュータ可読コードとして具現化されてもよい。コンピュータ可読媒体は、後でコンピュータシステムが読み取ることができるデータを記憶できる任意のデータ記憶デバイスである。コンピュータ可読媒体の例としては、ハードディスク、ネットワーク接続ストレージ（ＮＡＳ）、読み取り専用メモリ、ランダムアクセスメモリ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、並びに他の光学及び非光学データ記憶デバイスが挙げられる。コンピュータ可読媒体は、コンピュータ可読コードが分散式に記憶され実行されるように、ネットワーク接続されたコンピュータシステムに分散されてもよい。本明細書に記載された実施形態は、携帯端末デバイス、タブレット、マイクロプロセッサシステム、マイクロプロセサベース又はプログラム可能な民生用電子機器、ミニコンピュータ、メインフレームコンピュータなどを含む様々なコンピュータシステム構成で実施されてもよい。実施形態は、また、有線又は無線ネットワークによって連結されたリモート処理デバイスによってタスクが実行される分散コンピューティング環境で実施され得る。
【００２８】
方法動作を特定の順序で記載しているが、記載された動作の間に他の動作を行ってもよく、記載された動作が、わずかに異なる時間で行われるように調整されてもよく、記載された動作が、処理と関連付けられた様々な間隔で処理動作を行うことを可能にするシステム内で分散されてもよいことを理解されたい。
【００２９】
様々な実施形態において、本明細書に記載される方法及び機構の１つ以上の部分は、クラウドコンピューティング環境の一部をなし得る。そのような実施形態では、リソースが、１つ以上の様々なモデルによるサービスとしてインターネットを介して提供され得る。そのようなモデルとしては、サービスとしての基盤（Infrastructure as a Service）（ＩａａＳ）、サービスとしてのプラットフォーム（Platform as a Service）（ＰａａＳ）、及びサービスとしてのソフトウェア（Software as a Service）（ＳａａＳ）を挙げることができる。ＩａａＳでは、コンピュータ基盤は、サービスとして送達される。そのような場合には、コンピューティング機器は、通常、サービスプロバイダによって所有され、操作されている。ＰａａＳモデルでは、開発者がソフトウェアソリューション開発に使用するソフトウェアツール及び基本機器は、サービスとして提供され、サービスプロバイダによってホストされ得る。ＳａａＳは、典型的に、サービスプロバイダライセンシングソフトウェアをオンデマンドサービスとして含んでいる。サービスプロバイダは、ソフトウェアをホストし得るか、又はソフトウェアを所定の期間の間顧客に展開し得る。上述のモデルの多数の組み合わせが可能であり、かつ企図される。
【００３０】
様々なユニット、回路、又は他の構成要素が、タスク（１つ又は複数）を行う「ように構成される」として記載又は特許請求されている。そのような文脈において、「ように構成される」とは、ユニット／回路／構成要素が、動作中にタスク（１つ又は複数）を行う構造（例えば、回路機構）を含むと示すことにより、構造を含んで使用される。そのため、ユニット／回路／構成要素は、指定されたユニット／回路／構成要素が現在動作中でない（例えば、電源が入っていない）場合であっても、タスクを行うように構成されると言うことができる。「ように構成される」という言い回しで用いられるユニット／回路／構成要素には、ハードウェア、例えば、回路、動作を実行するためのプログラム命令を記憶しているメモリなどが含まれる。ユニット／回路／構成要素が１つ以上のタスクを行う「ように構成される」ことへの言及は、そのユニット／回路／構成要素に関して、米国特許法１１２条第６項を行使しないことが明示的に意図される。更に、「ように構成される」には、ソフトウェア及び／又はファームウェア（例えば、ＦＰＧＡ又はソフトウェアを実行する汎用プロセッサ）によって問題のタスク（複数可）を行うことができる様式で動作するように操作される一般的な構造（例えば、一般的な回路機構）が含まれ得る。「ように構成される」には、１つ以上のタスクを実装又は実行するように適合されるデバイス（例えば、集積回路）を製造するように、生産プロセス（例えば、半導体製造設備）を適合することも含む。
【００３１】
以上の説明は、説明のために、特定の実施形態を参照して記載されている。しかしながら、上述の例示的な考察は、包括的であること、又は本発明を開示される正確な形態に限定することを意図するものではない。上述の教示を考慮して、多くの修正及び変形が可能である。実施形態は、実施形態の原理及びその実際の用途を最も良く説明するために選択かつ記載され、それにより、他の当業者が、企図される特定の用途に好適であり得る実施形態と様々な修正を最大限に利用することを可能にする。したがって、この実施形態は、説明的であり非限定的なものとして解釈されるべきであり、本発明が本明細書に示された詳細に限定されないが、添付の特許請求の範囲及び等価物内で修正され得る。
【図１】
0006381783.tif 000002
【図２】
0006381783.tif 000003
【図３】
0006381783.tif 000004
【図４】
0006381783.tif 000005