JP6581651B2 - マルチテナント環境においてセキュアなネットワーク通信のために統合型ファイアウォールを提供するためのシステムおよび方法 - Google Patents

マルチテナント環境においてセキュアなネットワーク通信のために統合型ファイアウォールを提供するためのシステムおよび方法 Download PDF

Info

Publication number
JP6581651B2
JP6581651B2 JP2017513238A JP2017513238A JP6581651B2 JP 6581651 B2 JP6581651 B2 JP 6581651B2 JP 2017513238 A JP2017513238 A JP 2017513238A JP 2017513238 A JP2017513238 A JP 2017513238A JP 6581651 B2 JP6581651 B2 JP 6581651B2
Authority
JP
Japan
Prior art keywords
database
access
database service
consumer
access control
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.)
Active
Application number
JP2017513238A
Other languages
English (en)
Other versions
JP2017528832A (ja
JP2017528832A5 (ja
Inventor
マクハーバクス,バディム
ムソー,リチャード・ピィ
ヨンセン,ビョルン・ダグ
チャタルジー,スマンタ
パント,アブニーシュ
ドゥ・ラバレーヌ,ジャン
パテル,カント・シィ
マトゥル,バスカー
カーン,フェロズ・アラム
レグナ,スディープ・バサナス
Original Assignee
オラクル・インターナショナル・コーポレイション
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 オラクル・インターナショナル・コーポレイション filed Critical オラクル・インターナショナル・コーポレイション
Publication of JP2017528832A publication Critical patent/JP2017528832A/ja
Publication of JP2017528832A5 publication Critical patent/JP2017528832A5/ja
Application granted granted Critical
Publication of JP6581651B2 publication Critical patent/JP6581651B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0236Filtering by address, protocol, port number or service, e.g. IP-address or URL
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0254Stateful filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/101Access control lists [ACL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1458Denial of Service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Description

著作権表示:
本特許文献の開示の一部には、著作権保護の対象となるものが含まれている。著作権者は、この特許文献または特許開示の何者かによる複製が、特許商標庁の特許ファイルまたは記録にある限り、それに対して異議を唱えないが、そうでなければ、いかなる場合もすべての著作権を留保する。
発明の分野:
本発明は概してコンピュータシステムに関し、特にネットワーク環境においてセキュアな通信を提供することに関する。
背景:
相互接続ネットワークは、次世代のスーパーコンピュータ、クラスタ、およびデータセンターに有益な役割を果たす。より大型のクラウドコンピューティングアーキテクチャが導入されるにつれて、旧来のネットワークおよびストレージと関連しているパフォーマンスおよび管理ボトルネックが重要な問題となっている。次世代データセンターは、アプリケーションをホストするための複数のコンピュートノードを有するミドルウェアマシンシステムを含み得る。そのようなミドルウェアマシンシステムの一例は、Oracle(登録商標)Exalogicコンピュータアプライアンスである。次世代データセンターは、データベースサーバシステムをさらに含み得る。データベースサーバシステムの一例は、Oracle(登録商標)Exadataデータベースマシンである。ミドルウェアマシンシステムはデータベースサーバシステムと連携して働く。データベースサーバシステムに格納されているデータは、ミドルウェアマシンシステムにおけるコンピュータオペレーションのために用いられて取出され、ミドルウェアマシンシステムにおいて生成または修正されたデータはデータベースサーバシステムに格納される。したがって、ミドルウェアマシンシステムとデータベースサーバシステムとの間の接続は高信頼性、高速、低レイテンシおよび高帯域幅で低プロトコルオーバーヘッドであることが重要である。たとえば、インフィニバンド(InfiniBand)(IB)技術は、クラウドコンピューティングファブリックの基礎としてますます展開されつつある。インフィニバンドは、とりわけ、ミドルウェアマシンシステムとデータベースサーバシステムとの間のリモートダイレクトメモリアクセス(remote direct memory access:RDMA)オペレーションをサポート可能なスイッチドファブリックトポロジを用いる接続ベースの通信プロトコルである。
しかし、データセンターは複数のテナントによって共有されることが多い。複数のテナントは、たとえば、クラウドコンピューティング環境における異なる企業体であり得る。データセンターが単一の企業体に専用である場合でも、財務、人事、技術などの異なる部門の形態で複数のテナントが存在し得、当該部門は他の部門に対して非公開にしておかなければならないデータを所有している。マルチテナント環境では、データがセキュアであり、許可テナントおよび関連ユーザにとってはアクセス可能であるが無許可テナントおよび関連ユーザにとってはアクセス不可能であることが重要または必要である。同様に、ミドルウェアマシンシステム内のアプリケーションは特定のテナントに関連付けられているため、データベースサーバシステム内のデータは一定のアプリケーションにとってはアクセス可能であるが他のアプリケーションにとってはアクセス不可能であるべきである。
データを不正アクセスから保護する従来の方法は、ファイアウォールアプライアンスの使用である。イーサネット(Ethernet)(登録商標)ファイアウォールアプライアンスなどのファイアフォールアプライアンスが、共有のイーサネット媒体内にあるミドルウェアマシンシステムとデータベースサーバシステムとの間に配置され得る。ファイアウォールアプライアンスは、そのようなサービスについてのポートを許可テナントおよびそれらの関連付けられたアプリケーションにとって利用可能とし、無許可テナントおよびそれらの関連付けられたアプリケーションにとっては利用不可能とするデータベースサービスへのアクセスを制御する。しかし、そのようなファイアウォールアプライアンスの使用は、ミドルウェアマシンシステムとデータベースサーバシステムとの間の直接接続を必然的に妨げ、間接接続に対するボトルネックとなる。現在利用可能なインフィニバンドファイアウォールアプライアンスはない。したがって、ファイアウォールが必要である/指定される場合、従来のイーサネットファイアウォールアプライアンス(など)を使用すべきである。しかし、従来のイーサネットファイアウォールアプライアンスの使用は付加的なネットワーキングオーバーヘッドを導入し、システムのスケーラビリティを制限するボトルネックを作成する。従来のイーサネットファイアウォールアプライアンスの使用は、インフィニバンドなどの高速接続ベースのスイッチドファブリックの使用と、そのような接続ベースのスイッチドファブリックがミドルウェアマシンシステムとデータベースサーバシステムとの間で実行されるオペレーションに提供する最適化とを不可能にする。
中間ノードを用いてセキュリティを提供するミドルウェアおよびアプリケーション実行システムのためのエンジニアド・システムにおいてデータフローを提供および制御するための先行のシステムおよび方法は、2014年8月25日に出願され「SYSTEM AND METHOD FOR PROVIDING A DATA SERVICE IN AN ENGINEERED SYSTEM FOR MIDDLEWARE AND APPLICATION EXECUTION(ミドルウェアおよびアプリケーションの実行のためにエンジニアド・システムにおいてデータサービスを提供するためのシステムおよび方法)」と題された米国特許出願番号第14/467859号、2014年8月25日に出願され「SYSTEM AND METHOD FOR CONTROLLING A DATA FLOW IN AN ENGINEERED SYSTEM FOR MIDDLEWARE AND APPLICATION EXECUTION(ミドルウェアおよびアプリケーションの実行のためにエンジニアド・システムにおいてデータフローを制御するためのシステムおよび方法)」と題された米国特許出願番号第14/467860号、2014年8月25日に出願され「SYSTEM AND METHOD FOR SUPPORTING DATA SERVICE ADDRESSING IN AN ENGINEERED SYSTEM FOR MIDDLEWARE AND APPLICATION EXECUTION(ミドルウェアおよびアプリケーションの実行のためにエンジニアド・システムにおいてデータサービスアドレス指定をサポートするためのシステムおよび方法)」と題された米国特許出願番号第14/467868号、および2014年8月25日に出願され「SYSTEM AND METHOD FOR SUPPORTING HOST CHANNEL ADAPTER (HCA) FILTERING IN AN ENGINEERED SYSTEM FOR MIDDLEWARE AND APPLICATION EXECUTION(ミドルウェアおよびアプリケーションの実行のためにエンジニアド・システムにおいてホストチャネルアダプタ(HCA)フィルタリングをサポートするためのシステムおよび方法)」と題された米国特許出願番号第14/467896号に記載されており、上記出願は本明細書に引用により援用される。しかし、中間ノードを用いると、レイテンシおよび通信チャネルに対するオーバーヘッドが必然的に増加する。これらの出願では、一般適用性を有するファイアウォールアプライアンスが記載されている。しかし、中間ノードは2つのエンドポイント同士の間を移動する各パケットを受信および処理するため、当該ソリューションは余分なネットワーキングオーバーヘッドを必要とし、レイテンシおよびスケーラビリティ問題に影響を与える。加えて、パケット毎に必要な処理に鑑みて、システムは、オーバーヘッド、レイテンシ、およびスケーラビリティの影響と相対的に、どれほどのディープパケット処理が行なわれるかについてのトレードオフを行なう。
標準的なファイアウォールアプライアンスを用いて本発明の開示に記載されているのと同様のソリューションを提供するためには、本発明の開示に記載されているように、各接続の状態、および、この接続と、たとえばデータベースサービスなどの特有のアプリケーション層構造との関連付けを追跡する必要があるであろう。
したがって、マルチテナント環境においてデータのセキュリティを保証するセキュリティソリューションを提供しつつ、中間ファイアウォールアプライアンスおよび/または中間ノードの従来の使用によって提起される不利点を克服することが望ましいであろう。
概要:
マルチテナント環境においてデータのセキュリティを保証するセキュリティソリューションを提供しつつ、中間ファイアウォールアプライアンスの従来の使用によって提起される不利点を克服するシステムおよび方法が本明細書に記載される。本明細書に記載されるセキュリティソリューションは必然的に中間ファイアウォールアプライアンスの使用を回避し、ミドルウェアマシンシステムとデータベースサーバシステムとの間のボトルネックのない直接接続を可能にする。当該セキュリティソリューションによって、ミドルウェアマシンシステムとデータベースサーバシステムとをリンクするインフィニバンドなどの高速接続ベースのスイッチドファブリックの使用と、そのような接続ベースのファブリックがミドルウェアマシンシステムとデータベースサーバシステムとの間で実行されるオペレーションに提供し得る最適化とが可能になる。ミドルウェアマシンシステム内のノードおよびデータベースサーバシステム内のノードは、中間ファイアウォールアプライアンスまたはコンピューティングノードを全く通過することなく、スイッチドファブリック内の1つ以上のスイッチを介して直接接続され得る。当該セキュリティソリューションは、SR−IOV技術によって提供される最適化を含む、そのような直接接続によって可能となる広範囲の最適化をシステムが利用することができる態様で動作する。
いくつかの実施形態では、本開示では、複数のデータベースサービスを提供するデータベースサーバを、各々が異なるデータベースサービスコンシューマアイデンティティを有するデータベースサービスコンシューマをホストするアプリケーションサーバに直接接続する接続ベースのスイッチドファブリックを有するマルチテナント環境においてセキュリティを提供する統合型ファイアウォールが記載される。各データベースサーバに統合されるファイアウォール機能は、データベースサービスコンシューマアイデンティティを含んでいない通信パケットを破棄し、データベースサービスコンシューマアイデンティティを、データベースサービスコンシューマからデータベースサービスへのアクセスを制御するためのアクセス制御リストと組合せて用いることによって、アクセス制御を提供する。アクセス制御は、上記アクセス制御リストに基づくアドレス解決アクセス制御、接続確立アクセス制御、およびデータ交換アクセス制御を含む。統合型ファイアウォールによって、別個の中間ファイアウォールアプライアンスまたはセキュリティノードを必要とせずに提供するインフィニバンドネットワークを介してデータベースサーバおよびアプリケーションサーバの直接接続が可能になる。統合型ファイアウォールによって、システムは、(許可されている場合)コンシューマからデータベースサービスへの直接ネットワーキングハードウェアアクセスを提供するSR−IOV技術を利用することができる。
いくつかの実施形態では、本開示では、接続ベースのファブリック、異なるテナントに関連付けられているデータを保持しているストレージセル、上記データを用いて複数のデータベースサービスを提供するデータベースサーバ、データベースサービスコンシューマをホストするアプリケーションサーバを含むマルチテナント環境においてセキュアな通信を提供する完全なセキュリティソリューションが記載される。ファブリックは、ストレージセルをデータベースサービスコンシューマから分離する複数のパーティションに構成される。固有のデータベースサービスコンシューマアイデンティティが各データベースサービスコンシューマとセキュアに関連付けられている。セキュリティソリューションは、コンシューマ識別子がデータベースサービスコンシューマとデータベースサーバとの間のすべての通信に含まれるように構成される。データベースサーバは、アイデンティティを含んでいないデータベースサービスコンシューマからのすべての通信を拒否する。データベースサーバは、アクセス制御リストを通信パケット内に提供されるアイデンティティと組合せて用い、アドレス解決アクセス制御、接続確立アクセス制御、およびデータ交換アクセス制御の1つ以上を用いてデータベースサービスコンシューマからデータベースサービスへのアクセスを制御する。パケットに含まれているコンシューマアイデンティティに基づいて、サービス拒否(Denial of Service:DoS)攻撃防止も実行され得る。セキュリティソリューションによって、別個の中間ファイアウォールアプライアンスまたはセキュリティノードを必要とせずにファイアウォール機能を提供するインフィニバンドネットワークを介してデータベースサーバおよびアプリケーションサーバの直接接続が可能になる。
いくつかの実施形態では、本開示では、ネットワーク環境においてセキュアな通信を提供可能なシステムおよび方法が記載される。ネットワーク上のマルチテナント環境などのネットワーク環境は、1つ以上のサービスプロバイダノード、1つ以上のサービスコンシューマノード、および1つ以上のストレージセルを含み得る。上記1つ以上のサービスプロバイダノードは、上記1つ以上のサービスプロバイダノードと上記1つ以上のサービスコンシューマノードとの間のセキュアな通信を保証し得る。さらに、ネットワーク環境は、上記1つ以上のサービスプロバイダノードに関連付けられている1つ以上のストレージセルを、上記1つ以上のサービスコンシューマノードから分離し得る。加えて、ネットワーク環境は、上記1つ以上のサービスコンシューマノード上の1つ以上の仮想マシン(VM)に、上記1つ以上のサービスプロバイダノード上で実行される1つ以上のサービスプロバイダインスタンスへのセキュアなアクセスを提供し得る。
いくつかの実施形態では、本開示では、ネットワーク環境においてセキュアな通信を影響するための方法であって、ネットワーク環境において1つ以上のサービスプロバイダノードを介して、上記1つ以上のサービスプロバイダノードと1つ以上のサービスコンシューマノードとの間のセキュアな通信を保証することと、上記1つ以上のサービスプロバイダノードに関連付けられている1つ以上のストレージセルを上記1つ以上のサービスコンシューマノードから分離することと、上記1つ以上のサービスコンシューマノード上の1つ以上の仮想マシン(VM)に、上記1つ以上のサービスプロバイダノード上で実行される1つ以上のサービスプロバイダインスタンスへのセキュアなアクセスを提供することとを含む方法が記載される。
本発明のこれらおよび他の目的および利点は、添付の図面を考慮して読まれると、さまざまな実施形態の以下の説明から当業者に明らかになるであろう。
発明のさまざまな実施形態が、以下の図に基づいて以下に詳細に記載される。
本発明の実施形態に従う、ネットワーク環境においてセキュアな通信を提供する例を示す図である。 本発明の実施形態に従う、スイッチドネットワーキングファブリックによってミドルウェアマシンシステムに接続されるデータベースサーバシステムを有する統合システム内のアクセス制御を示す図である。 本発明の実施形態に従う、スイッチドネットワーキングファブリックによってミドルウェアマシンシステムのコンピュートノードに接続されるデータベースサーバシステムのデータベースノード内のアクセス制御を示す図である。 本発明の実施形態に従う、ミドルウェアマシンシステムのコンピュートノード上の仮想マシンからの通信パケットにソース識別子をセキュアに埋込むためのシステムおよび方法の局面を示す図である。 本発明の実施形態に従う、ミドルウェアマシンシステムのコンピュートノード上の仮想マシンからの通信パケットにソース識別子をセキュアに埋込むためのシステムおよび方法の局面を示す図である。 本発明の実施形態に従う、ミドルウェアマシンシステムのコンピュートノード上の仮想マシンからの通信パケットにソース識別子をセキュアに埋込むためのシステムおよび方法の局面を示す図である。 本発明の実施形態に従う、アクセス制御リストを示す図である。 本発明の実施形態に従う、図5Aのアクセス制御リストを作成、更新および配布するためのシステムおよび方法を示す図である。 本発明の実施形態に従う、図5Aのアクセス制御リストを作成、更新および配布するためのシステムおよび方法を示す図である。 本発明の実施形態に従う、図5Aのアクセス制御リストに基づいてデータベースノードにおいて実行される接続確立アクセス制御およびデータ交換制御の局面を示す図である。
詳細な説明:
ネットワーク環境においてセキュアな通信を提供し得るシステムおよび方法が本明細書に記載される。ネットワーク上のマルチテナント環境などのネットワーク環境は1つ以上のサービスプロバイダノード、1つ以上のサービスコンシューマノード、および1つ以上のストレージセルを含み得る。上記1つ以上のサービスプロバイダノードは、上記1つ以上のサービスプロバイダノードと上記1つ以上のサービスコンシューマノードとの間のセキュアな通信を保証し得る。さらに、ネットワーク環境は、上記1つ以上のサービスプロバイダノードに関連付けられている1つ以上のストレージセルを、上記1つ以上のサービスコンシューマノードから分離し得る。加えて、ネットワーク環境は、上記1つ以上のサービスコンシューマノード上の1つ以上の仮想マシン(VM)に、上記1つ以上のサービスプロバイダノード上で実行される1つ以上のサービスプロバイダインスタンスへのセキュアなアクセスを提供し得る。
以下の説明では、本発明は添付の図面の図中で限定としてではなく一例として説明される。本開示におけるさまざまな実施形態の参照は必ずしも同一の実施形態についてではなく、そのような参照は少なくとも1つを意味する。特有の実装が論じられるが、これは例示のためにのみ提供されていると理解される。関連技術の当業者は、本発明の範囲および精神から逸脱することなく他の構成要素および構成も用いられ得ると認識するであろう。
さらに、いくつかの例では、本発明の完全な説明を提供するために多数の具体的な詳細が示される。しかし、本発明はこれらの具体的な詳細がなくても実践され得ることが当業者に明らかになるであろう。他の例では、本発明を曖昧にするのを避けるために周知の特徴はそれほど詳細に記載されていない。
本発明は、特定された機能の実行およびそれらの関係を示す機能的構築ブロックの助けを借りて記載されている。説明の便宜上、これらの機能的構築ブロックの境界は本明細書においてしばしば任意に規定されてきた。したがって、同一の要素によって実行されると示されている機能は、代替的な実施形態では異なる要素によって実行されてもよい。また、別個の要素内で実行されると示されている機能は、代わりに組合わされて1つの要素にされてもよい。特定された機能およびそれらの関係が適切に実行される限り、代替的な境界を規定することができる。このため、そのようないかなる代替的な境界も、本発明の範囲および精神に含まれる。
図面および詳細な説明全体にわたって同様の要素を示すために共通の参照番号が用いられている。したがって、ある図中に用いられている参照番号は、当該要素が他の場所で記載されている場合、そのような図面に特有の詳細な説明において言及され得るか、または言及され得ない。3桁の参照番号の最初の桁は、当該要素が最初に現われる一連の図面を示す。
以下の説明において、いくつかの実施形態では、インフィニバンドファブリックによってOracle(登録商標)Exadataデータベースサーバシステムに接続されるOracle(登録商標)Exalogicミドルウェアマシンを有するシステムが記載される。しかし、当業者は、本発明は本発明の範囲から逸脱することなく多くの高パフォーマンスコンピューティング環境に適用可能であると理解するであろう。さらに、インフィニバンドファブリックによってOracle(登録商標)Exadataデータベースサーバシステムに接続されるOracle(登録商標)Exalogicミドルウェアマシンの多数の具体的な詳細が本発明の完全な説明を提供するために記載されるが、本発明はこれらの具体的な詳細がなくても実践され得ることが当業者に明らかになるであろう。したがって、本発明を具体化しているマルチテナントコンピューティング環境の特定の実装は、いくつかの実施形態では、本発明の範囲から逸脱することなく、一定の特徴を除外し得、および/または以下に記載されるミドルウェアマシン、データベースサーバシステムおよびインフィニバンドファブリックの特徴とは異なる、もしくは修正された特徴を含み得る。
図1は、本発明の実施形態に従う、ネットワーク環境においてセキュアな通信を提供するためのシステムおよび方法を概要を示す。図1に示されるように、マルチテナント環境100はインフィニバンド(IB)サブネット110に基づき得る。IBサブネット110は、1つ以上のサービスプロバイダ(たとえばデータベースノード102)、1つ以上のサービスコンシューマ(たとえばコンピュートノード101上の仮想マシン)、および1つ以上のストレージセル103を含む。典型的なシステムは、インフィニバンドサブネット101によって接続される多数の同様のデータベースノード102、コンピュートノード101およびストレージセル103を含むことになる。
図1に示されるように、マルチテナント環境100は、データベースノード102に依拠して、ファイアウォール機能を実行し、かつ、コンピュートノード101上の仮想マシン111および112とデータベースノード102上のデータベースインスタンス103との間のセキュアな通信を提供し得る。トラステッドセキュリティドメインと見なされるデータベースノード102は、コンピュートノード101上の仮想マシンよりもセキュアである傾向がある。加えて、マルチテナント環境100はストレージセル103をコンピュートノード101上の仮想マシンから分離することができ、すなわち、ストレージセル103にはデータベースノード102のみがアクセス可能であり得、コンピュートノード101上の仮想マシンはアクセス不可能である。
本発明の実施形態に従うと、マルチテナント環境100をサポートするIBサブネット110は異なるパーティションを用いて構成され得る。たとえば、ストレージセル103へのアクセスは専用のIBパーティションを介して分離され得るため、ストレージセル103はコンピュートノード101上の仮想マシンにとってビジブルでない場合がある。加えて、データベースノード102へのアクセスは別の専用のパーティションを介して分離され得るが、データベースノード102はコンピュートノード101上で実行されるすべてのテナントによって共有され得る。一方、データベースノード102は、異なるネットワーキングインターフェイスを用いて両パーティションへのアクセスを有し得る。
図1に示されるように、コンピュートノード101は、たとえばVM111〜112などの1つ以上の仮想マシン(VM)をサポートし得、当該仮想マシンの各々にVM識別子が割当てられ得る。VMデプロイメント時間において割当てられるVM識別子は、ハードウェアを用いて実行され得る。VM識別子は、VM111〜112によって送信される各パケット内に現われ得る。さらに、VMによるデータベースへのアクセスを制御するために用いられ得るVM識別子は、VM自体によって操作され得ない。加えて、VM識別子は、VMライフサイクル全体を通じて変更可能である(すなわち、VM識別子は永続的でない)。
図1に示されるように、マルチテナント環境100は、VM111〜112によるデータベースインスタンス113へのセキュアなアクセスを保証し得る。たとえば、システムは、VM111〜112によってデータベースノード102に送信される各パケット内に現われるVM識別子を用いるデータベースノード101のネットワーキング層におけるアクセス制御メカニズムおよびアプリケーション層におけるワークロード検査メカニズムに基づき得る。図1に示されるように、アクセス制御114はコンピュートノード101上のVM111〜112に対して透過的であり、データベースノード102上で実行され得る。システムは、VM111〜112によるアクセスを、たとえばデータベースインスタンス113によって提供される特有のデータベースサービスなどの特有のデータベースサービスに限定し得る。たとえば、VM111はデータベースインスタンス113によって提供されるデータベースサービスへのアクセスが許可されているが、VM112はデータベースインスタンス113によって提供されるデータベースサービスにアクセスできない。
図1に示されるように、システムは、データパケットを送信するための制御パスを、アドレスおよびルート解決を特有のデータベースノード102に限定するように構成し得る。また、制御パスは、接続確立を特有のデータベースサービスに限定するように構成され得る。加えて、システムは、データパケットを送信するためのデータパスを、たとえばデータベースノード102のホストチャネルアダプタ(HCA)などのハードウェア内のデータ交換アクセス制御を実行するように、かつ重大なパフォーマンスインパクトを回避するように構成し得る。
図1に示されるように、システムは、コンピュートノード101とデータベースノード102との間の通信を、セキュアな通信チャネル120を通過するように限定し得る。なお、この場合のように、この詳細な説明がデータベースノードとコンピュートノードとの間の通信に言及する場合はいつでも、コンピュートノード自体同士の間ではなく、データベースノードとコンピュートノード上で実行されるVMとの間の通信に言及している。セキュアな通信チャネル120は、アクセス制御が向上したIB高信頼性接続(reliable connection:RG)プロトコルに基づき得、そのネットワーキングインターフェイス上のデータベースへのTCP/UDP/SDPアクセスを禁止し得る。たとえば、一実施形態では、Oracle(登録商標)Exadirect Secureは、IBネットワーク上のExalogicコンピュートノードとExadataデータベースノードとの間の高速なセキュアな通信を提供し得る。Oracle(登録商標)Exadirect Secureは、Java(登録商標)データベースコネクティビティ(JDBC)およびOracle(登録商標)Call Interface(OCI)クライアントによってのみ用いられ得る(すなわち、SQLNETに効果的に限定されている)。
図1に示されるように、システムはさらに、IBサブネット110の外部に位置しているセキュリティアプライアンス104を介して、VM111とデータベースインスタンス113によって提供される特有のデータベースサービスとの間のセキュアな通信を確立し得る。たとえば、Exalogicコンピュートノード上のアプリケーションがExadataデータベースとインターフェイス接続するのにJDBCまたはOCIクライアントを用いない場合は、Exalogicコンピュートノードは代わりに、セキュリティアプライアンス104を介して別個のイーサネットベースの通信を用い得る。
図2は、本発明の実施形態に従う、スイッチドネットワーキングファブリック206によってミドルウェアマシンシステム220に接続されるデータベースサーバシステム240を有する統合システム内のアクセス制御を示す。統合システム200は、マルチテナント環境においてデータのセキュリティを保証するセキュリティソリューションを提供しつつ、中間ファイアウォールアプライアンスの従来の使用によって提起される不利点を克服するアクセス制御機能を提供する。当該セキュリティソリューションによって、インフィニバンドファブリック206などの高速接続ベースのネットワーキングファブリックの使用と、そのような接続ベースのスイッチドファブリックがミドルウェアマシンシステム220とデータベースサーバシステム240との間で実行されるオペレーションに提供し得る最適化とが可能になる。
統合システム200は、インフィニバンドファブリック206によってミドルウェアマシンシステム220に接続されるデータベースサーバシステム240を含む。一実施形態では、データベースサーバシステム240はOracle(登録商標)Exadataデータベースサーバシステムであり、ミドルウェアマシンシステム220はOracle(登録商標)Exalogicミドルウェアマシンシステムである。データベースサーバシステム240はデータベースアドミニストレータ(DBA)212によって管理され得、統合システム200は管理スタック210を用いてシステムアドミニストレータ211によって管理され得る。ミドルウェアマシンシステム220は仮想マシンの集まり(データベースサービスコンシューマ)を含む。各仮想マシンには、デプロイメント時間に、ハードウェアによって実行される固有の識別子(VMID)が割当てられる。この識別子は、インフィニバンドファブリック206内のスイッチ216上でセキュアに実行されているサブネットマネージャ214によって割当てられ、ミドルウェアマシンシステム220の各コンピュートノード上のハードウェアによって、仮想マシンによって生成される各パケットのヘッダ内に、ヘッダ内のソースグローバル識別子(SGID)の一部として埋込まれる。システムは、各パケット識別子のSGID内に提供されるこの固有のVMIDを用いて各VMをセキュアに識別し、そのVMから特有のデータベースサービス(データベースサービスプロバイダ)へのアクセスを制御する。実施形態では、データベースサービスへのアクセスは、データベースフォアグラウンドプロセスによってだけではなく、以下に記載されるようにデータベースリスナ、およびHCAによっても限定される。代替的な実施形態では、アクセス制御は、プラガブルデータベース(PDB)またはデータベーステーブルなどの、他のデータベースプリミティブに適用され得る。
当該システムは、データベースサーバシステム240によって提供される特有のデータベースサービスへのアクセスが、管理スタック210の制御下でアクセス制御リスト(ACL)においてその特有のデータベースサービスへのアクセスが付与されているミドルウェアマシンシステム220の仮想マシンに限定されることを保証するアクセス制御対策を含む。アクセスは、たとえば、特定のテナントに関連付けられているそれらの仮想マシンのみに付与され得る。アクセス制御リスト(ACL)は、名前付きデータベースサービスの各々を、それへのアクセスが許可されているVMに対応する一組のVM識別子に関連付ける。アクセス制御システムは、名前付きデータベースサービスに関してACLにおいて許可が付与されているVMのみがその名前付きデータベースサービスへのアクセスが許可されることを保証する。ACLのコンテンツは、管理スタック210を用いる統合システムのアドミニストレータのセキュアな制御下にある。
図2に示されるように、データベースサーバシステム240は複数のストレージセル250を含む。4つのストレージセル250a,250b,250cおよび250dが示されている。典型的なシステムは、多数の同様のストレージセルを含み得る。ストレージセルは、マルチテナント環境において特定のテナントに関連付けられ得るデータ/データベースファイルを格納する。図2に示されるように、専用のストレージアクセスパーティションがアクセスをストレージセル250に限定する。ストレージアクセスパーティション202へのアクセス権は、ストレージセルおよびデータベースノードのみに付与される。コンピュートノード220a,220b,220cおよび220d上の仮想マシンはストレージアクセスパーティション202へのアクセス権を付与されず、したがってストレージセル250に直接アクセスできない。
データベースサーバシステム240は複数のデータベースノード260をさらに含む。2つのデータベースノード260a,260bが示されている。典型的なシステムは、多数の同様のデータベースノードを含むことになる。データベースノード260a,260bは、ストレージアクセスパーティション202を介してストレージセル250a,250b,250cおよび250dにアクセス可能である。データベースノード260a,260bの各々は、たとえばPDB261a,262a,261bおよび262bなどの複数のデータベースプロセスをホストし得、当該プロセスの各々は、たとえばDB SVC263a,264a,263bおよび264bなどの名前付きデータベースサービスを提供し得る。名前付きデータベースサービスの各々は、1つ以上の特定のテナントに関連付けられ得る。ストレージセル250a,250b,250cおよび250dは共有ストレージ媒体を表現している。特定のストレージセルは、特定のテナントに関連付けられていなくてもよく、または特定のテナントに専用でなくてもよい。一実施形態では、ストレージセル250は、データベースノード260によって管理される分散ストレージアレイを表現している。データベースファイルが複数のストレージセルにわたってストライプ状であってもよい。しかし、データベースノード260の制御下でストレージセル上のデータベースファイルの多種多様な配置が利用され得る。ストレージセルは、専用のストレージアクセスパーティション204を用いてコンピュートノードのVMから分離されているため、ストレージセル250へのアクセスのための付加的なセキュリティ対策は不要である。ストレージアクセスパーティション204は、データベースノード260aおよび260b、ならびにストレージセル250a,250b,250cおよび250dのみが利用可能である。したがって、複数のストレージセル250はミドルウェアマシンシステム220およびコンピュートノード220a,220b,220cおよび220d上の仮想マシンから分離される。
ミドルウェアマシンシステム220が複数のストレージセル250上に格納されているデータベースファイルにアクセスする唯一の方法は、複数のデータベースノード260上のテナント特有の名前付きデータベースサービスの1つ以上を呼出すことによる間接的なものである。データベースノード260a,260bへのアクセスは、以下に記載されるようにアクセス制御266aおよび266bを用いて制御されてセキュアにされる。コンピュートノード上の仮想マシンからデータベースノードへのアクセスも、専用のデータベースアクセスパーティション204に制約される。このパーティションはデフォルトパーティションとは異なり、異なるコンピュートノード自体の上の仮想マシン同士の間の通信には用いられない。複数のテナントがデプロイされると、当該テナントはすべて、データベースノードにアクセスするのに同一のデータベースアクセスパーティション204を共有する。データベースアクセスパーティション204を用いてVM同士の間の通信を防止するために、すべてのVMはデータベースアクセスパーティション204の限定メンバーとして構成される。すべてのデータベースノードは、データベースアクセスパーティション204のフルメンバーとして構成される。
ミドルウェアマシンシステム220は複数のコンピュートノードを含み、そのうちの4つ220a,220b,220cおよび220dが示されている。典型的なシステムは、多数の同様のコンピュートノードを含むことになる。コンピュートノードは、仮想マシン内で実行されるアプリケーション(図示せず)をホストする。仮想マシンの各々は、マルチテナント環境において特定のテナントに割当てられ得る。各コンピュートノード上で実行される複数の仮想マシン(およびアプリケーション)が存在し得る。8個の仮想マシンVM221a,VM222a,VM221b,VM222b,VM221c,VM222c,VM221dおよびVM222dが示されている。典型的なシステムは、各コンピュートノード上で、かつ多くの付加的なコンピュートノード上で実行される多数の同様の仮想マシンを含むことになる。各仮想マシンは、サブネットマネージャ214の制御下で仮想マシンをホストするコンピュートノードのハードウェアによって、識別子VMID223a,VMID224a,VMID223b,VMID224b,VMID223c,VMID224c,VMID223dおよびVMID224dに関連付けられている。コンピュートノード220a,220b,220c,220d上のVMは、接続ベースの高信頼性プロトコルを用いてストレージアクセスパーティション202上で複数のデータベースノード260と通信し得る。好ましい実施形態では、コンピュートノード220a,220b,220cおよび220d上のVMはインフィニバンドファブリック206上で複数のデータベースノード260と通信し得る。
コンピュートノード220a,220b,220cおよび220dのハードウェアは、仮想マシン上のアプリケーションとデータベースノードとの間で通信パケットを送信する。コンピュートノードのハードウェアは、各パケットのヘッダに、通信中の仮想マシンに関連付けられているVMIDを含むソースグローバル識別子(SGID)を含む。VMIDはハードウェア内の仮想マシンに関連付けられているため、仮想マシンは自身の識別子をスプーフィングすることができず、すなわち、仮想マシンは、自身がハードウェアによって関連付けられていない識別子を使用できない。また、コンピュートノードのハードウェアは、仮想マシンからのすべての通信パケットが、自身のヘッダに、データベースアクセスパーティション204上でデータベースノードと通信する際に関連の仮想マシンのVMIDを含むSGIDを含むことを保証する。
上述のように、ミドルウェアマシンシステム220の仮想マシンが複数のストレージセル250上のデータにアクセスする唯一の方法は、複数のデータベースノード260上の特有の名前付きデータベースサービスを呼出すことによってである。仮想マシンはストレージアクセスパーティション上で通信することが許可されていないため、ストレージセルと直接通信することができない。仮想マシンの各々は、名前付きデータベースサービスのいずれかへの接続を形成することを試み得る。しかし、各データベースノードは、データベースノードのハードウェア(たとえばHCA)およびソフトウェアにおいて実装されるアクセス制御機能266aおよび266bを含む。アクセス制御機能266aおよび266bは、受信した通信パケット内のSGIDから、どのマシンが名前付きサービスに接続しようとしているかを識別し得る。アクセス制御機能266aおよび266bは、どの仮想マシンがどの名前付きサービスにアクセス可能かを識別するアクセス制御リスト268aおよび268bに応答してアクセス制御機能を提供する。ACLのコンテンツは管理スタック210のセキュアな制御下にあり、ACLのコピーが各データベースノードに配布される。アクセス制御機能266a,266bは、アドレス解決アクセス制御、接続確立アクセス制御、データ交換アクセス制御、およびIPoIBアクセス制御のうちの1つ以上を含み得る。
アクセス制御機能266a,266bは、仮想マシンが特定のデータベースノードによって提供される任意のデータベースサービスにアクセスすることが許可されていない場合、当該VMが当該特定のデータベースノードとの接続を確立することを防止し得る。アクセス制御機能266aおよび266bはさらに、仮想マシンが特定のデータベースサービスにアクセスすることがアクセス制御リスト内で許可されていない限り、当該VMが当該特定のデータベースサービスと接続を確立して当該サービスと通信することを防止し得る。マルチテナント環境の実施形態では、アクセス制御リストは、特定のデータベースサービスと同一のテナントに関連付けられている仮想マシンのみが当該特定のデータベースサービスとの接続を確立して当該サービスと通信することができるように構成される。無許可仮想マシンからのすべての接続要求は拒絶される。以下に記載されるように、アクセス制御は接続のライフサイクル中のさまざまなステージにおいて実行され得る。
図3は、本発明の実施形態に従う、インフィニバンドファブリック206などのスイッチドネットワーキングファブリックによってミドルウェアマシンシステム220のコンピュートノードに接続されるデータベースサーバシステム240のデータベースノード内のアクセス制御を示す。図3は、マルチテナント環境においてデータのセキュリティを保証するセキュリティソリューションを提供しつつ、中間ファイアウォールアプライアンスの従来の使用によって提起される不利点を克服するアクセス制御システムの要素のより詳細な図を示す。図3は、簡略化のため、インフィニバンドファブリック206によって接続される1つのコンピュートノード320および1つのデータベースノード360という特徴を示している。1つの仮想マシン331がコンピュートノード320上に示されている。しかし、典型的なシステムは、インフィニバンドファブリック206によって接続される多くの同様のコンピュートノード、仮想マシン、およびデータベースノードを含むことになる。
図3に示されるように、コンピュートノード320は、ホストチャネルアダプタ(HCA)326と、各々が1つ以上のコアを有する1つ以上のマイクロプロセッサを含み得るCPU328と、4ギガバイト以上のメモリを有し得るメモリRAM329とを含む。コンピュートノード320はアプリケーション層330内の1つ以上のアプリケーションをホストする。これらのアプリケーションの1つ以上のインスタンスは仮想マシン内で実行され、各仮想マシンは固有のVMIDに関連付けられている。単一の仮想マシンVM331が示されているが、複数の仮想マシンが単一のコンピュートノード320上で動作してもよい。複数のアプリケーションがコンピュートノード上の同一の仮想マシンまたは異なる仮想マシン内で実行されてもよい。アプリケーションは、たとえば、Oracle(登録商標)Call Interfaceを用いてデータベースと通信するためにOCIクライアント333を用いる1つ以上のOCIアプリケーション332を含み得る。アプリケーションは、Javaデータベースコネクティビティを用いてデータベースと通信するためにJDBCクライアント335を用いるもう1つのJDBCアプリケーション334を含み得る。
OCIクライアント333およびJDBCクライアント335は、アプリケーション層内のアプリケーションインスタンスをホストする各仮想マシンにアタッチされた仮想機能(VF)を用いる際にシングルルートI/O仮想化(Single Root I/O Virtualization:SR−IOV)技術を用いてダイレクトアクセススタック340およびHCA326を介してリモートダイレクトメモリアクセス(RDMA)を用いてデータを送受信し得る。図3に示されるように、HCA326の仮想機能(VF)321がVM331にアタッチされている。データは、アプリケーション層の特定の仮想マシンに関連付けられているメモリに、かつ当該メモリから直接送信され得る。オープン・ファブリック・エンタープライズ・ディストリビューション(Open Fabric Enterprise Distribution:OFED)スタック342が、RDMAスイッチドファブリック(この場合はインフィニバンドファブリック206)についての接続制御を提供する。
シングルルートおよびマルチルートIO仮想化技術は、PCI−SIGから出版されている標準仕様書に規定されている。シングルルートI/O仮想化(SR−IOV)技術、RDMAおよび仮想マシンにアタッチされた仮想機能の一定の局面は、たとえば、2013年3月15日に出願され「SYSTEM AND METHOD FOR SUPPORTING LIVE MIGRATION OF VIRTUAL MACHINES IN A VIRTUALIZATION ENVIRONMENT(仮想化環境においてバーチャルマシンのライブマイグレーションをサポートするためのシステムおよび方法)」と題された米国特許出願番号第13/838121号、および2013年3月15日に出願され「SYSTEM AND METHOD FOR SUPPORTING LIVE MIGRATION OF VIRTUAL MACHINES BASED ON AN EXTENDED HOST CHANNEL ADAPTOR (HCA) MODEL(拡張ホストチャネルアダプタ(HCA)モデルに基づいてバーチャルマシンのライブマイグレーションをサポートするためのシステムおよび方法)」と題された米国特許出願番号第13/838275号、および2013年3月15日に出願され「SYSTEM AND METHOD FOR SUPPORTING LIVE MIGRATION OF VIRTUAL MACHINES IN AN INFINIBAND NETWORK(インフィニバンドネットワークにおけるバーチャルマシーンのライブマイグレーションをサポートするためのシステムおよび方法)」と題された米国特許出願番号第13/837922号に記載されており、上記出願は本明細書に引用により援用される。
SR−IOV技術の利点は、仮想マシンにPCIE仮想機能(PCIE VF)を介して直接的なハードウェアアクセスが付与されることである。これは物理的なデプロイメントと同一のパフォーマンスを提供し、VMの数とともに直線的なパフォーマンススケーラビリティを提供するユーザレベルのネットワーキングおよびRDMAをサポートする。したがってSR−IOVは、インフィニバンドファブリックなどの高速相互接続を最大限に活用することが必要である。しかし、準仮想化などのソフトウェアI/O仮想化技術とは異なり、SR−IOVでは、VMへのアクセスを制御する中間ソフトウェアがない。したがって、VMネットワーキングスタックが非トラステッドである場合、ネットワーキングトラフィックを傍受してフィルタリングする中間のトラステッドソフトウェアがない。したがって、アクセス制御を提供しつつSR−IOV技術を十分に利用するためには、セキュアなVM識別子(VMID)がネットワーク上でビジブルにされ、アクセス制御は本明細書に記載されるように外部エンティティまたはサービスプロバイダ(データベース)によって仲介される。図3に示されるように、データベースノード360は、ホストチャネルアダプタ(HCA)366と、各々が1つ以上のコアを有する1つ以上のマイクロプロセッサを含み得るCPU368と、4ギガバイト以上のメモリを有し得るメモリであるRAM369とを含む。データベースノード360はアプリケーション層370内の1つ以上のデータベースプロセスをホストする。データベースプロセスは、たとえば、Oracle(登録商標)Call Interfaceを用いてコンピュートノード上の仮想マシンと通信する1つ以上のOCIサーバアプリケーション372を含み得る。アプリケーション層370は、複数のデータベースプロセスインスタンス(3つが図示される)PDB374a,374b,374cをさらにホストし得る。OCIサーバアプリケーションは、シングルルートI/O仮想化(SR−IOV)技術を用いてダイレクトアクセススタック376およびHCA366を介してリモートダイレクトメモリアクセス(RDMA)を用いてデータを送受信し得る。データは、アプリケーション層の特定の仮想マシンに関連付けられているメモリに、かつ当該メモリから直接送信され得る。オープン・ファブリック・エンタープライズ・ディストリビューション(OFED)スタック377が、RDMAスイッチドファブリック(この場合はインフィニバンドファブリック206)についての接続制御を提供する。本発明の実施形態では、アクセス制御は、たとえば、アクセス制御リストに基づいて、OFEDスタック377、HCA366およびOSスタック378を含むデータベースノードのさまざまなコンポーネント内で実装され得る。
インフィニバンドファブリック206は複数のスイッチ216(1つが図示される)を含み、これにコンピュートノード320のHCA326およびデータベースノード360のHCA366が(図示されない複数の他のコンピュートノードおよびデータベースノードの複数のHCAに加えて)接続される。インフィニバンド(IBと略す)は高パフォーマンスコンピューティングに用いられるコンピュータネットワーキング通信規格であり、非常に高いスループットおよび非常に低いレイテンシを特徴とする。これはコンピュータ同士の間の、かつコンピュータの内部の、データ相互接続のために用いられる。インフィニバンドは、サーバとストレージシステムとの間の、かつストレージシステム同士の間の、直接的な、または交換型の相互接続として利用される。インフィニバンドは、イーサネットなどの共有媒体技術とは対照的に、スイッチドファブリックトポロジを用いる。すべての送信はHCAにおいて開始または終了する。図3のシステムでは、HCA366は、中間ファイアウォールアプライアンスまたはノードをまったく用いずに、スイッチ216を介してインフィニバンドファブリック206によってHCA326に接続される。
インフィニバンドファブリック206は、インフィニバンドファブリック206の構成、およびIB接続確立のプロセスで用いられるルート解決を担当する、1つ以上のサブネットマネージャ214を実装する。サブネットマネージャ240はさらに、セキュアなサブネット管理パケット(subnet management packet:SMP)を介してサブネットにアタッチされたHCA366,326を構成する。本発明の実施形態では、サブネットマネージャ214を用いて、特定の仮想マシンに関連付けられている特定の仮想機能に関連付けられている仮想マシン識別子(VMID)を有するサブネット内のHCAがセキュアに構成され得る。たとえば図3に示されるように、VMID322は、仮想マシン331にアタッチされているHCA326の仮想機能321に関連付けられている。
サブネットマネージャ214を用いて、さらに、コンピュートノード上の仮想マシンとデータベースノードとの間で送信される各通信パケットが、特定の仮想マシンに関連付けられている特定の仮想機能に関連付けられている仮想マシン識別子(VMID)を含むソースグローバル識別子(SGID)を含むグローバルルーティングヘッダ(GRH)を含むように、サブネット内のHCAがセキュアに構成され得る。たとえば図3に示されるように、コンピュートノード320の仮想マシン331とデータベースノードとの間で送信される各通信パケットは、仮想マシン331にアタッチされたVF321に関連付けられているVMID322を含むソースグローバル識別子(SGID)を含むグローバルルーティングヘッダ(GRH)を含む。したがって、VMIDと仮想マシンとの関連付け、および通信パケット内のSGIDの包含は、サブネットマネージャ214のセキュアな制御下にあり、HCAはコンピュートノード320またはコンピュートノード上のVMによってスプーフィングまたは破損され得ない。したがって、コンピュートノードへのルートアクセスを有するユーザまたはアプリケーションでさえも、パケットヘッダに含まれているVMIDおよびSGIDを変更すること、または無許可のVMID/SGIDを用いることはできない。
実施形態では、各データベースノード360のOFEDスタック377およびHCA366は、1つ以上のアクセス制御リスト(ACL)375a,375bに基づいてアクセス制御を実装する。アクセス制御は、インフィニバンドパケットに埋込まれているSGIDを用いて、パケットに関連付けられている仮想マシンを識別する。OFEDスタック377およびHCA366は1つ以上のアクセス制御リスト(ACL)375a,375bに基づいてアクセス制御を実装し、適切なACLによって許可されていない限り、コンピュートノード内の仮想マシンとデータベースプロセスとの間の接続の確立およびデータの送信を防止する。しかし、許可された仮想マシンとデータベースプロセスとの間で接続がなされて通信が許可されている場合は、接続は、中間ファイアウォールアプライアンス(たとえばイーサネットファイアウォール390など)を必要とせずに、コンピュートノード320上のOCIクライアント333インスタンスとOCIサーバ372とデータベースノード360との間のインフィニバンド上の完全な直接RDMAを可能にする。アクセス制御ロジックおよびハードウェアによって一旦許可されたVMには、VMへのアクセスを制御するための中間ソフトウェアをまったく必要とせずにユーザレベルのネットワーキングおよびRDMAをサポートする接続を用いる物理的なデプロイメントと同一のパフォーマンスで、データベースサービスへの直接的なハードウェアアクセスが(PCIE FVを介して)付与されるため、VMの数とともに直線的なパフォーマンススケーラビリティがもたらされ、データベースノードのHCAハードウェアによって実行されるデータ交換アクセスを有する高速インフィニバンド相互接続が最大限に活用される。
コンピュートノード320上のアプリケーションはさらに、JDBCまたはOCIを用いず、したがってRDMAのためのダイレクトアクセススタック340の利用が不可能であるが、代わりにソケット337を用いてイーサネット上でデータベースと通信するもう1つの他のアプリケーション336を含み得る。ソケット337は、OSスタック344を介してイーサネット・オーバー・インフィニバンド(Ethernet over InfiniBand:EoIB)アダプタ346上でイーサネットに結合される。イーサネットパケットはEoIBを用いてゲートウェイ306に送信され、ゲートウェイ306は、インフィニバンドファブリック206の外部にあるイーサネットネットワーク上で当該パケットを再送信する。イーサネット通信は、従来のイーサネットファイアウォールアプライアンス390を通過した後にデータベースノード360に到達する。データベースノード360において、イーサネット通信はイーサネットファイアウォールアプライアンス390からネットワークインターフェイスカード(NIC)367で受信され、OSスタック378を介してソケット379に送信される。なお、この接続パスは、読出/書込ソケット379内のプロセッサオーバーヘッド、OSスタックオーバーヘッドを含むいくつかの局面におけるより高いオーバーヘッドを特徴とし、ゲートウェイ306およびイーサネットファイアウォール390の含有は通信パスである。
図4A〜図4Cは、ミドルウェアマシンシステムのコンピュートノード上の仮想マシンからデータベースサーバシステムのデータベースノードに送信される通信パケットのヘッダにソース識別子(SGID)をセキュアに埋込むためのシステムおよび方法の局面を示す。図4Aは、セキュアなサブネットマネージャの制御下でホストチャネルアダプタハードウェアを用いてインフィニバンドパケットのヘッダのSGIDに仮想マシン識別子(VMID)を埋込むことを示す。図4Aに示されるように、スイッチ216は、インフィニバンドファブリック206の構成、およびIB接続確立のプロセスで用いられるルート解決を担当するサブネットマネージャ214を実装する。サブネットマネージャ214はさらに、インバンドで送信され得るセキュアなサブネット管理パケット(SMP)を介してサブネットにアタッチされたすべてのHCAを構成する。
本発明の実施形態では、サブネットマネージャ214を用いて、特定の仮想マインに関連付けられている特定の仮想機能に関連付けられている仮想マシン識別子(VMID)を有するサブネット内のすべてのHCAがセキュアに構成される。各サブネットマネージャ214は、サブネット管理パケットを用いて、HCA326のセキュアなメモリに格納されているポートグローバル固有識別子(GUID)テーブル400を構成する。異なるポートGUIDテーブルが、サブネットに接続されている各HCA内に構成される。ポートGUIDテーブル400をHCA326内で用いて、各仮想機能(VF)、およびしたがって各仮想マシンが、VMIDとして用いるサブネットマネージャ214によって確立されるGUIDに関連付けられる。したがって、VMIDと仮想マシンとの関連付けはサブネットマネージャのセキュアな制御下にあり、仮想マシンによってスプーフィングまたは破損され得ない。
サブネットマネージャ214はさらに、HCA326が、HCA326によってデータベースノードに向けて送信される各インフィニバンドパケット402a,402b,402c内のグローバルルーティングヘッディング(GRH)にGUIDを含むように、データベースアクセスパーティションを構成する。一実施形態では、サブネットマネージャ214は、ソフトウェアスタックに、コンピュートノード上の仮想マシンとデータベースノードとの間の接続に対してGRHを用いるように指示する。接続についてGRHが指定されている場合、ハードウェア(たとえばHCA326)は当該接続上で送信されるすべてのパケットにGRHを含むことになる。VMIDは、アタッチされたVF(VMID)のGUIDとサブネットプレフィックスとの連結であるGRH.SGIDとしてグローバルルーティングヘッダに含まれている。インフィニバンドパケットが単一のサブネット内でエンドポイント同士の間で送信される場合は、GRHは典型的にインフィニバンドパケット内に送信されない。HCA326によってデータベースノードに送信される各インフィニバンドパケットがGRHを含むことをサブネットマネージャ214が保証する1つの方法は、すべてのデータベースノードをコンピュートノードとは別個のサブネットの一部として識別することであり、HCAは次に、インフィニバンド上の異なるサブネット同士の間の通信のための標準プロトコルに従ってすべてのインフィニバンドパケットにGRHを含むことになる。または、サブネットマネージャ214は、同一のサブネット内であってもすべてのインフィニバンドパケット内にGRHの送信を要求するポリシーの変更を指定し得る。
一実施形態では、サブネット管理パーティションコマンドはGRHフラグを含むように拡張される。GRHフラグは、サブネットマネージャ214によってパーティション作成時間に構成される。接続のためのパス解決がデータベースアクセスパーティション204を指定している場合(図2参照)、GRHフラグはすべてのインフィニバンドパケットにGRHが包含されることを要求する。なお、アクセス制御機能は、たとえばデータベースアクセスパーティション204などの一定のネットワークインターフェイスに適用可能であり、たとえばストレージアクセスパーティション202などの他のネットワークインターフェイスには適用不可能である。したがって、GRHの包含は不要であるため、GRHフラグはストレージアクセスパーティション202内に設定されなくてもよい。一実施形態では、サブネットマネージャ214は、GRHの包含を誘発するために、データベースアクセスパーティション204のためのパス解決管理データグラムのホップリミット(HopLimit)属性を1よりも大きい値に設定する。ホップリミット属性を1よりも大きく設定することによって、サブネットマネージャ214は、データベースノードおよびコンピュートノードが異なるサブネットに属しているという錯覚を起こさせ、データベースアクセスパーティション上でコンピュートノードの仮想マシンからデータベースノードに送信されるすべてのインフィニバンドパケット内のGRHの包含をもたらす。
図4Bは、ネットワーク環境においてインフィニバンド(IB)アドレス化を用いてデータサービスにアクセスするインフィニバンドパケット402を示す。図4Bに示されるように、IBパケット402は、ペイロード406と、ローカルルーティングヘッダ(LRH)408を含むIBプロトコルに従うさまざまなヘッダと、他のヘッダ410,412とを含む。ローカルルーティングヘッダ(LRH)はスイッチによって用いられて、パケットをサブネット上でその宛先エンドノードネットワークポートに移動させる。それは、ソースおよび宛先ローカル識別子(LID)、リンクプロトコルバージョンID、サービスレベル、仮想レーン、パケット長、およびどの任意のフィールドが存在しているかを示すために用いられる「次のヘッダ」フィールドを含む。加えて、IBパケット402は、IBパケットの完全性を保証するために用いられる不変ICRC14、可変VCRC416を含み得る。上述のように、サブネットマネージャ214は、サブネットおよび/またはHCAを、データベースアクセスパーティション204内に送信される各IBパケット402のヘッダがグローバルルーティングヘッダ(GRH)404をさらに含むように構成する。GRH404は、HCA326のハードウェアによって各IBパケットに埋込まれる。VMIDは、アタッチされたVF(VMID)のGUIDとサブネットプレフィックスとの連結であるGRH.SGIDとしてGRHヘッダに含まれている。
図4Cは、グローバルルーティングヘッダ(GRH)404の要素を示す。GRHは典型的にルータによって用いられて、パケットを異なるサブネット同士の間で移動させる。本発明の実施形態では、これを用いて、IBパケットのソースのGUIDが、仮想マシンが識別され得るように各パケットに埋込まれることが保証される。図4Cに示されるように、GRH404はソースGUID440および宛先GUID442を含む。GRH404はさらに、ルーティングバージョンID、ペイロード長、IPバージョン、トラフィッククラス、およびホップリミットを含む。図4Cに示されるように、ソースGUID440は、HCA326に格納されているポートGUIDテーブル400に基づいてHCA326のハードウェアによってIBパケット402のGRH404に埋込まれている。上述のように、ポートGUIDテーブル400はサブネットマネージャ214によってセキュアに構成される。したがって、各インフィニバンドパケットは、当該パケットに関連付けられている仮想マシンを固有に識別するソースGUID440を含む。ソースGUID440はサブネットマネージャ214の制御下でHCA326のハードウェアによって実装され、自身がホストする仮想マシンのコンピュートノードによって修正され得ない。GRH.SGIDはアタッチされたVF(VMID)のGUIDとサブネットプレフィックスとの連結であるため、VMIDはSGIDに含まれている。したがって、コンピュートノード上の仮想マシンは、サブネットマネージャ214によって自身に割当てられていないいずれのソースGUIDも使用できない。
管理スタック
管理スタック210(図2参照)は仮想マシンのデプロイメントを調整し、アクセス制御リスト(ACL)を用いてそれらのVMからデータベースサーバシステム240の特有のデータベースサービスへのアクセスを管理する。ACLテーブルは、任意のミドルウェアマシンシステムVMによる各特有のデータベースサービスへのアクセスを制御するために必要なすべての情報を含む。すべてのアクセス制御はデータベースノード上で実行されるソフトウェアおよびハードウェアによって実行され、したがってミドルウェアマシンシステム220のコンピュートノード上の仮想マシンに対して透過的であるため、仮想マシンはデータベースノードとの通信がアクセス制御されていることを認識していない。
図5Aはアクセス制御リスト(ACL)524を示す。図5Aに示されるように、ACL524は名前付きデータベースサービスの各々についての行、すなわちSvcname1〜Nを有する。名前付きサービスの各々について、ACL524は、どの仮想マシン(VMIDによって識別される)がその名前付きサービスへのアクセスが許可されているかを示す。ACL524は、VMID許可に対する名前付きサービスの完全な粒度を可能にし、図5Bに示されるようにポピュレートされている。実施形態では、ACLは、マルチテナント環境において特定のテナントに関連付けられているVMは同一のテナントに関連付けられている名前付きデータベースサービスのみにアクセス可能であるように構成される。しかし、ACL524はVMID許可に対する名前付きサービスの完全な粒度を可能にするため、ACLは、いくつかのデータベースサービスが共有され得、したがって2つ以上のテナントに関連付けられているVMによってアクセスされ得るように構成されてもよい。論理的に、データベースACLテーブルは以下のように配列され得る:個々のVMをそれらの現在割当てられているVMIDとともに表現する行;および、特有のVMによるアクセスが許可されているデータベースサービスの名前を表現する列。
データベースACLテーブルは、本明細書に記載されるアクセス制御システムのために具体的に作成されたデータベーステーブルである。PL/SQLパッケージは、実際のテーブル実装の内部の詳細を公開することなく、このテーブルの管理を可能にするAPIを管理スタック210に提供する。管理スタック210のみがデータベースACLテーブルを更新することになる。データベースACLテーブルにアクセスするために専用のデータベースサービスが作成され得る。データベースACLテーブルにアクセスするために用いられるデータベースサービスの名前は管理スタック210に知られているべきであり、使用される管理スタックデプロイメントオプションに依存して、APIまたは構成ファイルのいずれか一方を介して提供される。管理スタック210は、専用の管理データベースアクセスパーティションを用いて、好ましくはTCP上でSQLを用いてデータベースACLテーブルにアクセスし得る。管理データベースアクセスパーティションへのアクセスは、管理スタック210のみに限定される。
データベースリスナ546(図5B参照)を用いて、データベースサーバシステム上にデプロイされるすべてのデータベースについてのデータベースACLテーブルへのアクセスが管理スタックに提供される。データベースリスナの数およびそれらの座標は、構成属性として管理スタック210に提供される。管理スタックは、データベースノードのうちの1つの上で実行されるPL/SQLプロシージャと通信する。データベースACLテーブル更新を、すべてのデータベースノード、それらのノード上で実行されるすべてのDPリスナ546およびIPoIBドライバ526(図5参照)に伝搬するのはデータベースサーバシステムの責任である。
システムアドミニストレータは、ミドルウェアマシンシステムコンピュートノード上にデプロイされるVMを、1つ以上のデータベースサービスへのアクセスを有するように構成し得る。データベースサービスはVMがデプロイされているのと同一のテナントに関連付けられているべきであり、管理スタック210がこの限定を実行する。管理スタック210は、ローカルデータベースまたは構成ファイル内でVMIDとデータベースサービスとの関連付けを持続する。加えて、管理スタック210はこの情報を用いてデータベースACLテーブルを構築/再構築することができる。
ACLにおいて、各VMは、そのVMの固有のVMIDおよび所与のデータベースサービス名に基づいて、自身がアクセスすることが許可されているデータベースサービスに関連付けられている。管理スタックは、VMおよびVMIDの関連付けを追跡し、データベースACLテーブルをVMライフサイクル全体を通じて適切に更新する役割を果たす。VMデプロイメントにおいて、VM UUIDを所有している新たなエントリが、管理スタックによってデータベースACLテーブルに追加される。このエントリは最終的にVMIDおよび1つ以上のデータベースサービス名で更新されることになる。その後のVMライフサイクルオペレーション時、エントリが、そのVMに割当てられた新たなVMID、またはアクセスが付与されたもしくは取消された新たなデータベースサービスで更新され得る。VFはブーティングVMにホットプラグでアタッチされ、所与のVMが開始されるたびに異なるVFがアタッチされ得るため、当該所与のVMについて異なるVMIDがもたらされる。このVMIDの変更によって、管理スタックはVMIDをACL内のデータベースサービス関連付けに更新する必要がある。このVMエントリは、VMが破棄されるまでデータベースACLテーブル内に残ることになる。管理スタックがデータベースACLテーブルの更新を完了する前にVMがデータベースへのアクセスを試みた場合、更新はすべてのデータベースノード、リスナおよびIPoIBドライバに伝搬され、VMは更新が完了するまでアクセスが拒否され得る。
図5Bは図5AのACL524と対話するデータベースサービスを示す。図5Bに示されるように、ステップ530において、データベースアドミニストレータ(DBA)212がデータベース管理システムサービス(DBMS)512にアクセスして、名前付きデータベースサービスを構成する。ステップ531において、DBMSサービスは名前付きデータベースサービスをデータベースサービステーブル(DBST)522に追加する。ステップ532において、管理スタック210はACLサービス514を用いてDBST522から名前付きサービスのリストを取出す。ステップ534において、管理スタック210は新たな名前付きデータベースサービスをACL524に追加する。ステップ535において、管理スタック210は新たな名前付きデータベースサービスについてのVMID許可をACL524内に設定する。ステップ537において、管理スタック210は、新たな名前付きデータベースサービスをACL524に追加するトランザクションをコミットする。ACL524の修正のコミットメントに続いて、ステップ538において、修正されたACL524がリスナ登録(LREG)プロセス515によってすべてのデータベースインスタンスにプッシュアウトされる。したがって、すべてのデータベースインスタンスにACL524の最新バージョンが提供される。LREG515は、各データベースインスタンス506内のACLテーブルを更新する。各データベースインスタンスは、特定のサービスについて許可されているすべてのVMIDをリストしているサービスVMIDリスト516を受信する。LREG515はさらに、ACL524をデータベースリスナ546にプッシュする。データベースリスナ546に提供されるACL525は、ノード上のデータベースサービス、およびそれらのサービスについて許可されているVMIDを識別する。LREG515はさらに、IPoIBドライバ526を、sysfs/ioctlインターフェイスを用いて、特定のノードへのアクセスが許可されているすべてのVM(VMIDによる)のリストを含むノードACL536で更新する。
図5Cはアクセス制御システムの管理を示す。統合システム200は、本明細書に開示されるマルチテナント環境においてセキュアなネットワーク通信のための統合型ファイアウォールを提供するためのシステムおよび方法を実装するために構成、調整および管理される複数のコンポーネントを含む。代替的なデプロイメントモデルもあり、その各々がそのデプロイメントに特有の管理ソリューションを提供する。図5Cは、アクセス制御ソリューションの高レベル管理モデルと、アクセス制御ソリューションを実装するために統合システム200の構成に含まれている高レベル管理ステップとを示す。
図5Cに示されるように、ステップ561および562において、データベースアクセスパーティション204(図2参照)が、GRHフラグがサブネットマネージャパーティションテーブル555内に設定された状態で作成される。このGRHフラグはサブネットマネージャ214によって用いられて、コンピュートノード上の仮想マシンとデータベースノードとの間のすべてのパスがグローバルルーティングヘッダ(GRH)を有して構成される必要があることを示す。このオペレーションは、コンピュートノード上にデプロイされる仮想マシンをデータベースノードに接続するインフィニバンドファブリック206のセットアップの一部として実行される。ステップ563,564および565において、管理スタック210は現在のデータベース構成(データベースについて構成されたサービス名のリスト)を取出し、サービス名と許可されたVM/テナントとの関連付けを作成し、この関連付けを管理スタックデータベース内のセキュリティ関連付けマップ555内に持続する。データベースサービス名はデプロイされたすべてのデータベースにわたって固有であるべきであり、管理スタック210は、システムを構成するこのステップにおいて、任意のデータベースミスコンフィグレーションを識別する、またはサービス名を複製する役割を果たす。
ステップ566,567,568において、VMがインスタンス化されると、管理スタック210は各VMをそのVMIDに関連付け、そのVMIDを、ステップ565において確立された特定の許可テナントに関連付けられている1つ以上のサービス名に関連付け、VMデプロイメントのためのコンピュートノード(たとえば320)を選択し、選択したコンピュートノード上にVM(たとえばVM221a)をデプロイする。仮想機能VFは、インスタンス化されるとVMに割当てられてアタッチされ、VM221aがデプロイされるコンピュートノード320のHCA326のポートGUIDテーブル400からそのVMの識別子(VF GUID)を取得する。ステップ569,570において、管理スタック210は、データベースACL524を、ステップ569において確立されたサービス名の関連付けおよびVMIDで更新する。データベースACLテーブルが更新されると、その情報はデータベースノード(たとえばデータベースノード360)に、かつ各ノード内で、図5Bに示されるように各ノード上のデータベースリスナおよびIPoIBドライバに伝搬される。データベースアドミニストレータ212は、データベースノード上のデータベースサービスを通常の態様で構成し得る。
なお、複数のVMに各特有のデータベースサービスへのアクセスが付与されてもよく、単一のVMに複数のデータベースサービスへのアクセスが付与されてもよい。付与されるアクセスはACLテーブルに従って完全に粒状であり、必要に応じて、特定のテナントに関連付けられているVMを他のテナントに関連付けられているデータベースサービスから分離するように、または特定のデータベースサービスを必要もしくは所望に応じて特定のサービスについての異なるテナントのVM同士の間で共有するように構成され得る。システムアドミニストレータ211は、マルチ環境においてデータベースサービス名を異なるテナントにマッピングする。
セキュリティシステムの構成を担当する管理スタック210は、ミドルウェアマシンシステム220のコンピュートノード上で実行され、データベースサービス構成情報を取出すためにインフィニバンドファブリック206を用いてデータベースノードと通信し、必要なデータベースACLテーブルをプログラムし得る。管理スタックは、このために専用のデータベース管理アクセスパーティションを用い得る。このパーティションへのアクセスは管理スタックのみに付与されるため、データベースノード上のこのネットワーキングインターフェイスは本明細書に記載されるセキュリティ対策によって保護されなくてもよい。管理スタック210は、データベースノード上で実行されてTCP上でアクセス可能なPL/SQLプロシージャによって提供されるAPIを用いる。これらのプロシージャは、データベースACLテーブルのアクセスおよび制御が、データベース管理アクセスパーティションに関連付けられているネットワーキングインターフェイスを介してのみ実行可能であるように改善される。代替的な実施形態では、管理スタックはデータベースサーバシステム260上にデプロイされ得るか、またはイーサネットを用いてデータベースノードと通信し、標準的なイーサネットセキュリティメカニズムを用いて管理スタック210とデータベースノードとの間のセキュアな通信が保証されることになる。
アクセス制御
上述のように、VMIDは、GRH.SGIDの一部としてデータベースアクセスパーティション内に送信される各パケットに埋込まれ、パケットを発信するVMを識別する。アクセス制御リストは、どのVMがどのサービスにアクセス可能であるかを指定する。アクセス制御は次に、各パケットのGRH.SGID内に提供されるVMIDおよびACLを用いてデータベースノード内に実装される。サービスVMIDリスト516およびノードACL536などのACL524およびサブテーブルが利用されて、アドレス解決、パス解決、接続確立およびデータ交換を含む、コンピュートノード仮想マシンとデータベースサービスとの間の接続のライフサイクル中のいくつかの異なるステージにおいてアクセス制御が提供され得る。なお、上述のシステムについて、以下に記載されるアクセス制御対策は、データベースノードとコンピュートノード上のVMとの間の通信のために用いられるネットワークインターフェイス、すなわちデータベースアクセスパーティションのためのネットワークインターフェイスについてのみ実行されればよい。これらのアクセス制御対策は、データベースノードとストレージセルとの間の通信のために用いられるネットワークインターフェイス、すなわちストレージアクセスパーティションのためのネットワークインターフェイスに適用されなくてもよい。また、これらのアクセス制御対策は、コンピュートノード上のVMと他のコンピュートノード上のVMとの間の通信のために用いられるネットワークインターフェイスに適用されなくてもよい。
アクセス制御の粒度は、接続ライフサイクル段階に依存して異なる。アドレス解決およびパス解決の段階では、システムは、ノードACL536に基づいて特有のデータベースノードへのアクセスを制御し得る。すなわち、仮想マシンには、当該仮想マシンがアクセスすることが許可されている1つ以上のデータベースサービスを提供するデータベースノードについてのみ、アドレスおよびパス情報が提供され得る。接続確立およびデータ交換の段階では、システムは、ACL524および/またはサービスVMIDリスト516に基づいてVMと特定の名前付きデータベースサービスとの間のアクセスおよびデータ転送を制御する。
アドレス解決アクセス制御
仮想マシンとデータベースサービスとの間の接続のライフサイクル中のステージにおいてアクセス制御を提供するためにデータベースノード内に実装される1つのメカニズムは、アドレス解決アクセス制御である。アドレス解決プロトコル(ARP)通信が、特定の名前付きデータベースサービスを提供するデータベースノードに接続するためのプロセスの最初の部分としてVMによって用いられる。ARPを用いて、IPアドレスがハードウェアアドレス(イーサネットの場合はMACアドレス、またはIPoIB規格が定義する20バイトのIPoIBハードウェアアドレス)に分解される。ARP通信が、IPoIB通信を用いて、コンピュートノード上にデプロイされるVMとデータベースノードとの間で交換される。VMはコンピュートノードからマルチキャストARP要求を送信し、データベースノードは(許可されている場合)ユニキャストARP応答を返信する。データベースノードとVMとの間で交換されるマルチキャスト要求およびユニキャスト要求は両方とも、グローバルルーティングヘッダ(GRH)を所有していること、およびしたがって、GRH.SGID内にVMIDを提供することによってVMを識別することが必要である。
アドレス解決アクセス制御は、受信するアドレス解決プロトコル(ARP)要求のGRH.SGIDからのVMIDを、特有のデータベースノードへのアクセスが許可されているVMを識別する当該特有のデータベースノードについてプログラムされているノードACL536と突合わせることによって実行される。上述のように、ノードACL536は、特有のIPoIBネットワーキングインターフェイスのためのsysfs/ioctlインターフェイスを用いて各データベースノード上のIPoIBドライバ526に提供される。VMIDはノードACLに追加され得るか、またはノードACLから削除され得る。したがって、各データベースノードのIPoIBドライバは、特有のネットワーキングインターフェイス上でデータベースノードへのアクセスが許可されているVMのVMIDのリストを用いて構成される。IPoIBドライバ526はノードACLを用いて、データベースノードへのアクセスが許可されていないVMにARP応答を提供することを拒否することによってアクセス制御を実行し得る。言い換えれば、IPoIBドライバ526は、GRH.SGIDがノードACLにVMIDを含んでいない限り、ARP要求に応答しない。
VMからARP要求を受信すると、データベースノードのIPoIBドライバ526は要求を確認してGRHがパケット内に存在していることを検証し、GRHがない場合、要求は破棄されて応答はなされない。次に、データベースノードのIPoIBドライバ526は、インバウンドの各ARP要求/応答のGRH内のSGIDをノードACLと突合わせ、一致しない場合、要求は破棄されて応答はなされない。次に、データベースノードのIPoIBドライバ526は、インバウンドの各ARP要求/応答のGRH内のSGIDをARP要求/応答本体からのソースハードウェアアドレスの下位128ビットと突合わせ、一致しない場合、要求は破棄されて応答はなされない。最後の確認は、ARPキャッシュ内にプログラムされているハードウェアアドレスが対応のVMの有効なSGIDを所有していることを確かめるように意図されており、VMによって作成されたソケットの識別のために用いられ得る。GRHが存在している場合にのみ、SGIDはノードACL536と一致し、ARP要求/応答本体からのソースハードウェアアドレスの下位128ビットは、コンピュートノード上の仮想マシンに返信されるARP応答である。
したがって、ACLは、アドレス解決情報へのアクセスを、ノードACL536内のSGIDによって識別されるそれらのVMのみに制御する。したがって、VMは、自身がアクセスすることが許可されていないデータベースノードからのアドレス解決情報を受信できない。この結果、データベースノード(およびそれらが提供するデータベースサービス)は、ノードACL536に従ってそれらへのアクセスが許可されていないVMに対して効果的に「インビジブル」である。
接続確立アクセス制御
仮想マシンとデータベースサービスとの間の接続のライフサイクル中のステージにおいてアクセス制御を提供するためにデータベースノード内に実装される別のメカニズムは、接続確立アクセス制御である。VMは、自身が接続することを望むデータベースサービスの位置を突き止めると、当該データベースサービスとの接続を確立することを試みる。データベースノードは、RDMAのためのオープンソースソフトウェアスタックおよびカーネルバイパスアプリケーションを提供するオープン・ファブリック・エンタープライズ・ディストリビューション(OFED)によって提供される情報を用いて接続確立アクセス制御を実行する。実施形態では、システムは、コンピュートノード上の仮想マシンとデータベースとの間のすべての通信が、制御オペレーションのために用いられるARPトラフィックおよびTCPソケットを除いて、パケットがGRHヘッダを含んでいる状態でインフィニバンド高信頼性接続トランスポート上の通信に制約されるように構成される。接続確立アクセス制御は、接続要求がGRHヘッダを所有していること、およびGRH.SGIDが、アクセス制御リストによって示されている特有の名前付きデータベースプロセスへのアクセスが許可されているVMに対応するVMIDを識別すること、を確認することによって実行される。
図6は接続確立アクセス制御の局面を示す。接続マネージャ(接続マネージャエージェント)は、インフィニバンド仕様によって定義されるようなインフィニバンド接続確立プロトコルを実装する。接続確立は、接続確立に必要な情報を所有している接続管理データグラム(MAD)を用いて実行される。上述のように、本発明の実施形態では、データベースサーバシステムとミドルウェアマシンシステムとの間のパス上の接続管理データグラム(MAD)がGRHヘッダを所有していることが必要である。データベースノード360上で実行される接続管理エージェント(CMA)622は、接続確立時に以下のフィルタリングオペレーションを実行する。CMA622は、CMA MAD626を受信すると、GRHがMAD内に存在していることを検証し、存在しない場合、応答せずにCMA MADを破棄する。任意に、CMA622は、代替パスがCMA MAD626内で有効でないことを認証し得る。代替パス管理(APM)は好ましくは禁止されており、APMが指定されている場合、CMA MADは応答せずに任意に破棄され得る。次に、CMA622は、CMA MADのGRHからのSGIDをCMA MAD626の本体からの一次パスSGIDと突合わせ、不一致の場合、応答せずに接続管理MADを破棄する。CMAによるこれらのステップによって、接続確立イベントにおいて上位層(アプリケーションまたはIPoIB)に提供されるリモートアドレスがリモートVMに対応する有効なSGIDを含んでいることが認証されるため、このSGIDはアクセス制御認証のために上位層によって用いられ得る。
接続管理エージェント(CMA)は、ARPのためのIPoIBドライバと同様の付加的なノードレベルアクセス制御を実行するように改善され得る。たとえば、CMAは、MADに関連付けられているGRH.SGIDがデータベースノードへのアクセスが許可されているVMと一致しない限りデータベースノード内のアプリケーションレベルにイベントをプッシュアップしないように改善され得る。ノード境界(node-bounded)ACL能力をCMAに追加することは、攻撃防止をノード境界のできるだけ近くにプッシュすることによって、かつMADを拒絶のためのアプリケーションレベルに提供するオーバーヘッドを回避することによって、DoS攻撃に対処するのに特に有用である。
しかし、いくつかの実施形態では、接続管理エージェント(CMA)622は、特有のデータベースサービスへの特有のVMのアクセス制御を認証せず、アプリケーション層610内のデータベースプロセスがこの確認(たとえば図5BのDBインスタンス506および/またはDBリスナ546など)を実行することに依拠する。CMAはイベント通知メカニズムを用いて、接続確立状態マシン内のアプリケーション層へのアプリケーション移行を示す。アプリケーション層610内のデータベースプロセスは、接続を要求しているVMのSGID/VMIDを含む、その接続に割当てられたcma_idを介してリモートピアに関する情報を(関連のイベントをサブスクライブすることによって)取得し得る。たとえば、上位層プロトコル(DBインスタンス506、DBリスナ546、IPoIBまたは他のアプリケーション)は、接続確立イベントのリモートアドレス構造内に提供されるSGID/VMIDを用いて、ファイングレインアプリケーション層ACL524に基づいてアクセス制御を認証し、それによってACL524に基づいて接続を受付けるか拒絶し得る。
アプリケーション層は、OFEDスタックからのイベントを消費する。アプリケーション層は、OFEDイベント通知メカニズムを用いてIB接続を確立する。アプリケーション層は、上述のように接続確立フロー時に特定の接続のためのVMのVMIDを取得する。次に、アプリケーション層内のデータベースプロセス610は取得したVMIDを用いて、個々の接続のためのアクセス制御を実行する。アプリケーション層は、cma_id内のCMA層によって提供されるVMアイデンティティ(GRH.SGIDから取得したVMID)をいつおよびどのように用いて特有のデータベースサービスへのアクセスを制御するかを判断する。
アプリケーション層は、特定のコンピュートノードVMがどのデータベースサービスへのアクセスを取得しようとしているかを識別するために、VMIDに加えてデータベースサービス名を必要とする。この情報が接続確立時に利用可能でない場合、アプリケーションはVMアイデンティティ(GRH.SGIDから取得したVMID)を格納し、当初の接続を形成し、その後、VMアイデンティティを用いて、データベースサービス名が利用可能になるとすぐにアクセス許可を認証し得る(許可が拒絶された場合は接続をドロップする)。OFEDスタックとアプリケーション層との間のインターフェイスによって、アプリケーション層は接続の特有のエンドポイントを識別し、データベースサービス名を受信した後にアクセス制御判断に基づいて特有のエンドポイントとの接続性を終了することができる。したがって、アプリケーションは、最初に接続を受付け、後のステージにおいて接続を終了すると決定してもよい。これによってアプリケーション層は、接続確立前に利用可能であるデータベースサービス名に依拠せず、当初のデータ交換の一部としてそれを取得することができる。
図6に示されるように、アプリケーション層内のデータベースプロセス610が接続を受付けると、当該受付けはインフィニバンド接続管理/接続管理エージェント(IBCM/CMA)ドライバ622に通信される。IBCM/CMAドライバ622は、接続に関連付けられているハードウェアキューペア(queue pair:QP)コンテキスト624を作成する役割を果たす。ハードウェアQPコンテキストは、比較的少数のハードウェアQPコンテキストがHCAメモリのHW QPコンテキストキャッシュ634にキャッシュされた状態でシステムメモリ内に維持される。コンピュートノードVMに接続するために、ハードウェアQPコンテキスト624は、特定の接続についてGRHを用いる必要があることを示すフラグを含む属性と、接続に関連付けられている特定のVMのVMID/SGID値とを含む。
VMがCAM MAD内に要求されているデータベースサービスに接続することが許可されていない場合、アプリケーションは接続コンテキストの作成を防止し、および/または暫定的な接続コンテキストを破棄する。したがって、ACLを用いて、データベースノード内に実装される接続確立アクセス制御は無許可VMへの接続を拒絶することによって、VMと、VMがACLによってアクセスが許可されていないデータベースサービスとの間の接続、およびしたがって通信を防止し得る。
データ交換アクセス制御
仮想マシンとデータベースサービスとの間の接続のライフサイクル中のステージにおいてアクセス制御を提供するためにデータベースノード内に実装されるさらなるメカニズムは、データ交換アクセス制御である。データ交換アクセス制御は、接続確立段階時にプログラムされるハードウェアキューペア(QP)コンテキスト624に基づく。上述のように、図6に示されるように、ハードウェアQPコンテキストは、比較的少数のハードウェアQPコンテキストがHCAメモリのHW QPコンテキストキャッシュ634にキャッシュされた状態でシステムメモリ内に維持される。コンピュートノードVMに接続するために、ハードウェアQPコンテキスト624は、特定の接続についてGRHを用いる必要があることを示すフラグを含む属性と、接続に関連付けられている特定のVMのSGID値とを含む。データ交換アクセス制御は、接続上で受信されるすべてのパケットが指定されたGRH.SGIDを含んでおり、したがって当該接続の使用が許可されているVMから来ていることを検証する。非準拠パケットは破棄される。これによってHCAハードウェアは、接続上で送信されるすべてのデータパケットに対してデータ交換アクセス制御を実行することができる。
インフィニバンド仕様に準拠しているHCAは、その接続上で交換されるすべてのパケットがGRHヘッダを所有していること、および受信するパケットのGRH.SGIDが、ハードウェアQPコンテキスト内に指定されているリモートピアGIDと一致していることを認証する必要がある。加えて、すべてのシーケンス番号確認およびプロトコル確認も(TCPソケットについてのTCPフラグおよびシーケンス番号認証と同様に)ハードウェアによって実行される。これらの要件の実行によって、実行されるインフィニバンドオペレーション(RDMAオペレーションを含む)に対する制約なしで、かつパフォーマンスインパクトなしで、特定の接続上のVMとデータベースサービスとの間のデータ転送のHCAハードウェアによるオンザフライ(on-the-fly)アクセス制御認証が保証される。
図6に示されるように、HCA366は各インフィニバンドパケット402を検査し、とりわけ、GRH404内のSGIDが、接続に関連付けられているハードウェアQPコンテキストに関連付けられているSGIDと一致することを保証する。非準拠パケットはすべてドロップされる。しかし、準拠パケットは、一旦認証されるとヘッダが除去され、データ/ペイロード406が、接続に関連付けられているアプリケーションバッファ内に直接配置される。したがって、接続が確立された後でも、データベースノード上のHCAのハードウェアはすべてのパケットに対してデータ交換アクセス制御を実行して、パケットが、特定の接続を介して特定のデータベースにアクセスすることが許可されているVMから来ていることを保証する。
IPoIBアクセス制御
仮想マシンとデータベースサービスとの間の接続のライフサイクル中のステージにおいてアクセス制御を提供するためにデータベースノード内に実装される別のメカニズムは、IPoIBアクセス制御である。データベースリスナ546が用いる特有のTCPポートについてのTCPソケットトラフィックについて、制限付きアクセスが可能となる。しかし、データベースノード内のOSスタックIPフィルタは、無許可トラフィックを除外するように構成される。IPoIBは、接続モードまたはデータグラムモードについて構成され得る。IPoIB通信チャネルの各側は独立して構成される(すなわち、片側は接続モードに、反対側はデータグラムノードに構成され得る)。本発明の実施形態では、IPoIB上のすべての通信は接続モードのみに限定される。これは、データベースノードのIPoIBドライバを、コンピュートノード上のVMなどのリモートピアによって接続モードの使用を実行するように構成することによって達成される。
IPoIBは、パケットを受信すると以下の確認を行ない、通信が接続モードのみを使用していることを保証する。データグラムQP上の通信はARPパケットのみに限定されるべきであり、その他のすべてのパケットは破棄される。IPoIBは、データベースノードACLテーブル内にリストされているVMとの接続のみを確立する。接続管理エージェント(CMA)は、この接続を確立するリモートピアについてのアドレス情報をIPoIBに提供する。いくつかあるアドレス属性の中でも特に、CMAは、接続確立アクセス制御の節で記載されたようなピア(VM)のSGIDを提供することになる。IPoIBドライバは、接続確立イベントを処理する際に以下の確認を実行すべきである。CMAイベントからリモートエンドポイントアドレス情報を取得する。CMAイベント内に提供されたアドレス情報からVMのSGIDを取出す。VMのSGIDをACLリストエントリと突合わせ、VMのSGIDがACLリストエントリと一致しない場合であっても接続確立を破棄する。これによって、データベースプロセス接続を形成することを試みているVMが特有のデータベースサービスにアクセスすることが許可されていることを認証するデータベースリスナ546と連携してデータベースリスナ546と通信しているVMの肯定識別を可能にする改善されたセキュリティが提供される。
サービス拒否(DoS)攻撃防止
DoS攻撃からの保護は、従来のイーサネットファイアウォールアプライアンスによって提供される標準機能の1つである。DoS攻撃では、複数のメッセージがインターフェイスに送信される。メッセージが拒否された場合でも、大量のメッセージ、およびメッセージの拒否に関連するオーバーヘッドがインターフェイスのリソースを圧倒するため、それを正規のトラフィックに用いることはできない。DoS攻撃は必ずしも悪意ある者を表わしているわけではなく、たとえば、反復メッセージの原因となるハードウェアまたはソフトウェア内の誤った設定のソフトウェアまたはエラーによって生じる場合がある。本発明のシステムおよび方法は、上述のように、マルチテナント認識型の、ファイングレインのデータベース認識型のアクセス制御を提供する。しかし、アクセス制御はデータベースノードのソフトウェアおよびハードウェアによって実行されるため、システムは標準的なフィルタリング技術を用いてDoS問題に対処することはできない。攻撃がデータベースノードによって検出され得る頃には、データベースノードは既に攻撃を受けており、メッセージを拒否する少なくともいくらかのリソースを費やす必要がある。上述のように、拡張されるリソースの量は、メッセージ制御/拒否をノードのエッジの近くにプッシュすることによって低減され得る。しかし、他のDoS攻撃防止機能を提供することも望ましいであろう。
旧来のファイアウォールベースのフィルタリングアプローチに従うように試みる代わりに、本発明の実施形態は、完全にエンジニアリングされて高度に統合されたソリューションであることを最大限に活用してDoS問題に対処し得る。アクセス制御を担当するコンポーネントが、VMがアクセスすることが許可されていないデータベースサービスに当該VMが接続しようと繰返し試みていることを検出すると、統合システムのコンポーネントは修復動作を取り、アクセス違反をログ記録し得る。たとえば、データベースリスナ546が繰返されるアクセス違反を検出すると、データベースリスナは以下の動作を実行する。データベースリスナ546はアクセス違反をログ記録する。データベースリスナ546は、連続攻撃がより低レベルで、データベースノード境界のより近くで停止され、したがってデータベースノードのオペレーションへの干渉が減少し得るように、処理スタック(たとえばIB接続管理スタック、またはIPoIBドライバ)のより下部に配置された他のコンポーネントのアクセス制御フィルタを更新する。データベースリスナ546はさらに管理スタック210に通知し、攻撃のソースであるVMを識別するVMIDを含むGRH.SGIDを含む攻撃に関する情報を提供する。
システムは、コンピュートノードのHCAによって各パケットのGRH.SDIDに埋込まれているVMIDを用いて、仮想マシンの高信頼性の識別を提供する。したがって、攻撃者VMのアイデンティティは、攻撃パケットに関連付けられているGRH−SGIDから管理スタック210に知られている。管理スタックは、攻撃を停止する動作の1つ以上を取り得る。たとえば、管理スタックは、攻撃を仕掛けているVMのデータベースアクセスパーティション204へのアクセスを取消すことによって、当該VMがさらなるパケットをデータベースノードに送信することを防止し得る。加えて、たとえば、管理スタックは、管理スタックの構成、またはシステムアドミニストレータが取る動作に依存して、VMのオペレーションを終了する動作を取り得る。このように、DoSパケットがデータベースノードに到達することを防止することができるか、またはDoSパケットのソースを非アクティブにすることによって、標準的なパケットフィルタリングファイアウォールアプライアンスを用いずにDoS保護機能を達成することができる。
本発明の実施形態に従うと、マルチテナント環境においてネットワークセキュリティを提供するためのサーバが提供される。本実施形態のサーバは、たとえばデータベースサーバシステム240などの、先の実施形態で記載されたサーバのいずれかであり得る。さらに、サーバおよびそのコンポーネントは、先の実施形態において記載されたような本発明の原理に基づいて適切なオペレーションのいずれかを実行し得る。
本実施形態の例では、サーバは、アクセス制御リストを受信するための第1の受信ユニットを含み得、アクセス制御リストは、複数のデータベースサービスを識別し、複数のデータベースサービスの各々について、複数のデータベースサービスの各々にアクセスすることが許可されている1つ以上のデータベースサービスコンシューマに関連付けられている1つ以上のデータベースサービスコンシューマアイデンティティを識別し得る。一方、サーバは、複数のサーバを複数のアプリケーションサーバに直接接続する接続ベースのスイッチドファブリック上で送信される複数の通信パケットを受信するための第2の受信ユニットを含み得る。さらに、サーバは、複数の通信パケットの特定の各通信パケットについて以下のステップを実行するための第1の実行ユニットを含み得、ステップは、特定の通信パケットがいずれのデータベースサービスコンシューマアイデンティティも含んでいない場合、特定の通信パケットを破棄することと、特定の通信パケットがデータベースサービスコンシューマアイデンティティを含んでいる場合、特定の通信パケットに含まれている特定のデータベースコンシューマアイデンティティを用いて、特定の通信パケットを送信した特定のサービスコンシューマを識別することと、アクセス制御リストを特定の通信パケットに含まれている特定のデータベースコンシューマアイデンティティと組合せて用いて、アクセス制御リストが、特定のデータベースサービスコンシューマが複数のデータベースサービスのうちの特定のデータベースサービスにアクセスすることが許可されていると識別していない限り、特定のデータベースコンシューマによる特定のデータベースサービスへのアクセスを防止することとを含む。
本実施形態の例では、特定の通信パケットはアドレス解決プロトコル(ARP)要求であり得る。第1の実行ユニットは、アクセス制御リストが、特定のデータベースサービスコンシューマがサーバによって提供される複数のデータベースサービスのうちのいずれか1つにアクセスすることが許可されていると識別しているか否かを判断するための第1の判断ユニットを含み得る。さらに、第1の判断ユニットは、アクセス制御リストが、特定のデータベースサービスコンシューマがサーバによって提供される複数のデータベースサービスのうちのいずれか1つにアクセスすることが許可されていると識別していない場合、ARP応答を送信することなく、ARP要求をドロップするための第1のドロップユニットを含み得る。
本実施形態の例では、特定の通信パケットは接続確立要求である。第1の実行ユニットは、アクセス制御リストが、特定のデータベースサービスコンシューマがサーバによって提供される複数のデータベースサービスのうちのいずれか1つにアクセスすることが許可されていると識別しているか否かを判断するための第2の判断ユニットを含み得る。さらに、第1の実行ユニットは、アクセス制御リストが、特定のデータベースサービスコンシューマがサーバによって提供される複数のデータベースサービスのうちのいずれか1つにアクセスすることが許可されていると識別していない場合、接続を確立することなく、接続確立要求をドロップするための第2のドロップユニットを含み得る。
本実施形態の例では、特定の通信パケットは接続確立要求である。第1の実行ユニットは、接続確立要求がどの特定のデータベースサービスに接続することを要求しているかを判断するための第3の判断ユニットを含み得る。さらに、第1の実行ユニットは、アクセス制御リストが、特定のデータベースサービスコンシューマが特定のデータベースサービスにアクセスすることが許可されていると識別していない場合、接続確立要求に応答して特定のデータベースサービスへの接続の確立を防止するための防止ユニットを含み得る。
本実施形態の例では、特定の通信パケットは接続確立要求である。第1の実行ユニットは、接続確立要求に応答して接続を形成するための形成ユニットを含み得る。さらに、第1の実行ユニットは、接続上で特定のデータベースサービスコンシューマによってアクセスされるように意図されている特定のデータベースサービスのIDを接続上で受信するための第3の受信ユニットを含み得る。さらに、第1の実行ユニットは、アクセス制御リストが、特定のデータベースサービスコンシューマが特定のデータベースサービスにアクセスすることが許可されていると識別していない場合、接続を終了するための終了ユニットも含み得る。
本実施形態の例では、特定の通信パケットは、特定のデータベースサービスコンシューマと特定のデータベースサービスとの間に確立された接続上で受信されるデータパケットである。第1の実行ユニットは、ハードウェアコンテキストを、特定のデータベースサービスコンシューマと特定のデータベースサービスとの間に確立された接続に関連付けるための関連付けユニットを含み得、ハードウェアコンテキストは、特定のデータベースサービスコンシューマの特定のデータベースサービスコンシューマ識別子を含む。さらに、第1の実行ユニットは、データパケットが、接続に関連付けられているハードウェアコンテキストに含まれている特定のデータベースサービスコンシューマアイデンティティを含んでいない限り、データパケットをドロップするための第3のドロップユニットを含み得る。
本実施形態の例では、データパケットはサーバのホストチャネルアダプタにおいて受信され、ハードウェアコンテキストはホストチャネルアダプタのメモリに格納されている。第3のドロップユニットは、データパケットが、接続に関連付けられているハードウェアコンテキストに含まれており、かつホストチャネルアダプタのメモリに格納されている、ハードウェアコンテキストに含まれている特定のデータベースサービスコンシューマアイデンティティを含んでいない限り、ホストチャネルアダプタを用いてデータパケットをドロップするための第4のドロップユニットを含み得る。
本実施形態の例では、第1の実行ユニットは、アクセス制御リストに基づいて、アドレス解決アクセス制御、接続確立アクセス制御、およびデータ交換アクセス制御のうちの1つを実行するための第2の実行ユニットを含み得る。
本実施形態の例では、接続ベースのスイッチドファブリックはインフィニバンドファブリックであり、特定の通信パケットは、複数のサーバを複数のアプリケーションサーバに直接接続するインフィニバンドファブリック上でサーバにおいて受信されるインフィニバンドプロトコル通信パケットである。第1の実行ユニットは、インフィニバンドプロトコル通信パケットがグローバルルーティングヘッダを含んでいない場合、インフィニバンドプロトコル通信パケットを破棄するための破棄ユニットを含み得、インフィニバンドプロトコル通信パケットがグローバルルーティングヘッダを含んでいる場合、インフィニバンドプロトコル通信パケットのグローバルルーティングヘッディングに含まれているソースグローバル識別子を用いて、特定のインフィニバンドプロトコル通信パケットを送信した特定のサービスコンシューマを識別する。さらに、第1の実行ユニットは、アクセス制御リストをインフィニバンドプロトコル通信パケットのグローバルルーティングヘッディングに含まれているソースグローバル識別子と組合せて用いて、アクセス制御リストが、特定のデータベースサービスコンシューマが複数のデータベースサービスのうちの特定のデータベースサービスにアクセスすることが許可されていると識別していない限り、特定のデータベースコンシューマによる特定のデータベースサービスへのアクセスを防止するための使用ユニットを含み得る。
本実施形態の例では、接続ベースのスイッチドファブリックはインフィニバンドファブリックである。サーバはさらに、複数のデータベースサービスコンシューマから送信される各インフィニバンドパケットが、各パケットに関連付けられているデータベースサービスコンシューマを識別するソースグローバル識別子を含まなければならないように、複数のサーバを、各々がグローバルルーティングヘッダおよびソースグローバル識別子を含むインフィニバンドプロトコルパケットを用いること以外によって複数のデータベースサービスコンシューマと複数のサービスとの間のデータ交換を禁止するように構成するための構成ユニットを含み得る。
本発明の別の実施形態に従うと、マルチテナント環境においてネットワークセキュリティを提供するためのサーバが提供される。本実施形態のサーバは、たとえばデータベースサーバシステム240などの、先の実施形態で記載されたサーバのいずれかであり得る。さらに、サーバおよびそのコンポーネントは、先の実施形態において記載されたような本発明の原理に基づいて適切なオペレーションのいずれかを実行し得る。
本実施形態の例では、サーバは、接続ベースのスイッチドファブリックを、複数のデータベースサービスコンシューマおよび複数のデータベースサーバにとってアクセス可能なデータベースアクセスパーティションを有するように構成するための第1の構成ユニットを含み得る。サーバはさらに、接続ベースのスイッチドファブリックを、複数のサーバおよび複数のストレージセルにとってはアクセス可能であるが複数のデータベースサービスコンシューマにとってはアクセス不可能なストレージアクセスパーティションを有するように構成するための第2の構成ユニットを含み得る。サーバはさらに、複数のアプリケーションサーバの各々のネットワークインターフェイスを、アプリケーションサーバ上にホストされている複数のデータベースサービスコンシューマの各々を固有のデータベースサービスコンシューマアイデンティティに関連付けるように構成するための第3の構成ユニットを含み得る。サーバはさらに、複数のアプリケーションサーバの各々のネットワークインターフェイスを、データベースサービスコンシューマから複数のデータベースサービスに向けて送信される各通信パケットの内部でアプリケーションサーバ上にホストされている複数のデータベースサービスコンシューマの各々に関連付けられているデータベースサービスコンシューマアイデンティティを含むように構成するための第4の構成ユニットを含み得る。サーバはさらに、複数のサーバの各々にアクセス制御リストを提供するための提供ユニットを含み得、アクセス制御リストは、複数のデータベースサービスを識別し、複数のデータベースサービスの各々について、複数のデータベースサービスの各々にアクセスすることが許可されている1つ以上のデータベースサービスコンシューマに関連付けられている1つ以上のデータベースサービスコンシューマアイデンティティを識別する。サーバはさらに、データベースサービスコンシューマアイデンティティを含んでいない複数のアプリケーションサーバから受信したすべての通信パケットを、複数のデータベースの各々のネットワークインターフェイスを用いて破棄するための破棄ユニットを含み得る。サーバはさらに、アクセス制御リストを、複数のデータベースサーバのうちの特定のデータベースサーバの特定のネットワークインターフェイスにおいて受信した特定の通信パケットに含まれている特定のデータベースサービスコンシューマアイデンティティと組合せて用いて、アクセス制御リストが、特定のデータベースサービスコンシューマが複数のデータベースサービスのうちの特定のデータベースサービスにアクセスすることが許可されていると識別していない限り、特定のデータベースコンシューマアイデンティティに関連付けられている特定のデータベースコンシューマによる特定のデータベースサービスへのアクセスを防止するための使用ユニットを含み得る。
本実施形態の例では、特定の通信パケットはアドレス解決プロトコル(ARP)要求である。使用ユニットは、アクセス制御リストが、特定のデータベースサービスコンシューマがサーバによって提供される複数のデータベースサービスのうちのいずれか1つにアクセスすることが許可されていると識別しているか否かを判断するための第1の判断ユニットを含み得る。使用ユニットはさらに、アクセス制御リストが、特定のデータベースサービスコンシューマがサーバによって提供される複数のデータベースサービスのうちのいずれか1つにアクセスすることが許可されていると識別していない場合、ARP応答を送信することなく、ARP要求をドロップするためのドロップユニットを含み得る。
本実施形態の例では、特定の通信パケットは接続確立要求である。使用ユニットは、アクセス制御リストが、特定のデータベースサービスコンシューマがサーバによって提供される複数のデータベースサービスのうちのいずれか1つにアクセスすることが許可されていると識別しているか否かをサーバ内で判断するための第2の判断ユニットを含み得る。使用ユニットはさらに、アクセス制御リストが、特定のデータベースサービスコンシューマがサーバによって提供される複数のデータベースサービスのうちのいずれか1つにアクセスすることが許可されていると識別していない場合、接続を確立することなく、接続確立要求をドロップするための第2のドロップユニットを含み得る。
本実施形態の例では、特定の通信パケットは接続確立要求である。使用ユニットは、接続確立要求がどの特定のデータベースサービスに接続することを要求しているかを判断するための第3の判断ユニットを含み得る。使用ユニットはさらに、アクセス制御リストが、特定のデータベースサービスコンシューマが特定のデータベースサービスにアクセスすることが許可されていると識別していない場合、接続確立要求に応答して特定のデータベースサービスへの接続の確立を防止するための防止ユニットを含み得る。
本実施形態の例では、特定の通信パケットは接続確立要求である。使用ユニットは、接続確立要求に応答して接続を形成するための形成ユニットと、接続上で特定のデータベースサービスコンシューマによってアクセスされるように意図されている特定のデータベースサービスのIDを接続上で受信するための受信ユニットと、アクセス制御リストが、特定のデータベースサービスコンシューマが特定のデータベースサービスにアクセスすることが許可されていると識別していない場合、接続を終了するための終了ユニットとを含み得る。
本実施形態の例では、特定の通信パケットは、特定のデータベースサービスコンシューマと特定のデータベースサービスとの間に確立された接続上で受信されるデータパケットである。使用ユニットは、ハードウェアコンテキストを、特定のデータベースサービスコンシューマと特定のデータベースサービスとの間に確立された接続に関連付けるための関連付けユニットを含み得、ハードウェアコンテキストは、特定のデータベースサービスコンシューマの特定のデータベースサービスコンシューマ識別子を含み、使用ユニットはさらに、データパケットが、接続に関連付けられているハードウェアコンテキストに含まれている特定のデータベースサービスコンシューマアイデンティティを含んでいない限り、データパケットをドロップするための第3のドロップユニットを含み得る。
本実施形態の例では、特定のネットワークインターフェイスはホストチャネルアダプタであり、データパケットはサーバのホストチャネルアダプタにおいて受信され、ハードウェアコンテキストはホストチャネルアダプタのメモリに格納されている。第3のドロップユニットは、データパケットが、接続に関連付けられているハードウェアコンテキストに含まれており、かつホストチャネルアダプタのメモリに格納されている、特定のデータベースサービスコンシューマアイデンティティを含んでいない限り、ホストチャネルアダプタを用いてデータパケットをドロップするための第4のドロップユニットを含み得る。
本実施形態の例では、使用ユニットは、アクセス制御リストに基づいてアドレス解決アクセス制御、接続確立アクセス制御、およびデータ交換アクセス制御のうちの1つを実行するための実行ユニットを含み得る。
本実施形態の例では、接続ベースのスイッチドファブリックはインフィニバンドファブリックである。サーバはさらに、複数のデータベースサービスコンシューマから送信される各インフィニバンドパケットが、各パケットに関連付けられているデータベースサービスコンシューマを識別するソースグローバル識別子を含まなければならないように、複数のデータベースサーバを、各々がグローバルルーティングヘッダおよびソースグローバル識別子を含むインフィニバンドプロトコルパケットを用いること以外によって複数のデータベースサービスコンシューマと複数のデータベースサービスとの間のデータ交換を禁止するように構成するための第5の構成ユニットを含み得る。
本実施形態の例では、サーバはさらに、複数のデータベースサーバの各々のネットワークインターフェイスを用いて、複数のデータベースサービスへの不正アクセスの試みと、不正アクセスの試みに関連付けられている通信パケットに含まれているデータベースサービスコンシューマアイデンティティとをログ記録するための第2の使用ユニットと、複数のデータベースサービスへの不正アクセスの試みと、不正アクセスの試みに関連付けられている通信パケットに含まれているデータベースサービスアイデンティティとのログ記録を管理スタックに提供するための第2の提供ユニットと、管理スタックを用いて、不正アクセスの試みに関連付けられている通信パケットに含まれているデータベースサービスコンシューマアイデンティティによって識別されるデータベースコンシューマがデータベースアクセスパーティションにアクセスすることを阻止することによって、複数のデータベースサーバとの通信を防止して不正アクセスの試みを阻止するための第3の使用ユニットとを含み得る。
一実施形態の方法は、接続ベースのスイッチドファブリックと、複数の異なるテナントに関連付けられているデータを保持している複数のストレージセルと、複数のデータベースサービスを提供する複数のデータベースサーバとを含むマルチテナント環境においてネットワークセキュリティを提供し、複数のデータベースサービスの各々は、複数のストレージセル内に保持されている複数の異なるテナントに関連付けられているデータを利用し、マルチテナント環境はさらに、複数の異なるテナントに関連付けられている複数のデータベースサービスコンシューマをホストする複数のアプリケーションサーバを含み、方法は、接続ベースのスイッチドファブリックを、複数のデータベースサービスコンシューマおよび複数のデータベースサーバにとってアクセス可能なデータベースアクセスパーティションを有するように構成することと、接続ベースのスイッチドファブリックを、複数のデータベースサーバおよび複数のストレージセルにとってはアクセス可能であるが複数のデータベースサービスコンシューマにとってはアクセス不可能なストレージアクセスパーティションを有するように構成することと、複数のデータベースサービスコンシューマの各々が複数のデータベースサービスコンシューマの各々に関連付けられている固有のデータベースサービスアイデンティティを修正またはスプーフィングすることができないように、複数のアプリケーションサーバの各々のネットワークインターフェイスコントローラを、アプリケーションサーバ上にホストされている複数のデータベースサービスコンシューマの各々を固有のデータベースサービスコンシューマアイデンティティに関連付けるようにセキュアに構成することと、複数のアプリケーションサーバの各々のネットワークインターフェイスコントローラを、データベースサービスコンシューマから複数のデータベースサービスに向けて送信される通信パケットの各々の内部のアプリケーションサーバ上にホストされている複数のデータベースサービスコンシューマの各々に関連付けられているデータベースサービスコンシューマアイデンティティを含むように構成することと、複数のデータベースサーバの各々にアクセス制御リストを提供することとを含み、アクセス制御リストは、複数のデータベースサービスを識別し、複数のデータベースサービスの各々について、複数のデータベースサービスの各々にアクセスすることが許可されている1つ以上のデータベースサービスコンシューマに関連付けられている1つ以上のデータベースサービスコンシューマアイデンティティを識別し、方法はさらに、データベースサービスコンシューマアイデンティティを含んでいない複数のアプリケーションサーバから受信したすべての通信パケットを、複数のデータベースの各々のネットワークインターフェイスを用いて破棄することと、アクセス制御リストを、複数のデータベースサーバのうちの1つのデータベースサーバのネットワークインターフェイスにおいて受信した通信パケットに含まれているデータベースサービスコンシューマアイデンティティと組合せて用いて、アクセス制御リストが、データベースサービスコンシューマが複数のデータベースサービスのうちの1つのデータベースサービスにアクセスすることが許可されていると識別していない限り、データベースコンシューマアイデンティティに関連付けられているデータベースサービスコンシューマによる1つのデータベースサービスへのアクセスを防止することとを含む。
一実施形態の方法では、通信パケットはアドレス解決プロトコル(ARP)要求であり、アクセス制御リストを、複数のデータベースサーバのうちの1つのデータベースサーバのネットワークインターフェイスにおいて受信した通信パケットに含まれているデータベースコンシューマアイデンティティと組合せて用いて、アクセス制御リストが、データベースサービスコンシューマが複数のデータベースサービスのうちの1つのデータベースサービスにアクセスすることが許可されていると識別していない限り、データベースコンシューマアイデンティティに関連付けられているデータベースコンシューマによる1つのデータベースサービスへのアクセスを防止することは、アクセス制御リストが、データベースサービスコンシューマがデータベースサーバによって提供される複数のデータベースサービスのうちのいずれか1つにアクセスすることが許可されていると識別しているか否かを判断することと、アクセス制御リストが、データベースサービスコンシューマがデータベースサーバによって提供される複数のデータベースサービスのうちのいずれか1つにアクセスすることが許可されていると識別していない場合、ARP応答を送信することなく、ARP要求をドロップすることとを含む。
一実施形態の方法では、通信パケットは接続確立要求であり、アクセス制御リストを、複数のデータベースサーバのうちの1つのデータベースサーバのネットワークインターフェイスにおいて受信した通信パケットに含まれているデータベースコンシューマアイデンティティと組合せて用いて、アクセス制御リストが、データベースサービスコンシューマが複数のデータベースサービスのうちの1つのデータベースサービスにアクセスすることが許可されていると識別していない限り、データベースコンシューマアイデンティティに関連付けられているデータベースコンシューマによる1つのデータベースサービスへのアクセスを防止することは、アクセス制御リストが、データベースサービスコンシューマがデータベースサーバによって提供される複数のデータベースサービスのうちのいずれか1つにアクセスすることが許可されていると識別しているか否かを、1つのデータベースサーバ内で判断することと、アクセス制御リストが、データベースサービスコンシューマがデータベースサーバによって提供される複数のデータベースサービスのうちのいずれか1つにアクセスすることが許可されていると識別していない場合、接続を確立することなく、接続確立要求をドロップすることとを含む。
一実施形態の方法では、通信パケットは接続確立要求であり、アクセス制御リストを、複数のデータベースサーバのうちの1つのデータベースサーバのネットワークインターフェイスにおいて受信した通信パケットに含まれているデータベースコンシューマアイデンティティと組合せて用いて、アクセス制御リストが、データベースサービスコンシューマが複数のデータベースサービスのうちの1つのデータベースサービスにアクセスすることが許可されていると識別していない限り、データベースコンシューマアイデンティティに関連付けられているデータベースコンシューマによる1つのデータベースサービスへのアクセスを防止することは、接続確立要求がどのデータベースサービスに接続することを要求しているかを、1つのデータベースサーバ内で判断することと、アクセス制御リストが、データベースサービスコンシューマが1つのデータベースサービスにアクセスすることが許可されていると識別していない場合、接続確立要求に応答してデータベースサービスへの接続の確立を防止することととを含む。
一実施形態の方法では、通信パケットは接続確立要求であり、アクセス制御リストを、複数のデータベースサーバのうちの1つのデータベースサーバのネットワークインターフェイスにおいて受信した通信パケットに含まれているデータベースコンシューマアイデンティティと組合せて用いて、アクセス制御リストが、データベースサービスコンシューマが複数のデータベースサービスのうちの1つのデータベースサービスにアクセスすることが許可されていると識別していない限り、データベースコンシューマアイデンティティに関連付けられているデータベースコンシューマによる1つのデータベースサービスへのアクセスを防止することは、接続確立要求に応答して接続を形成することと、接続上でデータベースサービスコンシューマによってアクセスされるように意図されているデータベースサービスのIDを、接続上で受信することと、アクセス制御リストが、データベースサービスコンシューマがデータベースサービスにアクセスすることが許可されていると識別していない場合、接続を終了することとを含む。
一実施形態の方法では、通信パケットは、データベースサービスコンシューマとデータベースサービスとの間に確立された接続上で受信されるデータパケットであり、アクセス制御リストを、複数のデータベースサーバのうちの1つのデータベースサーバのネットワークインターフェイスにおいて受信した通信パケットに含まれているデータベースコンシューマアイデンティティと組合せて用いて、アクセス制御リストが、データベースサービスコンシューマが複数のデータベースサービスのうちの1つのデータベースサービスにアクセスすることが許可されていると識別していない限り、データベースコンシューマアイデンティティに関連付けられているデータベースコンシューマによる1つのデータベースサービスへのアクセスを防止することは、ハードウェアコンテキストを、データベースサービスコンシューマとデータベースサービスとの間に確立された接続に関連付けることを含み、ハードウェアコンテキストは、データベースサービスコンシューマのデータベースサービスコンシューマ識別子を含み、防止することはさらに、データパケットが、接続に関連付けられているハードウェアコンテキストに含まれているデータベースサービスコンシューマアイデンティティを含んでいない限り、データパケットをドロップすることを含む。
一実施形態の方法では、ネットワークインターフェイスはホストチャネルアダプタであり、データパケットは1つのデータベースサーバのホストチャネルアダプタにおいて受信され、ハードウェアコンテキストはホストチャネルアダプタのメモリに格納され、データパケットが、接続に関連付けられているハードウェアコンテキストに含まれているデータベースサービスコンシューマアイデンティティを含んでいない限り、データパケットをドロップすることは、データパケットが、接続に関連付けられているハードウェアコンテキストに含まれており、かつホストチャネルアダプタのメモリに格納されている、データベースサービスコンシューマアイデンティティを含んでいない限り、ホストチャネルアダプタを用いてデータパケットをドロップすることを含む。
一実施形態の方法では、アクセス制御リストを、複数のデータベースサーバのうちの1つのデータベースサーバのネットワークインターフェイスにおいて受信した通信パケットに含まれているデータベースコンシューマアイデンティティと組合せて用いて、アクセス制御リストが、データベースサービスコンシューマが複数のデータベースサービスのうちの1つのデータベースサービスにアクセスすることが許可されていると識別していない限り、データベースコンシューマアイデンティティに関連付けられているデータベースコンシューマによる1つのデータベースサービスへのアクセスを防止することは、アクセス制御リストに基づいて、アドレス解決アクセス制御、接続確立アクセス制御、およびデータ交換アクセス制御のうちの少なくとも1つを実行することを含む。
一実施形態の方法は、複数のデータベースサーバの各々に、ストレージアクセスパーティションを用いて複数のストレージセルと通信するための別のネットワークインターフェイスを提供し、別のネットワークインターフェイスは、アクセス制御リストに基づいて、アドレス解決アクセス制御、接続確立アクセス制御、およびデータ交換アクセス制御を実行しないように構成される。
一実施形態の方法は、複数のデータベースサーバの各々のネットワークインターフェイスを用いて、複数のデータベースサービスへの不正アクセスの試みと、不正アクセスの試みに関連付けられている通信パケットに含まれているデータベースサービスコンシューマアイデンティティとをログ記録することと、複数のデータベースサービスへの不正アクセスの試みと、不正アクセスの試みに関連付けられている通信パケットに含まれているデータベースサービスコンシューマアイデンティティとのログ記録を管理スタックに提供することと、管理スタックを用いて、不正アクセスの試みに関連付けられている通信パケットに含まれているデータベースサービスコンシューマアイデンティティによって識別されるデータベースコンシューマがデータベースアクセスパーティションにアクセスすることを阻止することによって、複数のデータベースサーバとの通信を防止して不正アクセスの試みを阻止することとを提供する。
一実施形態の方法は、マルチテナント環境においてネットワークセキュリティを提供し、マルチテナント環境は、複数の異なるテナントに関連付けられているデータを保持している複数のストレージセルと、複数の異なるテナントに関連付けられているデータを利用する複数のデータベースサービスを提供する複数のデータベースサーバと、複数の異なるテナントに関連付けられている複数のデータベースサービスコンシューマをホストする複数のアプリケーションサーバと、複数のデータベースサービスコンシューマおよび複数のデータベースサービスにとってアクセス可能なデータベースアクセスパーティションを有するように構成される接続ベースのスイッチドファブリックと、複数のデータベースサービスおよび複数のストレージセルにとってはアクセス可能であるが複数のデータベースサービスコンシューマにとってはアクセス不可能なストレージアクセスパーティションと、複数のアプリケーションサーバの各々の内部のアプリケーションサーバネットワークインターフェイスコントローラとを含み、アプリケーションサーバネットワークインターフェイスコントローラは、複数のデータベースサービスコンシューマの各々が複数のデータベースサービスコンシューマの各々に関連付けられている固有のデータベースサービスアイデンティティを修正またはスプーフィングすることができないように、アプリケーションサーバ上にホストされている複数のデータベースサービスコンシューマの各々を固有のデータベースサービスコンシューマアイデンティティに関連付けるようにセキュアに構成され、アプリケーションサーバネットワークインターフェイスコントローラはさらに、各データベースサービスコンシューマから複数のデータベースサービスに向けて送信される各通信パケット内にデータベースサービスコンシューマアイデンティティを含むように構成され、マルチテナント環境はさらに、複数のデータベースサーバの各々の上に格納されているアクセス制御リストを含み、アクセス制御リストは、複数のデータベースサービスを識別し、複数のデータベースサービスの各々について、複数のデータベースサービスの各々にアクセスすることが許可されている1つ以上のデータベースサービスコンシューマに関連付けられている1つ以上のデータベースサービスコンシューマアイデンティティを識別し、マルチテナント環境はさらに、複数のデータベースサーバの各々の内部にデータベースサーバネットワークインターフェイスを含み、各データベースサーバネットワークインターフェイスは、データベースサービスコンシューマアイデンティティを含んでいない複数のデータベースサービスコンシューマから受信したすべての通信パケットを破棄するようにセキュアに構成され、通信パケットを受信する各データベースサーバネットワークインターフェイスは、アクセス制御リストを、通信パケットに含まれているデータベースサービスコンシューマアイデンティティと組合せて用いて、アクセス制御リストが、データベースサービスコンシューマが複数のデータベースサービスのうちの1つのデータベースサービスにアクセスすることが許可されていると識別していない限り、データベースコンシューマアイデンティティに関連付けられているデータベースコンシューマによる1つのデータベースサービスへのアクセスを防止するように構成される。
一実施形態の方法では、通信パケットはアドレス解決プロトコル(ARP)要求であり、ARP要求を受信するデータベースサーバネットワークインターフェイスは、アクセス制御リストが、データベースサービスコンシューマがデータベースサーバによって提供される複数のデータベースサービスのうちのいずれか1つにアクセスすることが許可されていると識別しているか否かを判断し、アクセス制御リストが、データベースサービスコンシューマがデータベースサーバによって提供される複数のデータベースサービスのうちのいずれか1つにアクセスすることが許可されていると識別していない場合、ARP応答を送信することなく、ARP要求をドロップするように構成される。
一実施形態の方法では、通信パケットは接続確立要求であり、接続確立要求を受信するデータベースサーバネットワークインターフェイスは、アクセス制御リストが、データベースサービスコンシューマがデータベースサーバによって提供される複数のデータベースサービスのうちのいずれか1つにアクセスすることが許可されていると識別しているか否かを判断し、アクセス制御リストが、データベースサービスコンシューマがデータベースサーバによって提供される複数のデータベースサービスのうちのいずれか1つにアクセスすることが許可されていると識別していない場合、接続を確立することなく、接続確立要求をドロップするように構成される。
一実施形態の方法では、通信パケットは接続確立要求であり、接続確立要求を受信するデータベースサーバネットワークインターフェイスは、接続確立要求がどのデータベースサービスに接続することを要求しているかを判断し、アクセス制御リストが、データベースサービスコンシューマが1つのデータベースサービスにアクセスすることが許可されていると識別していない場合、接続確立要求に応答してデータベースサービスへの接続の確立を防止するように構成される。
一実施形態の方法では、通信パケットは接続確立要求であり、接続確立要求を受信するデータベースサーバネットワークインターフェイスは、接続確立要求に応答して接続を形成し、接続上でデータベースサービスコンシューマによってアクセスされるように意図されているデータベースサービスのIDを、接続上で受信し、アクセス制御リストが、データベースサービスコンシューマがデータベースサービスにアクセスすることが許可されていると識別していない場合、接続を終了するように構成される。
一実施形態の方法では、通信パケットは、データベースサービスコンシューマとデータベースサービスとの間に確立された接続上で受信されるデータパケットであり、接続上でデータパケットを受信するデータベースサーバネットワークインターフェイスはホストチャネルアダプタであり、ホストチャネルアダプタは、ハードウェアコンテキストを、データベースサービスコンシューマとデータベースサービスとの間に確立された接続に関連付けるように構成され、ハードウェアコンテキストは、ホストチャネルアダプタのメモリに格納され、データベースサービスコンシューマのデータベースサービスコンシューマアイデンティティを含み、ホストチャネルアダプタはさらに、データパケットが、接続に関連付けられているハードウェアコンテキストに含まれており、かつホストチャネルアダプタのメモリに格納されている、データベースサービスコンシューマアイデンティティを含んでいない限り、データパケットをドロップするように構成される。
一実施形態の方法では、複数のデータベースサーバの各々の内部のデータベースサーバネットワークインターフェイスは、複数のデータベースサーバの各々の上に格納されているアクセス制御リストを用いて、アクセス制御リストに基づいて、アドレス解決アクセス制御、接続確立アクセス制御、およびデータ交換アクセス制御のうちの少なくとも1つを実行するように構成される。
一実施形態の方法では、複数のデータベースサーバの各々は、ストレージアクセスパーティションを用いて複数のストレージセルと通信するための別のネットワークインターフェイスを含み、別のネットワークインターフェイスは、アクセス制御リストに基づいてアドレス解決アクセス制御、接続確立アクセス制御、およびデータ交換アクセス制御を実行しないように構成される。
一実施形態の方法は、複数のデータベースサーバと通信している管理スタックを提供し、複数のデータベースサーバの各々の内部のデータベースサーバネットワークインターフェイスは、複数のデータベースサービスへの不正アクセスの試みと、不正アクセスの試みに関連付けられている通信パケットに含まれているデータベースサービスコンシューマアイデンティティとをログ記録し、ログ記録を管理スタックに提供するように構成され、管理スタックは、不正アクセスの試みに関連付けられている通信パケットに含まれているデータベースサービスコンシューマアイデンティティによって識別されるデータベースコンシューマがデータベースアクセスパーティションにアクセスすることを阻止することによって、複数のデータベースサーバとの通信を防止して不正アクセスの試みを阻止するように構成される。
一実施形態の方法は、接続ベースのスイッチドファブリックと、複数の異なるテナントに関連付けられているデータを保持している複数のストレージセルと、複数のデータベースサービスを提供する複数のデータベースサーバとを含むマルチテナント環境においてネットワークセキュリティを提供するための命令が格納されている非一時的なコンピュータ可読媒体を提供し、複数のデータベースサービスの各々は、複数のストレージセル内に保持されている複数の異なるテナントに関連付けられているデータを利用し、マルチテナント環境はさらに、複数の異なるテナントに関連付けられている複数のデータベースサービスコンシューマをホストする複数のアプリケーションサーバを含み、命令は、実行されると、マルチテナント環境のコンポーネントにステップを実行させ、ステップは、接続ベースのスイッチドファブリックを、複数のデータベースサービスコンシューマおよび複数のデータベースサーバにとってアクセス可能なデータベースアクセスパーティションを有するように構成することと、接続ベースのスイッチドファブリックを、複数のデータベースサーバおよび複数のストレージセルにとってはアクセス可能であるが複数のデータベースサービスコンシューマにとってはアクセス不可能なストレージアクセスパーティションを有するように構成することと、複数のデータベースサービスコンシューマの各々が複数のデータベースサービスコンシューマの各々に関連付けられている固有のデータベースサービスアイデンティティを修正またはスプーフィングすることができないように、複数のアプリケーションサーバの各々のネットワークインターフェイスコントローラを、アプリケーションサーバ上にホストされている複数のデータベースサービスコンシューマの各々を固有のデータベースサービスコンシューマアイデンティティに関連付けるようにセキュアに構成することと、複数のアプリケーションサーバの各々のネットワークインターフェイスコントローラを、データベースサービスコンシューマから複数のデータベースサービスに向けて送信される通信パケットの各々の内部のアプリケーションサーバ上にホストされている複数のデータベースサービスコンシューマの各々に関連付けられているデータベースサービスコンシューマアイデンティティを含むように構成することと、複数のデータベースサーバの各々にアクセス制御リストを提供することとを含み、アクセス制御リストは、複数のデータベースサービスを識別し、複数のデータベースサービスの各々について、複数のデータベースサービスの各々にアクセスすることが許可されている1つ以上のデータベースサービスコンシューマに関連付けられている1つ以上のデータベースサービスコンシューマアイデンティティを識別し、ステップはさらに、データベースサービスコンシューマアイデンティティを含んでいない複数のアプリケーションサーバから受信したすべての通信パケットを、複数のデータベースの各々のネットワークインターフェイスを用いて破棄することと、アクセス制御リストを、複数のデータベースサーバのうちの1つのデータベースサーバノードのネットワークインターフェイスにおいて受信した通信パケットに含まれているデータベースサービスコンシューマアイデンティティと組合せて用いて、アクセス制御リストが、データベースサービスコンシューマが複数のデータベースサービスのうちの1つのデータベースサービスにアクセスすることが許可されていると識別していない限り、データベースコンシューマアイデンティティに関連付けられているデータベースサービスコンシューマによる1つのデータベースサービスへのアクセスを防止することとを含む。
一実施形態の方法では、接続ベースのスイッチドファブリックはインフィニバンドファブリックであり、方法はさらに、複数のデータベースサービスコンシューマから送信される各インフィニバンドパケットが、各パケットに関連付けられているデータベースサービスコンシューマを識別するソースグローバル識別子を含まなければならないように、複数のデータベースサーバを、各々がグローバルルーティングヘッダおよびソースグローバル識別子を含むインフィニバンドプロトコルパケットを用いること以外によって複数のデータベースサービスコンシューマと複数のデータベースサービスとの間のデータ交換を禁止するように構成することを含む。
一実施形態のシステムでは、接続ベースのスイッチドファブリックはインフィニバンドファブリックであり、複数のデータベースサーバの各々の内部のデータベースサーバネットワークインターフェイスは、複数のデータベースサービスコンシューマから送信される各インフィニバンドパケットが、各パケットに関連付けられているデータベースサービスコンシューマを識別するソースグローバル識別子を含まなければならないように、各々がグローバルルーティングヘッダおよびソースグローバル識別子を含むインフィニバンドプロトコルパケットを用いること以外によって複数のデータベースサービスコンシューマと複数のデータベースサービスとの間のデータ交換を禁止するように構成される。
本発明のさまざまな実施形態を上述してきたが、これら実施形態が限定ではなく例示のために提示されてきたことが理解されるはずである。形態および詳細のさまざまな変更が、発明の精神および範囲から逸脱することなく本明細書中においてなされ得ることが関連技術の当業者に明らかになるであろう。
本発明の多くの特徴は、ハードウェア、ソフトウェア、ファームウェアもしくはこれらの組み合わせにおいて、ハードウェア、ソフトウェア、ファームウェアもしくはこれらの組み合わせを用いて、またはハードウェア、ソフトウェア、ファームウェアもしくはこれらの組み合わせの助けを借りて、実行することができる。本発明は、1つ以上のプロセッサ、メモリ、および/または本開示の教示に従ってプログラムされたコンピュータ可読記憶媒体を含む1つ以上の従来の汎用または専用デジタルコンピュータ、コンピューティングデバイス、マシン、またはマイクロプロセッサを用いて簡便に実装され得る。本発明の特徴は、たとえば、特定用途向け集積回路(ASIC)およびプログラマブルロジックデバイスなどのハードウェアコンポーネントを用いてハードウェアにおいて実装されてもよい。本明細書に記載される機能を実行するためのハードウェア状態マシンの実装は、関連技術の当業者に明らかになるであろう。
本発明の特徴は、処理システムのハードウェアを制御するために、および処理システムが本発明の結果を利用する他のメカニズムと対話することを可能にするために、ソフトウェアおよび/またはファームウェアに組込まれ得る。そのようなソフトウェアまたはファームウェアは、アプリケーションコード、デバイスドライバ、オペレーティングシステム、および実行環境/コンテナを含み得るが、それらに限定されない。ソフトウェア技術の当業者には明らかであるように、本開示の教示に基づいて、適切なソフトウェアコーディングが、熟練のプログラマによって容易に準備され得る。
いくつかの実施形態では、本発明は、本発明の処理のいずれかを実行するようコンピュータをプログラムするのに用いられ得る命令を格納した記憶媒体またはコンピュータ可読媒体であるコンピュータプログラムプロダクトを含む。当該記憶媒体またはコンピュータ可読媒体は、フロッピー(登録商標)ディスク、光ディスク、DVD、CD−ROM、マイクロドライブ、および光磁気ディスクを含む任意のタイプのディスク、ROM、RAM、EPROM、EEPROM、DRAM、VRAM、フラッシュメモリデバイス、磁気もしくは光学カード、ナノシステム(分子メモリICを含む)、または命令および/もしくはデータを格納するのに好適な任意のタイプの媒体もしくは装置を含み得るが、これらに限定されない。実施形態では、記憶媒体またはコンピュータ可読媒体は非一時的であり得る。
本発明の上記の記載は、例示および説明目的で与えられている。網羅的であることまたは開示されたそのものの形態に本発明を限定することを意図したものではない。多くの修正および変形が当業者に明らかになるであろう。当該修正および変形は、開示された特徴の任意の関連の組合せを含む。実施形態は、本発明の原理およびその実際的な適用をもっともよく説明するために選択および記載されたものであり、これにより他の当業者が、特定の使用に好適なさまざまな修正例を考慮して、さまざまな実施形態について本発明を理解するのが可能になる。本発明の範囲は、添付の特許請求の範囲およびそれらの均等物によって定義されることが意図される。

Claims (14)

  1. 複数のデータベースサービスを提供する複数のデータベースサーバを、複数のデータベースサービスコンシューマをホストする複数のアプリケーションサーバに直接接続する接続ベースのスイッチドファブリックを有するマルチテナント環境においてデータベースサーバ内のネットワークセキュリティを提供するための方法であって、当該複数のデータベースサービスコンシューマの各々は異なるデータベースサービスコンシューマアイデンティティに関連付けられており、当該方法は、
    当該複数のデータベースサーバのうちの1つのデータベースサーバにおいてアクセス制御リストを受信することを備え、当該アクセス制御リストは、前記複数のデータベースサービスを識別し、前記複数のデータベースサービスの各々について、前記複数のデータベースサービスの前記各々にアクセスすることが許可されている1つ以上のデータベースサービスコンシューマに関連付けられている1つ以上のデータベースサービスコンシューマアイデンティティを識別し、当該方法はさらに、
    当該複数のデータベースサーバを当該複数のアプリケーションサーバに直接接続する当該接続ベースのスイッチドファブリック上で送信される複数の通信パケットを、当該1つのデータベースサーバにおいて受信することと、
    前記複数の通信パケットの各通信パケットについて以下のステップを当該1つのデータベースサーバ内で実行することとを備え、前記ステップは、
    当該通信パケットがいずれのデータベースサービスコンシューマアイデンティティも含んでいない場合、当該通信パケットを破棄することと、
    当該通信パケットがデータベースサービスコンシューマアイデンティティを含んでいる場合、当該通信パケットに含まれているデータベースコンシューマアイデンティティを用いて、当該通信パケットを送信したサービスコンシューマを識別することと、
    前記アクセス制御リストを当該通信パケットに含まれている前記データベースコンシューマアイデンティティと組合せて用いて、前記アクセス制御リストが、前記データベースサービスコンシューマが前記複数のデータベースサービスのうちの1つのデータベースサービスにアクセスすることが許可されていると識別していない限り、当該データベースコンシューマによる前記1つのデータベースサービスへのアクセスを防止することとを含む、方法。
  2. 前記通信パケットはアドレス解決プロトコル(ARP)要求であり、前記アクセス制御リストを当該通信パケットに含まれている前記データベースコンシューマアイデンティティと組合せて用いて、前記アクセス制御リストが、前記データベースコンシューマが前記複数のデータベースサービスのうちの1つのデータベースサービスにアクセスすることが許可されていると識別していない限り、当該データベースコンシューマによる前記1つのデータベースサービスへのアクセスを防止することは、
    当該アクセス制御リストが、前記データベースサービスコンシューマが前記1つのデータベースサーバによって提供される前記複数のデータベースサービスのうちのいずれか1つにアクセスすることが許可されていると識別しているか否かを、当該1つのデータベースサーバ内で判断することと、
    当該アクセス制御リストが、前記データベースサービスコンシューマが前記1つのデータベースサーバによって提供される前記複数のデータベースサービスのうちのいずれか1つにアクセスすることが許可されていると識別していない場合、ARP応答を送信することなく、当該ARP要求をドロップすることとを備える、請求項1に記載の方法。
  3. 前記通信パケットは接続確立要求であり、前記アクセス制御リストを当該通信パケットに含まれている前記データベースコンシューマアイデンティティと組合せて用いて、前記アクセス制御リストが、前記データベースコンシューマが前記複数のデータベースサービスのうちの1つのデータベースサービスにアクセスすることが許可されていると識別していない限り、当該データベースコンシューマによる前記1つのデータベースサービスへのアクセスを防止することは、
    当該アクセス制御リストが、前記データベースサービスコンシューマが前記1つのデータベースサーバによって提供される前記複数のデータベースサービスのうちのいずれか1つにアクセスすることが許可されていると識別しているか否かを、当該1つのデータベースサーバ内で判断することと、
    当該アクセス制御リストが、前記データベースサービスコンシューマが前記1つのデータベースサーバによって提供される前記複数のデータベースサービスのうちのいずれか1つにアクセスすることが許可されていると識別していない場合、接続を確立することなく、当該接続確立要求をドロップすることとを備える、請求項1または2に記載の方法。
  4. 前記通信パケットは接続確立要求であり、前記アクセス制御リストを当該通信パケットに含まれている前記データベースコンシューマアイデンティティと組合せて用いて、前記アクセス制御リストが、前記データベースコンシューマが前記複数のデータベースサービスのうちの1つのデータベースサービスにアクセスすることが許可されていると識別していない限り、当該データベースコンシューマによる前記1つのデータベースサービスへのアクセスを防止することは、
    当該接続確立要求がどのデータベースサービスに接続することを要求しているかを、当該1つのデータベースサーバ内で判断することと、
    当該アクセス制御リストが、前記データベースサービスコンシューマが前記1つのデータベースサービスにアクセスすることが許可されていると識別していない場合、前記接続確立要求に応答して当該1つのデータベースサービスへの接続の確立を防止することととを備える、請求項1から3のいずれか1項に記載の方法。
  5. 前記通信パケットは接続確立要求であり、前記アクセス制御リストを当該通信パケットに含まれている前記データベースコンシューマアイデンティティと組合せて用いて、前記アクセス制御リストが、前記データベースコンシューマが前記複数のデータベースサービスのうちの1つのデータベースサービスにアクセスすることが許可されていると識別していない限り、当該データベースコンシューマによる前記1つのデータベースサービスへのアクセスを防止することは、
    前記接続確立要求に応答して接続を形成することと、
    前記接続上で当該データベースサービスコンシューマによってアクセスされるように意図されているデータベースサービスのIDを、前記接続上で受信することと、
    当該アクセス制御リストが、前記データベースサービスコンシューマが前記1つのデータベースサービスにアクセスすることが許可されていると識別していない場合、前記接続を終了することとを備える、請求項1に記載の方法。
  6. 前記通信パケットは、当該データベースサービスコンシューマとデータベースサービスとの間に確立された接続上で受信されるデータパケットであり、前記アクセス制御リストを当該通信パケットに含まれている前記データベースコンシューマアイデンティティと組合せて用いて、前記アクセス制御リストが、前記データベースコンシューマが前記複数のデータベースサービスのうちの1つのデータベースサービスにアクセスすることが許可されていると識別していない限り、当該データベースコンシューマによる前記1つのデータベースサービスへのアクセスを防止することは、
    ハードウェアコンテキストを、当該データベースサービスコンシューマと当該1つのデータベースサービスとの間に確立された前記接続に関連付けることを備え、当該ハードウェアコンテキストは、当該データベースサービスコンシューマの当該データベースサービスコンシューマ識別子を含み、前記防止することはさらに、
    前記データパケットが、当該接続に関連付けられている当該ハードウェアコンテキストに含まれている当該データベースサービスコンシューマアイデンティティを含んでいない限り、前記データパケットをドロップすることを備える、請求項1から5のいずれか1項に記載の方法。
  7. 前記データパケットは当該1つのデータベースサーバのホストチャネルアダプタにおいて受信され、当該ハードウェアコンテキストは前記ホストチャネルアダプタのメモリに格納され、前記データパケットが、当該接続に関連付けられている当該ハードウェアコンテキストに含まれている当該データベースサービスコンシューマアイデンティティを含んでいない限り、前記データパケットをドロップすることは、
    前記データパケットが、当該接続に関連付けられている当該ハードウェアコンテキストに含まれており、かつ前記ホストチャネルアダプタの当該メモリに格納されている、当該データベースサービスコンシューマアイデンティティを含んでいない限り、当該ホストチャネルアダプタを用いて前記データパケットをドロップすることを備える、請求項6に記載の方法。
  8. 前記アクセス制御リストを当該通信パケットに含まれている前記データベースコンシューマアイデンティティと組合せて用いて、前記アクセス制御リストが、前記データベースコンシューマが前記複数のデータベースサービスのうちの1つのデータベースサービスにアクセスすることが許可されていると識別していない限り、当該データベースコンシューマによる前記1つのデータベースサービスへのアクセスを防止することは、
    前記アクセス制御リストに基づいて、アドレス解決アクセス制御、接続確立アクセス制御、およびデータ交換アクセス制御のうちの少なくとも1つを実行することを備える、請求項1から7のいずれか1項に記載の方法。
  9. 前記接続ベースのスイッチドファブリックはインフィニバンドファブリックであり、前記通信パケットは、当該複数のデータベースサーバを当該複数のアプリケーションサーバに直接接続する当該インフィニバンドファブリック上で当該1つのデータベースサーバにおいて受信されるインフィニバンドプロトコル通信パケットであり、前記複数の通信パケットのうちの当該通信パケットについて当該1つのデータベースサーバによって実行される当該ステップは、
    当該インフィニバンドプロトコル通信パケットがグローバルルーティングヘッダを含んでいない場合、当該インフィニバンドプロトコル通信パケットを破棄することと、
    当該インフィニバンドプロトコル通信パケットがグローバルルーティングヘッダを含んでいる場合、当該インフィニバンドプロトコル通信パケットの当該グローバルルーティングヘッダに含まれているソースグローバル識別子を用いて、当該インフィニバンドプロトコル通信パケットを送信したサービスコンシューマを識別することと、
    前記アクセス制御リストを当該インフィニバンドプロトコル通信パケットの当該グローバルルーティングヘッダに含まれている前記ソースグローバル識別子と組合せて用いて、前記アクセス制御リストが、前記データベースサービスコンシューマが前記複数のデータベースサービスのうちの1つのデータベースサービスにアクセスすることが許可されていると識別していない限り、当該データベースコンシューマによる前記1つのデータベースサービスへのアクセスを防止することとを備える、請求項1から8のいずれか1項に記載の方法。
  10. 前記接続ベースのスイッチドファブリックはインフィニバンドファブリックであり、前記方法はさらに、
    前記複数のデータベースサービスコンシューマから送信される各インフィニバンドパケットが、前記各パケットに関連付けられているデータベースサービスコンシューマを識別するソースグローバル識別子を含まなければならないように、前記複数のデータベースサーバを、各々がグローバルルーティングヘッダおよびソースグローバル識別子を含むインフィニバンドプロトコルパケットを用いること以外によって前記複数のデータベースサービスコンシューマと前記複数のデータベースサービスとの間のデータ交換を禁止するように構成することを備える、請求項1から9のいずれか1項に記載の方法。
  11. 複数のデータベースサービスコンシューマをホストする複数のアプリケーションサーバに直接接続される接続ベースのスイッチドファブリックを有するマルチテナント環境においてネットワークセキュリティを提供するためのシステムであって、当該複数のデータベースサービスコンシューマの各々は異なるデータベースサービスコンシューマアイデンティティに関連付けられており、当該システムは、
    複数のデータベースサービスを提供する複数のデータベースサーバを備え、当該複数のデータベースサーバの各データベースサーバは、マイクロプロセッサ、メモリおよびネットワークインターフェイスを備え、当該システムはさらに、
    当該複数のデータベースサーバの各々の上に格納されているアクセス制御リストを備え、当該アクセス制御リストは、前記複数のデータベースサービスを識別し、前記複数のデータベースサービスの各々について、前記複数のデータベースサービスの前記各々にアクセスすることが許可されている1つ以上のデータベースサービスコンシューマに関連付けられている1つ以上のデータベースサービスコンシューマアイデンティティを識別し、
    当該複数のデータベースサーバの各データベースサーバの当該ネットワークインターフェイスは、当該複数のデータベースサーバを当該複数のアプリケーションサーバに直接接続する当該接続ベースのスイッチドファブリック上で送信される複数の通信パケットを受信するように構成され、
    当該ネットワークインターフェイスは、当該ネットワークインターフェイスにおいて受信される前記複数の通信パケットの各通信パケットについて以下のステップを実行するように構成され、前記ステップは、
    当該通信パケットがいずれのデータベースサービスコンシューマアイデンティティも含んでいない場合、当該通信パケットを破棄することと、
    当該通信パケットがデータベースサービスコンシューマアイデンティティを含んでいる場合、当該通信パケットに含まれているデータベースコンシューマアイデンティティを用いて、当該通信パケットを送信したサービスコンシューマを識別することと、
    当該データベースサーバ上に格納されている当該アクセス制御リストを当該通信パケットに含まれている前記データベースコンシューマアイデンティティと組合せて用いて、前記アクセス制御リストが、前記データベースサービスコンシューマが前記複数のデータベースサービスのうちの1つのデータベースサービスにアクセスすることが許可されていると識別していない限り、当該データベースコンシューマによる前記1つのデータベースサービスへのアクセスを防止することとを含む、システム。
  12. 請求項1〜9のいずれかに記載の方法をコンピュータに実行させる、プログラム。
  13. 請求項12に記載のプログラムを格納したメモリと、
    前記プログラムを実行するためのプロセッサとを備える、システム。
  14. 請求項1から10のいずれか1項に記載のネットワークセキュリティを提供するための方法であって、当該マルチテナント環境は、複数の異なるテナントに関連付けられているデータを保持している複数のストレージセルをさらに有し、当該複数のデータベースサービスの各々は、前記複数のストレージセル内に保持されている前記複数の異なるテナントに関連付けられている前記データを利用し、当該データベースサービスコンシューマは当該複数の異なるテナントに関連付けられており、当該方法は、
    当該接続ベースのスイッチドファブリックを、前記複数のデータベースサービスコンシューマおよび前記複数のデータベースサーバにとってアクセス可能なデータベースアクセスパーティションを有するように構成することと、
    当該接続ベースのスイッチドファブリックを、前記複数のデータベースサーバおよび前記複数のストレージセルにとってはアクセス可能であるが前記複数のデータベースサービスコンシューマにとってはアクセス不可能なストレージアクセスパーティションを有するように構成することと、
    当該複数のアプリケーションサーバの各々のネットワークインターフェイスを、前記アプリケーションサーバ上にホストされている当該複数のデータベースサービスコンシューマの各々を固有のデータベースサービスコンシューマアイデンティティに関連付けるように構成することと、
    当該複数のアプリケーションサーバの各々の当該ネットワークインターフェイスを、前記データベースサービスコンシューマから前記複数のデータベースサービスに向けて送信される当該通信パケットの各々の内部の前記アプリケーションサーバ上にホストされている当該複数のデータベースサービスコンシューマの各々に関連付けられている当該データベースサービスコンシューマアイデンティティを含むように構成することと、
    当該複数のデータベースサーバの各々にアクセス制御リストを提供することとを備え、当該アクセス制御リストは、前記複数のデータベースサービスを識別し、前記複数のデータベースサービスの各々について、前記複数のデータベースサービスの前記各々にアクセスすることが許可されている1つ以上のデータベースサービスコンシューマに関連付けられている1つ以上のデータベースサービスコンシューマアイデンティティを識別し、当該方法はさらに、
    データベースサービスコンシューマアイデンティティを含んでいない前記複数のアプリケーションサーバから受信したすべての通信パケットを、当該複数のデータベースサーバの各々のネットワークインターフェイスを用いて破棄することと、
    前記アクセス制御リストを、当該複数のデータベースサーバのうちの特定のデータベースサーバの特定のネットワークインターフェイスにおいて受信した特定の通信パケットに含まれている特定のデータベースサービスコンシューマアイデンティティと組合せて用いて、前記アクセス制御リストが、前記特定のデータベースサービスコンシューマが前記複数のデータベースサービスのうちの特定のデータベースサービスにアクセスすることが許可されていると識別していない限り、当該特定のデータベースコンシューマアイデンティティに関連付けられている当該特定のデータベースサービスコンシューマによる前記特定のデータベースサービスへのアクセスを防止することとを備える、方法。
JP2017513238A 2014-09-09 2015-09-09 マルチテナント環境においてセキュアなネットワーク通信のために統合型ファイアウォールを提供するためのシステムおよび方法 Active JP6581651B2 (ja)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201462048096P 2014-09-09 2014-09-09
US62/048,096 2014-09-09
US14/848,109 2015-09-08
US14/848,111 2015-09-08
US14/848,109 US9723008B2 (en) 2014-09-09 2015-09-08 System and method for providing an integrated firewall for secure network communication in a multi-tenant environment
US14/848,111 US9723009B2 (en) 2014-09-09 2015-09-08 System and method for providing for secure network communication in a multi-tenant environment
PCT/US2015/049193 WO2016040485A1 (en) 2014-09-09 2015-09-09 System and method for providing an integrated firewall for secure network communication in a multi-tenant environment

Publications (3)

Publication Number Publication Date
JP2017528832A JP2017528832A (ja) 2017-09-28
JP2017528832A5 JP2017528832A5 (ja) 2018-09-20
JP6581651B2 true JP6581651B2 (ja) 2019-09-25

Family

ID=55438608

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017513238A Active JP6581651B2 (ja) 2014-09-09 2015-09-09 マルチテナント環境においてセキュアなネットワーク通信のために統合型ファイアウォールを提供するためのシステムおよび方法

Country Status (6)

Country Link
US (3) US9723008B2 (ja)
EP (1) EP3192230B1 (ja)
JP (1) JP6581651B2 (ja)
KR (1) KR102318338B1 (ja)
CN (1) CN107079003B (ja)
WO (1) WO2016040485A1 (ja)

Families Citing this family (65)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10503442B2 (en) * 2015-01-28 2019-12-10 Avago Technologies International Sales Pte. Limited Method and apparatus for registering and storing virtual machine unique information capabilities
US10437770B2 (en) 2015-01-28 2019-10-08 Avago Technologies International Sales Pte. Limited Method and apparatus for providing virtual machine information to a network interface
US20160267187A1 (en) * 2015-03-10 2016-09-15 Thaddeus John Gabara Method and Apparatus for Coupling the Internet, Environment and Intrinsic Memory to Users
US9558029B2 (en) 2015-05-17 2017-01-31 Nicira, Inc. Logical processing for containers
US10701104B2 (en) * 2015-08-18 2020-06-30 Acronis International Gmbh Agentless security of virtual machines using a network interface controller
US20170054686A1 (en) * 2015-08-18 2017-02-23 Konstantin Malkov Agentless Security of Virtual Machines using a Filtering Platform
US10078526B2 (en) * 2015-11-01 2018-09-18 Nicira, Inc. Securing a managed forwarding element that operates within a data compute node
US10063469B2 (en) 2015-12-16 2018-08-28 Nicira, Inc. Forwarding element implementation for containers
US11018947B2 (en) 2016-01-27 2021-05-25 Oracle International Corporation System and method for supporting on-demand setup of local host channel adapter port partition membership in a high-performance computing environment
US10355992B2 (en) 2016-01-27 2019-07-16 Oracle International Corporation System and method for supporting router SMA abstractions for SMP connectivity checks across virtual router ports in a high performance computing environment
US10560318B2 (en) 2016-01-27 2020-02-11 Oracle International Corporation System and method for correlating fabric-level group membership with subnet-level partition membership in a high-performance computing environment
US10972375B2 (en) 2016-01-27 2021-04-06 Oracle International Corporation System and method of reserving a specific queue pair number for proprietary management traffic in a high-performance computing environment
US10200308B2 (en) 2016-01-27 2019-02-05 Oracle International Corporation System and method for supporting a scalable representation of link stability and availability in a high performance computing environment
US10348649B2 (en) 2016-01-28 2019-07-09 Oracle International Corporation System and method for supporting partitioned switch forwarding tables in a high performance computing environment
US10666611B2 (en) 2016-01-28 2020-05-26 Oracle International Corporation System and method for supporting multiple concurrent SL to VL mappings in a high performance computing environment
US10659340B2 (en) 2016-01-28 2020-05-19 Oracle International Corporation System and method for supporting VM migration between subnets in a high performance computing environment
US10630816B2 (en) 2016-01-28 2020-04-21 Oracle International Corporation System and method for supporting shared multicast local identifiers (MILD) ranges in a high performance computing environment
US10333894B2 (en) * 2016-01-28 2019-06-25 Oracle International Corporation System and method for supporting flexible forwarding domain boundaries in a high performance computing environment
US10616118B2 (en) 2016-01-28 2020-04-07 Oracle International Corporation System and method for supporting aggressive credit waiting in a high performance computing environment
US10348847B2 (en) 2016-01-28 2019-07-09 Oracle International Corporation System and method for supporting proxy based multicast forwarding in a high performance computing environment
US10355972B2 (en) 2016-01-28 2019-07-16 Oracle International Corporation System and method for supporting flexible P_Key mapping in a high performance computing environment
US10536334B2 (en) 2016-01-28 2020-01-14 Oracle International Corporation System and method for supporting subnet number aliasing in a high performance computing environment
US10374926B2 (en) 2016-01-28 2019-08-06 Oracle International Corporation System and method for monitoring logical network traffic flows using a ternary content addressable memory in a high performance computing environment
US10171353B2 (en) 2016-03-04 2019-01-01 Oracle International Corporation System and method for supporting dual-port virtual router in a high performance computing environment
US10142290B1 (en) * 2016-03-30 2018-11-27 Amazon Technologies, Inc. Host-based firewall for distributed computer systems
US10333962B1 (en) 2016-03-30 2019-06-25 Amazon Technologies, Inc. Correlating threat information across sources of distributed computing systems
US10178119B1 (en) 2016-03-30 2019-01-08 Amazon Technologies, Inc. Correlating threat information across multiple levels of distributed computing systems
US10148675B1 (en) 2016-03-30 2018-12-04 Amazon Technologies, Inc. Block-level forensics for distributed computing systems
WO2018022083A1 (en) * 2016-07-29 2018-02-01 Hewlett Packard Enterprise Development Lp Deliver an ingress packet to a queue at a gateway device
US10423437B2 (en) 2016-08-17 2019-09-24 Red Hat Israel, Ltd. Hot-plugging of virtual functions in a virtualized environment
CN108604199B (zh) 2016-08-23 2022-08-23 甲骨文国际公司 计算环境中支持快速混合重新配置的系统和方法、介质
CN108111461B (zh) * 2016-11-24 2020-11-20 中移(苏州)软件技术有限公司 实现虚拟机访问管理网络的方法、装置、网关及系统
US10261821B2 (en) * 2016-12-02 2019-04-16 Dell Products L.P. System and method to expose remote virtual media partitions to virtual machines
US10841199B2 (en) 2017-03-24 2020-11-17 Oracle International Corporation System and method for optimized path record handling in homogenous fabrics without host stack cooperation in a high performance computing environment
US10868685B2 (en) 2017-03-24 2020-12-15 Oracle International Corporation System and method to provide explicit multicast local identifier assignment for per-partition default multicast local identifiers defined as subnet manager policy input in a high performance computing environment
US10630499B2 (en) 2017-03-24 2020-04-21 Oracle International Corporation System and method to provide path records derived from ARP responses and peer-to-peer negotiation based on homogeneous fabric attribute in a high performance computing environment
US10693815B2 (en) * 2017-03-24 2020-06-23 Oracle International Corporation System and method to use all incoming multicast packets as a basis for GUID to LID cache contents in a high performance computing environment
US10635561B2 (en) 2017-05-11 2020-04-28 Salesforce.Com, Inc. Techniques and architectures for managing database failure in a single-node database architecture
US10425274B2 (en) * 2017-05-11 2019-09-24 Salesforce.Com, Inc. Techniques and architectures for recovering from a service disruption in a multi-server environment
CN107241313B (zh) * 2017-05-18 2020-07-07 杭州迪普科技股份有限公司 一种防mac泛洪攻击的方法及装置
US10757105B2 (en) * 2017-06-12 2020-08-25 At&T Intellectual Property I, L.P. On-demand network security system
US11093443B2 (en) 2017-06-29 2021-08-17 Sap Se Database-level container group management
US10674438B2 (en) 2017-06-29 2020-06-02 Sap Se Restricting access to external schemas from within a database level container by whitelisting allowed schemas
US10984021B2 (en) 2017-06-29 2021-04-20 Sap Se Deployment of independent database artifact groups
US10776330B2 (en) 2017-06-29 2020-09-15 Sap Se Optimized re-deployment of database artifacts
US10116671B1 (en) * 2017-09-28 2018-10-30 International Business Machines Corporation Distributed denial-of-service attack detection based on shared network flow information
US10657114B2 (en) 2017-11-28 2020-05-19 Sap Se Reserving key specifications
US10812463B2 (en) * 2017-12-08 2020-10-20 International Business Machines Corporation Secure access to an enterprise computing environment
US11044229B2 (en) * 2017-12-22 2021-06-22 International Business Machines Corporation Dynamically opening ports for trusted application processes hosted in containers
CN110071900B (zh) * 2018-01-23 2020-11-17 华为技术有限公司 数据发送的方法及设备
CN109067744B (zh) * 2018-08-08 2021-11-09 新华三技术有限公司合肥分公司 Acl规则处理方法、装置及通信设备
US10833949B2 (en) 2018-11-20 2020-11-10 Amazon Technologies, Inc Extension resource groups of provider network services
CN109542590B (zh) * 2018-11-28 2022-12-20 上海酷栈科技有限公司 Docker集群多租户下虚拟Socket通信的方法
CN109491249B (zh) * 2018-11-30 2022-01-18 沈阳航空航天大学 一种存在DoS攻击时确定一致性事件触发控制器的方法
US11064017B2 (en) 2019-09-24 2021-07-13 Amazon Technologies, Inc. Peripheral device enabling virtualized computing service extensions
US11520530B2 (en) * 2019-09-24 2022-12-06 Amazon Technologies, Inc. Peripheral device for configuring compute instances at client-selected servers
CN112565158B (zh) * 2019-09-25 2022-10-04 阿里巴巴集团控股有限公司 数据访问方法、装置、系统、电子设备及计算机可读介质
US11444881B2 (en) 2019-11-19 2022-09-13 Oracle International Corporation System and method for supporting use of forward and backward congestion notifications in a private fabric in a high performance computing environment
CN111163130B (zh) * 2019-12-06 2022-08-23 深圳智链物联科技有限公司 一种网络服务系统及其数据传输方法
US11569997B1 (en) 2020-03-09 2023-01-31 Amazon Technologies, Inc. Security mechanisms for data plane extensions of provider network services
US11973770B1 (en) 2020-12-09 2024-04-30 Wiz, Inc. Techniques for multi-tenant vulnerability scanning
CN113377784B (zh) * 2021-08-13 2021-12-03 成都市维思凡科技有限公司 一种基于中间件的数据处理方法、系统和存储介质
US20230297685A1 (en) * 2022-03-15 2023-09-21 Vmware, Inc. Remediation method to trace and clean up malicious files in a distributed malware detection system
KR102491184B1 (ko) 2022-03-31 2023-01-26 주식회사 오픈텔 전용 브라우저를 통한 네트워크 보안시스템
US11929986B1 (en) * 2022-10-31 2024-03-12 Snowflake Inc. Two-way data sharing between private and public clouds

Family Cites Families (101)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4304001A (en) 1980-01-24 1981-12-01 Forney Engineering Company Industrial control system with interconnected remotely located computer control units
US6914905B1 (en) 2000-06-16 2005-07-05 Extreme Networks, Inc. Method and system for VLAN aggregation
JP2003281277A (ja) * 2002-03-19 2003-10-03 Kazuteru Ono 医療データベースプロバイド方法、およびシステム
US7447778B2 (en) 2002-05-06 2008-11-04 Qlogic, Corporation System and method for a shared I/O subsystem
US7493409B2 (en) 2003-04-10 2009-02-17 International Business Machines Corporation Apparatus, system and method for implementing a generalized queue pair in a system area network
US7516487B1 (en) * 2003-05-21 2009-04-07 Foundry Networks, Inc. System and method for source IP anti-spoofing security
CN1553380A (zh) * 2003-05-27 2004-12-08 鸿富锦精密工业(深圳)有限公司 数据库使用权限控制系统及方法
US8776050B2 (en) 2003-08-20 2014-07-08 Oracle International Corporation Distributed virtual machine monitor for managing multiple virtual resources across multiple physical nodes
US7934020B1 (en) 2003-09-19 2011-04-26 Vmware, Inc. Managing network data transfers in a virtual computer system
US8335909B2 (en) 2004-04-15 2012-12-18 Raytheon Company Coupling processors to each other for high performance computing (HPC)
US7398394B1 (en) * 2004-06-02 2008-07-08 Bjorn Dag Johnsen Method and apparatus for authenticating nodes in a communications network
US7443860B2 (en) * 2004-06-08 2008-10-28 Sun Microsystems, Inc. Method and apparatus for source authentication in a communications network
US7437447B2 (en) 2004-11-12 2008-10-14 International Business Machines Corporation Method and system for authenticating a requestor without providing a key
US7509419B2 (en) 2005-01-13 2009-03-24 International Business Machines Corporation Method for providing remote access redirect capability in a channel adapter of a system area network
US8520512B2 (en) * 2005-01-26 2013-08-27 Mcafee, Inc. Network appliance for customizable quarantining of a node on a network
US8422678B2 (en) 2005-11-16 2013-04-16 Intel Corporation Method, apparatus and system for protecting security keys on a wireless platform
US7940757B2 (en) 2006-02-23 2011-05-10 Cisco Technology, Inc. Systems and methods for access port ICMP analysis
US7996583B2 (en) 2006-08-31 2011-08-09 Cisco Technology, Inc. Multiple context single logic virtual host channel adapter supporting multiple transport protocols
US20080189432A1 (en) 2007-02-02 2008-08-07 International Business Machines Corporation Method and system for vm migration in an infiniband network
US7913077B2 (en) 2007-02-13 2011-03-22 International Business Machines Corporation Preventing IP spoofing and facilitating parsing of private data areas in system area network connection requests
JP4747118B2 (ja) 2007-03-05 2011-08-17 富士通株式会社 ルータ、通信保証方法および通信保証プログラム
US8392981B2 (en) 2007-05-09 2013-03-05 Microsoft Corporation Software firewall control
US9660829B2 (en) 2007-06-04 2017-05-23 Avaya Inc. Secure VLANs
US7836332B2 (en) 2007-07-18 2010-11-16 Hitachi, Ltd. Method and apparatus for managing virtual ports on storage systems
US20090063747A1 (en) * 2007-08-28 2009-03-05 Rohati Systems, Inc. Application network appliances with inter-module communications using a universal serial bus
US20090077268A1 (en) * 2007-09-14 2009-03-19 International Business Machines Corporation Low Latency Multicast for Infiniband Host Channel Adapters
US8798056B2 (en) 2007-09-24 2014-08-05 Intel Corporation Method and system for virtual port communications
US7975033B2 (en) * 2007-10-23 2011-07-05 Virtudatacenter Holdings, L.L.C. System and method for initializing and maintaining a series of virtual local area networks contained in a clustered computer system
US8331381B2 (en) * 2007-12-04 2012-12-11 International Business Machines Corporation Providing visibility of Ethernet components to a subnet manager in a converged InfiniBand over Ethernet network
US7983265B1 (en) * 2008-01-17 2011-07-19 Qlogic, Corporation Method and system for processing a network packet
CN101499061A (zh) * 2008-01-30 2009-08-05 国际商业机器公司 面向多租户的数据库引擎及其数据访问方法
US7962564B2 (en) 2008-02-25 2011-06-14 International Business Machines Corporation Discovery of a virtual topology in a multi-tasking multi-processor environment
US20090222640A1 (en) 2008-02-28 2009-09-03 Bauman Ellen M Memory Migration in a Logically Partitioned Computer System
US8739269B2 (en) * 2008-08-07 2014-05-27 At&T Intellectual Property I, L.P. Method and apparatus for providing security in an intranet network
JP5272265B2 (ja) 2008-09-29 2013-08-28 株式会社日立製作所 Pciデバイス共有方法
US8429650B2 (en) * 2008-11-14 2013-04-23 Oracle International Corporation System and method of security management for a virtual environment
US7970913B2 (en) 2008-12-31 2011-06-28 International Business Machines Corporation Virtualizing sockets to enable the migration of a system environment
WO2010099407A1 (en) 2009-02-27 2010-09-02 Broadcom Corporation Method and system for virtual machine networking
US8429647B2 (en) 2009-05-06 2013-04-23 Vmware, Inc. Virtual machine migration across network by publishing routes to the associated virtual networks via virtual router after the start of migration of the virtual machine
US8064443B2 (en) 2009-05-11 2011-11-22 Juniper Networks, Inc. Scalable routing policy construction using dynamic redefinition of routing preference value
US8150971B2 (en) 2009-05-31 2012-04-03 Red Hat Israel, Ltd. Mechanism for migration of client-side virtual machine system resources
US8370560B2 (en) 2009-11-16 2013-02-05 International Business Machines Corporation Symmetric live migration of virtual machines
US8589921B2 (en) 2009-11-30 2013-11-19 Red Hat Israel, Ltd. Method and system for target host optimization based on resource sharing in a load balancing host and virtual machine adjustable selection algorithm
US8327060B2 (en) 2009-11-30 2012-12-04 Red Hat Israel, Ltd. Mechanism for live migration of virtual machines with memory optimizations
JP5190084B2 (ja) 2010-03-30 2013-04-24 株式会社日立製作所 仮想マシンのマイグレーション方法およびシステム
US9244700B2 (en) 2010-05-09 2016-01-26 Citrix Systems, Inc. Methods and systems for delivering applications from a desktop operating system
US8407366B2 (en) 2010-05-14 2013-03-26 Microsoft Corporation Interconnecting members of a virtual network
US8989187B2 (en) 2010-06-04 2015-03-24 Coraid, Inc. Method and system of scaling a cloud computing network
US9148373B2 (en) 2010-07-30 2015-09-29 Intellectual Discovery Co., Ltd. Network system
US8489699B2 (en) 2010-08-13 2013-07-16 Vmware, Inc. Live migration of virtual machine during direct access to storage over SR IOV adapter
US20120173757A1 (en) 2011-01-05 2012-07-05 International Business Machines Corporation Routing optimization for virtual machine migration between geographically remote data centers
US9225639B2 (en) 2011-01-31 2015-12-29 Intellectual Discovery Co., Ltd. Network system
US9015709B2 (en) 2011-03-08 2015-04-21 Rackspace Us, Inc. Hypervisor-agnostic method of configuring a virtual machine
JP5395833B2 (ja) * 2011-03-14 2014-01-22 株式会社東芝 仮想ネットワークシステム及び仮想通信制御方法
US20120265956A1 (en) 2011-04-18 2012-10-18 Hitachi, Ltd. Storage subsystem, data migration method and computer system
US9130935B2 (en) * 2011-05-05 2015-09-08 Good Technology Corporation System and method for providing access credentials
US9218195B2 (en) 2011-05-17 2015-12-22 International Business Machines Corporation Vendor-independent resource configuration interface for self-virtualizing input/output device
US8713649B2 (en) * 2011-06-03 2014-04-29 Oracle International Corporation System and method for providing restrictions on the location of peer subnet manager (SM) instances in an infiniband (IB) network
WO2012167268A1 (en) * 2011-06-03 2012-12-06 Oracle International Corporation System and method for authenticating components in a network
EP2719124B1 (en) * 2011-06-07 2018-04-11 Hewlett-Packard Enterprise Development LP A scalable multi-tenant network architecture for virtualized datacenters
US8739273B2 (en) * 2011-07-11 2014-05-27 Oracle International Corporation System and method for supporting subnet management packet (SMP) firewall restrictions in a middleware machine environment
US8516241B2 (en) * 2011-07-12 2013-08-20 Cisco Technology, Inc. Zone-based firewall policy model for a virtualized data center
JP5643990B2 (ja) 2011-07-29 2014-12-24 株式会社日立製作所 ネットワーク装置及びネットワークシステム
US8656389B2 (en) 2011-08-22 2014-02-18 Vmware, Inc. Virtual port command processing during migration of virtual machine
US9288160B2 (en) * 2011-08-23 2016-03-15 Intel Corporation GID capable switching in an infiniband fabric
US8584215B2 (en) * 2012-02-07 2013-11-12 Cisco Technology, Inc. System and method for securing distributed exporting models in a network environment
US9742693B2 (en) 2012-02-27 2017-08-22 Brocade Communications Systems, Inc. Dynamic service insertion in a fabric switch
US9047107B2 (en) * 2012-02-29 2015-06-02 Red Hat, Inc. Applying a custom security type label to multi-tenant applications of a node in a platform-as-a-service environment
US8850514B2 (en) * 2012-05-01 2014-09-30 Red Hat, Inc. Cartridges in a multi-tenant platforms-as-a-service (PaaS) system implemented in a cloud computing environment
US9871734B2 (en) 2012-05-28 2018-01-16 Mellanox Technologies, Ltd. Prioritized handling of incoming packets by a network interface controller
US9401963B2 (en) * 2012-06-04 2016-07-26 Oracle International Corporation System and method for supporting reliable connection (RC) based subnet administrator (SA) access in an engineered system for middleware and application execution
US8893258B2 (en) * 2012-06-11 2014-11-18 Cisco Technology, Inc. System and method for identity based authentication in a distributed virtual switch network environment
US8832820B2 (en) 2012-06-25 2014-09-09 International Business Machines Corporation Isolation and security hardening among workloads in a multi-tenant networked environment
US9253014B2 (en) 2012-06-25 2016-02-02 Hitachi, Ltd. Computer system and application program execution environment migration method
US9063928B2 (en) 2012-07-12 2015-06-23 International Business Machines Corporation Processing data packets from a receive queue in a remote direct memory access device
US9104645B2 (en) 2012-07-27 2015-08-11 Dell Products, Lp System and method of replicating virtual machines for live migration between data centers
US9602430B2 (en) 2012-08-21 2017-03-21 Brocade Communications Systems, Inc. Global VLANs for fabric switches
US8769274B2 (en) * 2012-09-05 2014-07-01 International Business Machines Corporation Backup and restore in a secure appliance with integrity and confidentiality
US9385949B2 (en) 2012-12-20 2016-07-05 Mellanox Technologies Tlv Ltd. Routing controlled by subnet managers
US20140188996A1 (en) 2012-12-31 2014-07-03 Advanced Micro Devices, Inc. Raw fabric interface for server system with virtualized interfaces
US9306906B2 (en) * 2013-03-25 2016-04-05 Salesforce.Com, Inc. Systems and methods for utilizing uni-directional inter-host communication in an air gap environment
US9660905B2 (en) 2013-04-12 2017-05-23 Futurewei Technologies, Inc. Service chain policy for distributed gateways in virtual overlay networks
US9426155B2 (en) * 2013-04-18 2016-08-23 International Business Machines Corporation Extending infrastructure security to services in a cloud computing environment
US20140344436A1 (en) * 2013-05-08 2014-11-20 Connectloud, Inc. Method and Apparatus to Securely Process Streams of Data of Storage Devices of Private Enterprise Clouds in Batch from the Public Cloud
US20140351423A1 (en) * 2013-05-24 2014-11-27 Connectloud, Inc. Method and Apparatus for Dynamic Correlation of Large Cloud Firewall Fault Event Stream
US20140351920A1 (en) * 2013-05-24 2014-11-27 Connectloud, Inc. Method and Apparatus for Dynamic Tunneling
US20140351923A1 (en) * 2013-05-26 2014-11-27 Connectloud, Inc. Method and Apparatus for Remotely Manageable, Declaratively Configurable Data Stream Aggregator with Guaranteed Delivery for Private Cloud Compute Infrastructure
US20140351922A1 (en) * 2013-05-26 2014-11-27 Connectloud, Inc. Method and Apparatus for Remotely Manageable, Declaratively Configurable Data Stream Aggregator with Guaranteed Delivery for Private Cloud Compute Infrastructure
US20140351921A1 (en) * 2013-05-26 2014-11-27 Connectloud, Inc. Method and Apparatus for Remotely Manageable, Declaratively Configurable Data Stream Aggregator with Guaranteed Delivery for Private Cloud Compute Infrastructure
US20150026332A1 (en) * 2013-05-26 2015-01-22 Connectloud, Inc. Method and Apparatus to Securely Process Streams of Data of Network / Storage / Compute Devices of Private Enterprise Clouds in Real-time from the Public Cloud
US9300690B2 (en) * 2013-07-03 2016-03-29 Red Hat, Inc. Secure network labeling to control inter-process communications in a multi-tenant platform-as-a-service (PaaS) system
US9843512B2 (en) * 2013-08-27 2017-12-12 Oracle International Corporation System and method for controlling a data flow in an engineered system for middleware and application execution
US20150066759A1 (en) * 2013-08-27 2015-03-05 Connectloud, Inc. METHOD AND APPARATUS FOR GAUGING NETWORK TRAFFIC FLOW FOR SOFTWARE DEFINED NETWORKS WITHIN A SOFTWARE DEFINED CLOUDd
US20150067789A1 (en) * 2013-08-27 2015-03-05 Connectloud, Inc. Method and apparatus to provide a network software defined cloud with capacity to prevent tenant access to network control plane through software defined networks
US20150067809A1 (en) * 2013-08-27 2015-03-05 Connectloud, Inc. User identity authentication and single sign on for multitenant environment
US9397946B1 (en) * 2013-11-05 2016-07-19 Cisco Technology, Inc. Forwarding to clusters of service nodes
US9942265B2 (en) * 2014-01-06 2018-04-10 International Business Machines Corporation Preventing application-level denial-of-service in a multi-tenant system
CN103761299A (zh) * 2014-01-16 2014-04-30 西北工业大学 一种跨智能空间的情境查询方法
US20150363219A1 (en) * 2014-03-14 2015-12-17 Avni Networks Inc. Optimization to create a highly scalable virtual netork service/application using commodity hardware
US9553850B2 (en) * 2014-06-30 2017-01-24 International Business Machines Corporation Multi-tenant secure separation of data in a cloud-based application
US9756135B2 (en) * 2014-07-31 2017-09-05 Ca, Inc. Accessing network services from external networks

Also Published As

Publication number Publication date
US9888010B2 (en) 2018-02-06
CN107079003B (zh) 2020-07-28
US20160072816A1 (en) 2016-03-10
US20160072817A1 (en) 2016-03-10
EP3192230B1 (en) 2018-11-07
JP2017528832A (ja) 2017-09-28
KR102318338B1 (ko) 2021-10-28
KR20170051486A (ko) 2017-05-11
CN107079003A (zh) 2017-08-18
EP3192230A1 (en) 2017-07-19
US20170302673A1 (en) 2017-10-19
US9723009B2 (en) 2017-08-01
WO2016040485A1 (en) 2016-03-17
US9723008B2 (en) 2017-08-01

Similar Documents

Publication Publication Date Title
JP6581651B2 (ja) マルチテナント環境においてセキュアなネットワーク通信のために統合型ファイアウォールを提供するためのシステムおよび方法
DeCusatis et al. Implementing zero trust cloud networks with transport access control and first packet authentication
US7913077B2 (en) Preventing IP spoofing and facilitating parsing of private data areas in system area network connection requests
US9930018B2 (en) System and method for providing source ID spoof protection in an infiniband (IB) network
US9843512B2 (en) System and method for controlling a data flow in an engineered system for middleware and application execution
TWI360781B (en) Method for configuring a computer device using loa
US20160112325A1 (en) Load balancing among a cluster of firewall security devices
US8713649B2 (en) System and method for providing restrictions on the location of peer subnet manager (SM) instances in an infiniband (IB) network
EP3529950B1 (en) Method for managing data traffic within a network
CN113596033B (zh) 访问控制方法及装置、设备、存储介质
US9559990B2 (en) System and method for supporting host channel adapter (HCA) filtering in an engineered system for middleware and application execution
US20140082693A1 (en) Updating security bindings in a network device
WO2014180235A1 (zh) 数据包过滤规则配置方法、装置及系统
US7551559B1 (en) System and method for performing security actions for inter-layer binding protocol traffic
CN118647976A (zh) 加密数据分组转发
US20220021649A1 (en) Policy based mechanism to efficiently interpret and block insecure network communication
US11012357B2 (en) Using a route server to distribute group address associations

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180813

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180813

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190730

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: 20190806

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190830

R150 Certificate of patent or registration of utility model

Ref document number: 6581651

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250