Upgrade to Pro — share decks privately, control downloads, hide ads and more …

AWS Lake Formation によるデータアクセス管理

AWS Lake Formation によるデータアクセス管理

2023/05/02 に実施したJAWS-UG名古屋のLTです。
AWS Lake Formation でデータに対するアクセス管理を実現する
チュートリアルを紹介します。

Kentaro Takaki

May 02, 2023
Tweet

More Decks by Kentaro Takaki

Other Decks in Technology

Transcript

  1. 今日の報告背景 • 2023年の AWS Summit に参加してみて、以下2点を強く感じました。 1. AIを活用した付加価値の創造 - 生成系AI

    サービス Amazon Bedrock @ 基調講演 2. 非IT産業でのAWSの利活用 -トヨタ CCoE が進めるDeveloper eXperienceのカイゼン -自動車業界の変革を実現する AWS ソリューションと 最新ユースケース • 1. に関連して、データ収集~分析可視化までを目的としたデータパイプライン の重要性も訴えられていました。 その中で目にした LakeFormation に着目してLTしようと思います。 #jawsug #jawsug_Nagoya 2/20
  2. 今日のLTの目的 • AWS Lake Formation の説明を補助するために、データパイプラインおよび データレイクの簡単な説明を行います。 • AWS Lake

    Formation のアクセス管理機構で何ができるかを紹介します。 • AWS Lake Formation のアクセス管理機構の動きを確認するための簡単なデ モを行います。 #jawsug #jawsug_Nagoya 3/20
  3. データパイプライン データソース 取り込み データストア カタログ化 検索と分析 可視化 データ ベース IoTデバイス

    DBインポート ストリーム処理 データベース ストレージ データカタログ 前処理 検索 クエリ グラフ化 ダッシュボード モバイル端末 Amazon Kinesis AWS DMS Amazon S3 AWS Glue Amazon Athena Amazon OpenSearch Service Amazon EMR Amazon QuickSight Amazon Managed Grafana • 世の中で発生するデータ量の増加にともない、一元的なデータ処理フローが求められるようになった • この一元的なデータ処理フローをデータパイプラインと呼ぶ セキュリティとモニタリング #jawsug #jawsug_Nagoya 4/20
  4. データレイク(LakeFormation) データソース 取り込み データストア カタログ化 検索と分析 可視化 データ ベース IoTデバイス

    DBインポート ストリーム処理 データベース ストレージ データカタログ 前処理 検索 クエリ グラフ化 ダッシュボード モバイル端末 Amazon Kinesis AWS DMS Amazon S3 AWS Glue Amazon Athena Amazon OpenSearch Service Amazon EMR Amazon QuickSight Amazon Managed Grafana セキュリティとモニタリング AWS Lake Formation ・ストレージ ・ETL ・カタログ ・ブループリント ・セキュリティ • データパイプラインの中で、特にデータを保存し加工する部分をデータレイクと呼ぶ • 今日紹介する LakeFormation はデータパイプラインの中でデータレイクを構築しやすくする技術 今日はアクセス管理回なので こちらにフォーカスしてみます。 #jawsug #jawsug_Nagoya 5/20
  5. そもそもデータレイクとは? • 現在を断面的に見てもわからないので、実現方法別に表で比較(参考) 表計算ソフト RDBMS データウェアハウス データレイク AWSサービス EC2 /

    RDP RDS / Aurora Redshift S3,Glue,Lake Formation データサイズ ~数十 MB 数百GB~1TB TB~数PB PB~EB データ構造 構造化データ 構造化データ 構造化データ 構造化データ 半構造化データ 非構造化データ システム間連携 基本できない 連携コストが高い サイロ化しやすい 連携コストが高い サイロ化しやすい 単一のデータソースを 提供 HW価格 - - 高性能アプライアンス ハイエンドストレージ 安価なストレージを利 用 アーキテクチャ 課題 データサイズ データ共有 データサイズ システム連携の費用 Trueデータのありか 高価なHW データサイズ システム連携の費用 Trueデータのありか データソースのアクセ ス管理 HUB HUB DWH DWH DWH データソース データレイク 分析/可視化 SYS1 SYS2 #jawsug #jawsug_Nagoya 6/20
  6. AWS Lake Formationのアクセス管理 #jawsug #jawsug_Nagoya • AWS Lake Formation では独自のアクセス管理機構を持つ

    • プリンシパルが Data Catalog リソースや検索対象のデータにアクセスする にはIAMとAWS Lake Formation の両方の許可を得る必要がある https://docs.aws.amazon.com/lake-formation/latest/dg/access-control-overview.html より 7/20
  7. AWS Lake Formationのアクセス管理 #jawsug #jawsug_Nagoya • IAMと AWS Lake Formation

    の使い分けには2方式が存在する。 方式 Lake Formation IAM 説明 1 オープン 細かく設定 デフォルトの方式で、AWS Glueとの互換性を持たせている。 IAMポリシーで Data Catalog リソースと、S3へのすべての アクセスを制御する必要がある。 2 細かく設定 粗く設定 AWSではこちらを推奨している。 Data Catalog リソース、Amazon S3 ロケーション、および これらのロケーションにあるデータに対する限定的な Lake Formation 許可を個々のプリンシパルに付与する方式。 • 今日は方式2を利用して、2人のデータアナリストに別々の AWS Lake Formation のアクセス権を付与して挙動を確認します。 今日はこちらで実施してみる。 8/20
  8. デモに登場する人物(ペルソナ) #jawsug #jawsug_Nagoya • AWS Lake Formation で権限を管理する際はペルソナを利用します • これから権限設定を調整する対象はデータアナリストです。

    ペルソナ 説明 IAM 管理者 (スーパーユーザー) (必須) IAM ユーザーとロールを作成できるユーザーです。 AdministratorAccess AWS マネージドポリシーを持っています。すべての Lake Formation リソースに対するすべての許可を持っています。データレイク管理者 を追加できます。データレイク管理者としても指定されている場合を除き、Lake Formation 許可を付与することはできません。 データレイク管理者 (必須) Amazon S3 ロケーションの登録、Data Catalog へのアクセス、データ ベースの作成、ワークフローの作成と実行、他のユーザーへの Lake Formation 許可の付与、および AWS CloudTrail ログの表示を実行できるユーザーです。 データエンジニア (オプション) データベースの作成、クローラとワークフローの作成と実行、およ びクローラとワークフローが作成する Data Catalog テーブルに対する Lake Formation 許可の付与を実行できるユーザーです。 データアナリスト (オプション) Amazon Athena などを使用して、データレイクに対するクエリを実 行できるユーザーです。クエリを実行するために十分な許可のみを持っています。 ワークフローロール (必須) ユーザーに代わってワークフローを実行するロールです。このロールは、 ブループリントからワークフローを作成するときに指定します。 9/20
  9. デモのシナリオ #jawsug #jawsug_Nagoya • これから実施するデモは以下のチュートリアルの内容です。 https://docs.aws.amazon.com/ja_jp/lake-formation/latest/dg/cbac-tutorial.html • ユーザの動画のレビューデータへのアクセスコントロールをします。 データイメージ •

    データアナリスト(日本)にはmarketplace=‘JP’ データアナリスト(米国)にはmarketplace=‘US’ のデータにのみクエリ実行な権限を付与します。 つまり、テーブルに対する行単位でのアクセスを実現します。 10/20
  10. デモの概要構成 #jawsug #jawsug_Nagoya • 以下の図が簡易なデモの構成図です • 基本的なインフラはあるものとして、赤字部分をマネコンから設定します。 Amazon Simple Storage

    Service (Amazon S3) レビュー レビュー レビュー AWS Cloud AWS Glue Amazon Athena AWS Lake Formation AWS Glue Data Catalog DatalakeAdmin DataAnalystJP DataAnalystUS 全ての結果 ref USのみ JPのみ JPに対する 権限付与 USに対す る権限付与 query 11/20
  11. まとめ #jawsug #jawsug_Nagoya • AWS Lake Formation の説明を補助するために、データパイプラインおよび データレイクの簡単な説明をしました。 •

    AWS Lake Formation のアクセス管理機構で何ができるかを紹介しました。 • AWS LakeFormation のアクセス管理機構の動きを確認するための簡単なデ モを行いました。 19/20
  12. 参考文献 #jawsug #jawsug_Nagoya 1.AWSではじめるデータレイク: クラウドによる統合型データリポジトリ構築入門 2.【AWS Black Belt Online Seminar】

    AWS Lake Formation https://d1.awsstatic.com/webinars/jp/pdf/services/20191001_BlackBelt_LakeFormation_A.pdf 3.Developer Guide https://docs.aws.amazon.com/lake-formation/latest/dg/what-is-lake-formation.html 4. AWS Lake Formation の Tutorial の Securing data lakes with row-level access control https://docs.aws.amazon.com/ja_jp/lake-formation/latest/dg/cbac-tutorial.html 20/20