インタビュー
CDH 5で企業にHadoopのインフラを~米Cloudera CTO (セキュリティも大きく改善)
(2013/12/26 06:00)
セキュリティも大きく改善
――企業でHadoopを利用する上では、セキュリティが大きな問題となっていましたが、CDH 5ではどのように変更されましたか?
今後Clouderaは、Hadoopを中核として、Enterprise Data Hub(EDH)を実現するためにさまざまな製品を出していきます。データベースなどを構造化データや非構造化データなど、企業が持つさまざまなデータをEDHでまとめ上げるには、セキュリティは非常に重要なポイントです。
Hadoopには、Kerberosなどを使ったユーザー認証はありましたが、アクセスコントロールもファイルレベルやテーブルレベルでしかできません。しかし、数カ月前から、Apache Sentryというプロジェクトを立ち上げました。
Apache Sentryでは、テーブル内部の行や段ごとにアクセスコントロールを行うことができます。例えば、ある行にクレジットカード番号と名前が入っている場合、最高レベルのユーザーにしか重要なデータの変更や読み取りをできなくする、といったことができます。
これなら、Hadoopでビッグデータ処理を行うときに、クレジットカードの重要情報が入っていても、高いレベルのユーザーしかアクセスできません。一般的な処理では、クレジットカードの重要情報は省いて分析します。
もう一つ重要なのは、役割ベースのアクセスコントロールもサポートされていることです。ユーザーをグループ化して、アクセスできるデータを決められるため、ファイナンス、マーケティング、エンジニアなどのグループを作成して、ユーザーを登録し、アクセスできるデータを制限したり、行えることをコントロールしたりすることが可能になりました。
当社が提供しているCloudera Navigatorによって、ユーザーやグループのアクセスコントロールを管理しています。
Cloudera Navigatorには、ユーザーやグループ権限の変更機能、誰がどのデータにアクセスしたかを記録するデータ監査機能、さまざまなデータのデータ構造を明らかにしてユーザーに提示する機能、ソースデータの前処理機能、データのライフサイクル管理機能などが用意されています。
つい先ごろCloudera Navigatorに新しい機能を提供しました。これは、データの関係性をウォッチする機能です。例えば、あるデータが、別の重要なデータの特定の行を参照している場合、元の重要データが持つセキュリティレベルを、作成したデータの行にも当てはめます。これにより、さまざまなデータから新しいデータを作る場合でも、元のセキュリティが引き継がれます。
データ構造を認識して、抽出元のデータがどれなのかをグラフィカルに表示する機能なども用意されています。
さらに、Apache Sentryよりもハイレベルでのアクセスコントロールが必要なユーザーのために、Apache Accumuloというプロジェクトをサポートしています。Accumuloでは、テーブルの一つ一つのセルレベルでアクセスコントロールを提供しています。セルごとのアクセスパーミッションをサポートすることで、非常に高いレベルのセキュリティが提供できました。
Accumuloは、すべてのお客さまにとって使いやすいとは言えませんが、金融など高いセキュリティを必要とする企業にとっては、重要な機能といえるでしょう。