投稿日: May 13, 2021
Amazon EMR の Apache Ranger との統合が EMR 6.3 で利用可能になり、きめ細やかなデータアクセス制御を定義、適用、監査することが可能になりました。この機能を使えば、(1) Hive Metastore を介してデータにアクセスする Apache Hive ユーザー向けに Apache Spark のデータベース、テーブル、および列レベルの認証ポリシーを定義し、(2) Amazon S3 内のデータに Amazon EMR ファイルシステム (EMRFS) を介してアクセスする場合にプレフィックスおよびオブジェクトレベルの認証ポリシーを定義して適用できるので、Amazon CloudWatch を活用して監査ログをキャプチャできます。
Apache Ranger は、Hadoop プラットフォーム全体の包括的なデータセキュリティを有効化、モニタ、および管理するオープンソースツールです。これまで、Apache Ranger を使用して、Apache Hive が適用された HDFS 内のデータにきめ細かい認証を適用することが可能でした (詳細は、このブログ記事を参照)。現在、このネイティブな統合により、追加の機能が有効になりました。Apache Ranger ポリシー管理サーバーで 3 種類の認証ポリシーを定義できます。Apache Hive でテーブル、および列レベルの認証に対してテーブル、列、および行レベルの認証を設定できます。Apache Spark では、テーブルおよび列レベルの認証を定義できます。そして、Amazon S3 にはプレフィックスとオブジェクトレベルの認証を定義できます。Amazon EMR は、対応する Apache Ranger プラグインをクラスターに自動的にインストールして構成します。Ranger プラグインはポリシー管理サーバーとの間で認証ポリシーを同期し、データアクセス制御を適用して、監査イベントを Amazon CloudWatch Logs に送信します。
Amazon EMR で Apache Ranger 統合を有効にする前の注意事項と制限を以下に示します。(1) 現在、行レベルの認証およびデータのマスキングポリシーは Apache Hive でのみサポートされています。(2) EMR Ranger-Spark プラグインは、Spark API と Java、Scala、R、および Pyspark を組み合わせて使用する際にきめ細かい認証を適用します。しかし、Spark SQL を使用した Ranger 対応クラスターへのデータ書き込みは現在サポートされていません。SparkSQL を使用したデータ読み取りだけがサポートされています。(3) このネイティブ統合は、Apache Zeppelin や Hue などの一部のアプリケーションをサポートします。サポートされているアプリケーションの完全なリストについては、サポートされるアプリケーションを参照してください。
EMR 6.3 での Amazon EMR の Apache Ranger との統合は、米国東部 (バージニア北部、オハイオ)、米国西部 (カリフォルニア北部、オレゴン)、欧州 (フランクフルト、アイルランド、ロンドン、パリ、ミラノ、ストックホルム)、カナダ (中部)、アジアパシフィック (ムンバイ、ソウル、シンガポール、香港、東京、シドニー)、南米 (サンパウロ)、中東 (バーレーン)、および アフリカ (ケープタウン) の AWS リージョンでご利用いただけます。
使用を開始するには、以下のリソースのリストをご覧ください。
- Amazon EMR 管理ガイド: Integrating Amazon EMR with Apache Ranger (Amazon EMR と Apache Ranger の統合)
- AWS ビッグデータブログ投稿: Introducing Amazon EMR integration with Apache Ranger (AmazonEMR と ApacheRanger の統合の概要)