セキュリティ管理について

DataStax Enterpriseセキュリティの概要。

DataStax Enterpriseには、エンタープライズレベルのデータベース用の高度なデータ保護機能が搭載されています。

SolrのTCP通信層では、SSLを使用したクライアントとノード間およびノード間の暗号化がサポートされていますが、Kerberosはサポートされていません。

DataStax Java Driver 2.0およびDataStax C# Driverは、DataStax Webサイトから入手可能で、Kerberosサポートおよびクライアント/サーバー通信用のSSLを有効にします。

ワークロードの種類別のデータ・セキュリティ

セキュリティ機能を構成するとして、以下の表は、トランザクションDSE Cassandra、DSE Analytics(Spark)、DSE Searchというワークロードの種類別にどのデータがセキュリティ保護されるかを示しています。

機能 DataStax Enterpriseのセキュリティ DSE Search(Solr使用) DSE Analytics(Spark使用) DSE Graph
内部認証/LDAP あり 一部あり [7] あり [1] 一部あり [7]
オブジェクト・パーミッション管理 あり 一部あり [2] 一部あり [2] あり [10]
クライアントとノード間の暗号化 あり [3] あり [4] あり [5] あり [3]
Kerberos認証 あり [6] あり あり [1] あり [6]
透過的なデータ暗号化 あり あり なし あり
データ監査 あり 完全にあり 一部あり [8] あり [9]

[1] パスワード認証は、内部認証とKerberos認証を行うために、SparkをCassandraに接続する場合に使用します。Sparkコンポーネントの相互認証には使用しません。Spark Web UIはセキュリティで保護されておらず、Kerberosを使用する場合は、ユーザー名、パスワード、デリゲーション・トークンを含むSpark構成を表示する可能性があります。

[2] Cassandraに格納されたオブジェクトへのアクセス・パーミッションがチェックされます。SolrキャッシュとインデックスはCassandraにより管理されないため、チェックされません。ただし、Solrデータを格納するテーブルでパーミッション・チェックを行うように設定することはできます。

[3] ノード間ゴシップ・プロトコルは、SSLを使用して保護されています。

[4] DSE SearchデータへのHTTPアクセスは、SSLを使用して保護されています。SSLを使用したノード間の暗号化は、内部Solr通信を保護します。

[5] SSLクライアントとノード間の暗号化は、Spark ExecutorとCassandraの接続のみに使用します。

[6] ノード間ゴシップ・プロトコルは、Kerberosを使用して認証されていません。SSLを使用したノード間の暗号化を使用できます。

[7] CQLを使用した検索は、内部認証/LDAPではサポートされていますが、HTTP経由ではサポートされていません。

[8] DSE Sparkデータ監査はCassandraアクセス・レベルで行われるため、Cassandraデータへのアクセス要求が監査されます。SSLを使用したノード間の暗号化は、ノード間ゴシップ・プロトコル経由の通信を保護します。

[9] 制限あり。Gremlinクエリーは、Cassandraのようにクエリーの種類が区別されないため。

[10] パーミッションは、CQLを使用して個々のパーミッションを使用して頂点ラベルごとに強制され、テーブル・レベルでCQLを通じて登録されます。

KerberosとSSLの同時使用

KerberosライブラリとSSLライブラリには、認証、暗号化、およびインテグリティの保護が組み込まれています。

  • Kerberos – Kerberos認証を有効にすると、インテグリティの保護も有効になります。ただし、インテグリティの保護は暗号化なしでも有効にできます。
  • SSL – SSLを使用する場合、認証、インテグリティの保護、および暗号化はすべて有効または無効になります。
  • KerberosおよびSSL - Kerberos認証とSSLを一緒に有効にすることができます。ただし、この処理を行うと、Kerberos認証とSSL経由の証明書という2つの異なるスキームによって認証が実行されるため、認証の重複が発生します。DataStaxでは、いずれかを選択し、暗号化と認証の両方に使用することを推奨します。