AWS Lake Formation: 仕組み - AWS Lake Formation

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS Lake Formation: 仕組み

AWS Lake Formation には、Amazon S3 内の基盤データを持つデータベース、テーブル、列などのデータカタログリソースへのアクセスを許可または取り消すためのリレーショナルデータベース管理システム (RDBMS) アクセス許可モデルが用意されています。管理が簡単な Lake Formation 許可は、複雑な Amazon S3 バケットポリシーや対応する IAM ポリシーに取って代わるものです。

Lake Formation では、次の 2 つのレベルでアクセス許可を実装できます。

  • データベースやテーブルなどのデータカタログリソースに対するメタデータレベルでアクセス許可を適用

  • 統合されたエンジンに代わって、Amazon S3 に保存されている基盤となるデータへのアクセス許可を管理

Lake Formation 許可管理ワークフロー

Lake Formation は、Lake Formation に登録されている Amazon S3 データストアやメタデータオブジェクトに対してクエリを実行するために、分析エンジンと統合します。以下の図は、Lake Formation における許可管理の仕組みを示しています。

Lake Formation 許可管理の手順の概要

Lake Formation がデータレイク内のデータに対するアクセス制御を提供する前に、データレイク管理者または管理権限を持つユーザーが、Lake Formation の権限を使用して Data Catalog テーブルへのアクセスを許可または拒否する個々の Data Catalog テーブルのユーザーポリシーを設定します。

次に、データレイク管理者または管理者から委任されたユーザーのいずれかが、Data Catalog データベースとテーブルに対するユーザーに Lake Formation 許可を付与し、テーブルの Amazon S3 ロケーションを Lake Formation に登録します。

  1. メタデータの取得 — プリンシパル (ユーザー) が Amazon Athena、AWS Glue、Amazon EMR、Amazon Redshift Spectrumなどの統合分析エンジンにクエリまたは ETL スクリプトを送信します。統合分析エンジンは、要求されているテーブルを識別し、メタデータのリクエストを Data Catalog に送信します。

  2. 許可の確認 — Data Catalog は Lake Formation でユーザーのアクセス許可を確認し、ユーザーがテーブルにアクセスする権限を持っている場合は、ユーザーが表示できるメタデータをエンジンに返します。

  3. 認証情報の取得 — Data Catalog は、テーブルが Lake Formation によって管理されているかどうかをエンジンに知らせます。基盤となるデータが Lake Formation に登録されている場合、分析エンジンは Lake Formation に一時的なアクセスを許可してデータアクセスを提供するように要求します。

  4. データの取得 — ユーザーがテーブルへのアクセスを許可されている場合、Lake Formation は統合分析エンジンへの一時的なアクセスを提供します。一時的なアクセスを使用して、分析エンジンは Amazon S3 からデータを取得し、列、行、またはセルのフィルタリングなど、必要なフィルタリングを実行します。エンジンはジョブの実行を終了すると、結果をユーザーに返します。このプロセスは、認証情報の供給と呼ばれます。

    テーブルが Lake Formation によって管理されていない場合、分析エンジンからの 2 回目の呼び出しは Amazon S3 に対して直接行われます。関係する Amazon S3 バケットポリシーと IAM ユーザーポリシーのデータアクセスが評価されます。

    IAM ポリシーを使用するときは、常に IAM のベストプラクティスに従うようにしてください。詳細については、IAM ユーザーガイドの「IAM でのセキュリティベストプラクティス」を参照してください。