ステップ 4: データストアを Lake Formation 許可モデルに切り替える - AWS Lake Formation

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

ステップ 4: データストアを Lake Formation 許可モデルに切り替える

Lake Formation 許可へのアップグレードを 1 度に 1 データロケーションずつ実行します。これを行うには、Data Catalog によって参照されるすべての Amazon Simple Storage Service (Amazon S3) パスを登録するまで、このセクション全体を繰り返します。

Lake Formation 許可を検証する

ロケーションを登録する前に、検証ステップを実行して、正しいプリンシパルに必要な Lake Formation 許可があること、および Lake Formation 許可がそれらを持つべきではないプリンシパルに付与されていないことを確認します。Lake Formation GetEffectivePermissionsForPath API 操作を使用して、Amazon S3 ロケーションを参照する Data Catalog リソースと、これらのリソースに対する許可を持つプリンシパルを特定します。

以下の AWS CLI 例は、Amazon S3 バケット products を参照する Data Catalog データベースとテーブルを返します。

aws lakeformation get-effective-permissions-for-path --resource-arn arn:aws:s3:::products --profile datalake_admin

profile オプションに注意してください。このコマンドは、データレイク管理者として実行することをお勧めします。

以下は、返された結果の抜粋です。

{ "PermissionsWithGrantOption": [ "SELECT" ], "Resource": { "TableWithColumns": { "Name": "inventory_product", "ColumnWildcard": {}, "DatabaseName": "inventory" } }, "Permissions": [ "SELECT" ], "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::111122223333:user/datalake_user1", "DataLakePrincipalType": "IAM_USER" } },...
重要

AWS Glue Data Catalog が暗号化されている場合、GetEffectivePermissionsForPath は、Lake Formation の一般提供後に作成または変更されたデータベースとテーブルのみを返します。

既存の Data Catalog リソースをセキュア化する

次に、そのロケーションについて特定した各テーブルと各データベースに対する Super 許可を IAMAllowedPrincipals から取り消します。

警告

Data Catalog にデータベースとテーブルを作成するオートメーションを設定している場合、以下の手順は、オートメーションとダウンストリームの抽出、変換、ロード (ETL) ジョブが失敗する原因になる可能性があります。この手順は、既存のプロセスを変更するか、必要なプリンシパルに明示的な Lake Formation 許可を付与した後でのみ、続行するようにしてください。Lake Formation 許可については、「Lake Formation 許可のリファレンス」を参照してください。

テーブルに対する SuperIAMAllowedPrincipals から取り消す
  1. AWS Lake Formation コンソール (https://console.aws.amazon.com/lakeformation/) を開きます。データレイク管理者としてサインインします。

  2. ナビゲーションペインで [Table] (テーブル) を選択します。

  3. [Tables] (テーブル) ページで、目的のテーブルの横にあるラジオボタンを選択します。

  4. [Actions] (アクション) メニューで、[Revoke] (取り消す) を選択します。

  5. [Revoke permissions] (許可を取り消す) ダイアログボックスの [IAM users and roles] (IAM ユーザーおよびロール) リストで、[Group]グループ見出しまでスクロールダウンして [IAMAllowedPrincipals] を選択します。

  6. [Table permissions] (テーブルの許可) で [Super] (スーパー) が選択されていることを確認してから、[Revoke] (取り消す) を選択します。

データベースに対する SuperIAMAllowedPrincipals から取り消す
  1. AWS Lake Formation コンソール (https://console.aws.amazon.com/lakeformation/) を開きます。データレイク管理者としてサインインします。

  2. ナビゲーションペインで、[Databases] (データベース) を選択します。

  3. [Databases] (データベース) ページで、目的のデータベースの横にあるラジオボタンを選択します。

  4. [Actions] (アクション) メニューで、[Edit] (編集) を選択します。

  5. [Edit database] (データベースの編集) ページで、[Use only IAM access control for new tables in this database] (このデータベースの新しいテーブルには IAM アクセスコントロールのみを使用する) をオフにしてから [Save] (保存) を選択します。

  6. [Databases] (データベース) ページに戻り、データベースが選択されていることを確認してから、[Actions] (アクション) メニューで [Revoke] (取り消す) を選択します。

  7. [Revoke permissions] (許可を取り消す) ダイアログボックスの [IAM users and roles] (IAM ユーザーおよびロール) リストで、[Group]グループ見出しまでスクロールダウンして [IAMAllowedPrincipals] を選択します。

  8. [Database permissions] (データベースの許可) で [Super] (スーパー) が選択されていることを確認してから、[Revoke] (取り消す) を選択します。

Amazon S3 ロケーションの Lake Formation 許可を有効にする

次に、Amazon S3 ロケーションを Lake Formation に登録します。これを実行するには、「データレイクへの Amazon S3 ロケーションの追加」で説明されているプロセスを使用できます。または、「認証情報供給 API」の説明に従って RegisterResource API 操作を使用します。

注記

親ロケーションが登録されている場合、子ロケーションを登録する必要はありません。

これらの手順を完了して、ユーザーがそのデータにアクセスできることをテストしたら、Lake Formation 許可を正常にアップグレードしたことになります。次のステップである「ステップ 5: 新しい Data Catalog リソースをセキュア化する」に進みます。