View a markdown version of this page

Mengaktifkan integrasi Tabel Amazon S3 - AWS Lake Formation

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Mengaktifkan integrasi Tabel Amazon S3

Anda dapat membuat bucket tabel Amazon S3 menggunakan konsol Amazon S3, dan mengintegrasikannya dengan layanan analitik. AWS Untuk informasi selengkapnya, lihat Menggunakan Tabel Amazon S3 dengan layanan AWS analitik.

Di AWS Lake Formation, Anda dapat mengaktifkan integrasi Tabel Amazon S3 dengan AWS Glue Data Catalog dan AWS Lake Formation menggunakan konsol atau penggunaan Lake Formation. AWS CLI

  1. Buka konsol Lake Formation di https://console.aws.amazon.com/lakeformation/.

  2. Di panel navigasi, pilih Katalog di bawah Katalog Data.

  3. Pilih Aktifkan integrasi Tabel S3 pada halaman Katalog.

    Opsi aktifkan integrasi tabel S3 pada halaman katalog.
  4. Pilih peran IAM dengan izin yang diperlukan untuk Lake Formation untuk mengasumsikan untuk menjual kredensil ke mesin kueri analitik. Untuk izin yang diperlukan untuk peran mengakses data, lihat step3-permissions di bagian prasyarat.

    Layar integrasi S3 aktifkan dengan peran IAM.
  5. Pilih Izinkan mesin eksternal mengakses data di lokasi Amazon S3 dengan opsi akses tabel penuh. Saat Anda mengaktifkan akses tabel penuh untuk mesin pihak ketiga, Lake Formation mengembalikan kredensil ke mesin pihak ketiga secara langsung tanpa melakukan validasi tag sesi IAM. Ini berarti Anda tidak dapat menerapkan kontrol akses berbutir halus Lake Formation ke tabel yang sedang diakses.

  6. Pilih Aktifkan. Katalog baru untuk Tabel S3 ditambahkan ke daftar katalog. Saat Anda mengaktifkan integrasi katalog tabel S3, layanan akan mendaftarkan lokasi data bucket tabel S3 dengan Lake Formation.

  7. Pilih katalog untuk melihat objek katalog dan memberikan izin kepada prinsipal lain.

    Katalog Tabel S3

    Untuk membuat katalog multi-level, lihat bagian Membuat keranjang tabel di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.

Mengikuti bagian prasyarat, buat peran layanan IAM yang memungkinkan Lake Formation mengakses sumber daya tabel Anda.

  1. Buat file bernama Role-Trust-Policy.json yang berisi kebijakan kepercayaan berikut:

    { "Version": "2012-10-17", "Statement": [ { "Sid": "LakeFormationDataAccessPolicy", "Effect": "Allow", "Principal": { "Service": "lakeformation.amazonaws.com" }, "Action": [ "sts:AssumeRole", "sts:SetContext", "sts:SetSourceIdentity" ], "Condition": { "StringEquals": { "aws:SourceAccount": "111122223333" } } } ] }
  2. Buat peran layanan IAM dengan menggunakan perintah berikut:

    aws iam create-role \ --role-name S3TablesRoleForLakeFormation \ --assume-role-policy-document file://Role-Trust-Policy.json
  3. Buat file bernama LF-GluePolicy.json yang berisi kebijakan berikut:

    { "Version": "2012-10-17", "Statement": [ { "Sid": "LakeFormationPermissionsForS3ListTableBucket", "Effect": "Allow", "Action": [ "s3tables:ListTableBuckets" ], "Resource": [ "*" ] }, { "Sid": "LakeFormationDataAccessPermissionsForS3TableBucket", "Effect": "Allow", "Action": [ "s3tables:CreateTableBucket", "s3tables:GetTableBucket", "s3tables:CreateNamespace", "s3tables:GetNamespace", "s3tables:ListNamespaces", "s3tables:DeleteNamespace", "s3tables:DeleteTableBucket", "s3tables:CreateTable", "s3tables:DeleteTable", "s3tables:GetTable", "s3tables:ListTables", "s3tables:RenameTable", "s3tables:UpdateTableMetadataLocation", "s3tables:GetTableMetadataLocation", "s3tables:GetTableData", "s3tables:PutTableData" ], "Resource": [ "arn:aws:s3tables:us-east-1:111122223333:bucket/*" ] } ] }
  4. Lampirkan kebijakan ke peran dengan menggunakan perintah berikut:

    aws iam put-role-policy \ --role-name S3TablesRoleForLakeFormation \ --policy-name LakeFormationDataAccessPermissionsForS3TableBucket \ --policy-document file://LF-GluePolicy.json
  5. Buat file bernama input.json yang berisi berikut ini:

    { "ResourceArn": "arn:aws:s3tables:us-east-1:111122223333:bucket/*", "WithFederation": true, "RoleArn": "arn:aws:iam::111122223333:role/S3TablesRoleForLakeFormation" }
  6. Daftarkan bucket tabel dengan Lake Formation dengan menggunakan perintah berikut:

    aws lakeformation register-resource \ --region us-east-1 \ --with-privileged-access \ --cli-input-json file://input.json
  7. Buat file bernama catalog.json yang berisi katalog berikut:

    { "Name": "s3tablescatalog", "CatalogInput": { "FederatedCatalog": { "Identifier": "arn:aws:s3tables:us-east-1:111122223333:bucket/*", "ConnectionName": "aws:s3tables" }, "CreateDatabaseDefaultPermissions": [], "CreateTableDefaultPermissions": [], "AllowFullTableExternalDataAccess": "True" } }
  8. Buat s3tablescatalog katalog dengan menggunakan perintah berikut. Membuat katalog ini mengisi dengan objek yang sesuai AWS Glue Data Catalog dengan bucket tabel, ruang nama, dan tabel.

    aws glue create-catalog \ --region us-east-1 \ --cli-input-json file://catalog.json
  9. Verifikasi bahwa s3tablescatalog katalog telah ditambahkan AWS Glue dengan menggunakan perintah berikut:

    aws glue get-catalog --catalog-id s3tablescatalog