

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

# Ubah kontrol akses dari AWS Lake Formation IAM
<a name="change-access-lf-to-iam"></a>

Bagian ini menjelaskan alur kerja untuk mengubah kontrol akses dari AWS Lake Formation hibah ke hak istimewa IAM untuk Tabel Amazon S3 yang terintegrasi dengan. AWS Glue Data Catalog

**penting**  
Mengubah kontrol akses dari AWS Lake Formation hibah ke IAM akan mencabut semua akses berbasis Lake Formation yang ada ke sumber daya Tabel S3 Anda. Setelah menyelesaikan Langkah 2, pengguna dan peran yang sebelumnya mengakses data melalui hibah Lake Formation akan segera kehilangan akses. Anda harus memberikan akses IAM pada Langkah 1 sebelum memperbarui katalog. Rencanakan migrasi ini selama jendela pemeliharaan dan koordinasikan dengan tim data Anda.

**penting**  
Kontrol akses berbutir halus, seperti akses tingkat kolom dan filter sel data, dengan objek Katalog Data tersedia saat hanya menggunakan. AWS Lake Formation Sebelum melanjutkan untuk memigrasikan kontrol akses dari AWS Lake Formation IAM, audit hibah Lake Formation Anda yang ada menggunakan `aws lakeformation list-permissions` dan tentukan apakah kebijakan IAM yang setara dapat menyediakan akses yang dibutuhkan pengguna Anda. Setiap kepala sekolah yang mengandalkan hibah Lake Formation berbutir halus akan memerlukan akses IAM tingkat tabel penuh setelah memigrasikan kontrol akses.

## Prasyarat
<a name="w2aac13c29b9b9"></a>

Sebelum Anda mulai, pastikan hal-hal berikut:
+ Anda telah mengidentifikasi semua hibah Lake Formation yang saat ini berlaku untuk sumber daya yang dimigrasikan. Jalankan `aws lakeformation list-permissions --resource-type TABLE` untuk memeriksanya.
+ Anda telah menyiapkan kebijakan IAM yang menyediakan akses setara untuk semua prinsipal yang terpengaruh.
+ Peran IAM yang terdaftar di Lake Formation masih memiliki `lakeformation:GetDataAccess` (diperlukan selama periode transisi hibrida).

## Menggunakan AWS CLI
<a name="w2aac13c29b9c11"></a>

1. **Langkah 1: Berikan izin IAM kepada kepala sekolah**

   Lampirkan kebijakan IAM ke pengguna atau peran yang memerlukan akses. Kebijakan harus menyertakan izin AWS Glue metadata dan izin data Tabel S3.
**catatan**  
Kebijakan contoh berikut hanya menyediakan akses baca.

   ```
   aws iam put-user-policy \
     --user-name GlueIAMAccessUser \
     --policy-name S3TablesIAMAccessPolicy \
     --policy-document '{
       "Version": "2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "GlueMetadataAccess",
               "Effect": "Allow",
               "Action": [
                   "glue:GetCatalog",
                   "glue:GetDatabase",
                   "glue:GetTable"
               ],
               "Resource": [
                   "arn:aws:glue:us-east-1:AWSAccountID:catalog/s3tablescatalog",
                   "arn:aws:glue:us-east-1:AWSAccountID:database/s3tablescatalog/table-bucket-name/namespace",
                   "arn:aws:glue:us-east-1:AWSAccountID:table/s3tablescatalog/table-bucket-name/namespace/*"
               ]
           },
           {
               "Sid": "S3TablesDataAccess",
               "Effect": "Allow",
               "Action": [
                   "s3tables:GetTableBucket",
                   "s3tables:GetTable",
                   "s3tables:GetTableMetadataLocation",
                   "s3tables:GetTableData"
               ],
               "Resource": [
                   "arn:aws:s3tables:us-east-1:AWSAccountID:bucket/table-bucket-name",
                   "arn:aws:s3tables:us-east-1:AWSAccountID:bucket/table-bucket-name/table/*"
               ]
           }
       ]
     }'
   ```

   Verifikasi bahwa semua pengguna dan peran yang terpengaruh dapat mengakses tabel yang diharapkan menggunakan kredensil IAM mereka sebelum melanjutkan.

1. **Langkah 2: Perbarui katalog untuk mengembalikan izin default IAM**

   Perbarui katalog sehingga `CreateDatabaseDefaultPermissions` dan `CreateTableDefaultPermissions` berikan `ALL` ke`IAM_ALLOWED_PRINCIPALS`. Setel `OverwriteChildResourcePermissionsWithDefault` `Accept` agar perubahan menyebar ke semua sumber daya anak yang ada, bukan hanya yang baru dibuat.

   ```
   aws glue update-catalog \
     --catalog-id "s3tablescatalog" \
     --catalog-input '{
       "FederatedCatalog": {
           "Identifier": "arn:aws:s3tables:us-east-1:AWSAccountID:bucket/*",
           "ConnectionName": "aws:s3tables"
       },
       "CreateDatabaseDefaultPermissions": [{
           "Principal": {"DataLakePrincipalIdentifier": "IAM_ALLOWED_PRINCIPALS"},
           "Permissions": ["ALL"]
       }],
       "CreateTableDefaultPermissions": [{
           "Principal": {"DataLakePrincipalIdentifier": "IAM_ALLOWED_PRINCIPALS"},
           "Permissions": ["ALL"]
       }],
       "OverwriteChildResourcePermissionsWithDefault": "Accept"
     }'
   ```

1. **Langkah 3: Membatalkan pendaftaran sumber daya dari Lake Formation**

   Setelah Anda mengonfirmasi bahwa semua akses bekerja melalui kebijakan IAM dan tidak ada kepala sekolah yang bergantung pada hibah Lake Formation, Anda dapat membatalkan pendaftaran sumber daya dari Lake Formation untuk menyelesaikan migrasi.

   ```
   aws lakeformation deregister-resource \
     --resource-arn "arn:aws:s3tables:us-east-1:AWSAccountID:bucket/*"
   ```
**catatan**  
Setelah membatalkan pendaftaran sumber daya, hapus `lakeformation:GetDataAccess` dari kepala sekolah IAM yang tidak lagi membutuhkannya.

Tidak ada `revoke-permissions` langkah yang diperlukan.