

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

# Manajemen akses untuk Tabel S3
<a name="s3-tables-setting-up"></a>

Di S3 Tabel sumber daya termasuk bucket tabel dan tabel yang dikandungnya. Pengguna root Akun AWS yang menciptakan sumber daya (pemilik sumber daya) dan AWS Identity and Access Management (IAM) pengguna dalam akun yang memiliki izin yang diperlukan dapat mengakses sumber daya yang mereka buat. Pemilik sumber daya menentukan siapa lagi yang dapat mengakses sumber daya dan tindakan yang diizinkan untuk mereka lakukan pada sumber daya. Amazon S3 memiliki berbagai alat manajemen akses yang dapat Anda gunakan untuk memberi orang lain akses ke sumber daya S3 Anda. Jika Anda telah mengintegrasikan tabel Anda dengan AWS Lake Formation, maka Anda juga dapat mengelola akses halus ke tabel dan ruang nama Anda. Topik berikut memberi Anda ikhtisar sumber daya, tindakan IAM, dan kunci kondisi untuk Tabel S3. Mereka juga memberikan contoh untuk kebijakan berbasis sumber daya dan berbasis identitas untuk Tabel S3.

**Topics**
+ [

## Sumber daya
](#s3-tables-resources)
+ [

## Tindakan untuk Tabel S3
](#s3-tables-actions)
+ [

## Kunci kondisi untuk Tabel S3
](#s3-tables-conditionkeys)
+ [

# Kebijakan berbasis identitas IAM untuk Tabel S3
](s3-tables-identity-based-policies.md)
+ [

# Kebijakan berbasis sumber daya untuk Tabel S3
](s3-tables-resource-based-policies.md)
+ [

# AWS kebijakan terkelola untuk Tabel S3
](s3-tables-security-iam-awsmanpol.md)
+ [

# Memberikan akses dengan semantik SQL
](s3-tables-sql.md)
+ [

# Mengelola akses ke tabel atau database dengan Lake Formation
](grant-permissions-tables.md)

## Sumber daya
<a name="s3-tables-resources"></a>

Sumber daya Tabel S3 termasuk bucket tabel dan tabel yang dikandungnya.
+ Bucket tabel — Bucket tabel dirancang khusus untuk tabel dan penyedia transaksi per detik (TPS) yang lebih tinggi dan throughput kueri yang lebih baik dibandingkan dengan tabel yang dikelola sendiri dalam bucket S3 tujuan umum. Bucket meja memberikan daya tahan, ketersediaan, skalabilitas, dan karakteristik kinerja yang sama dengan bucket tujuan umum Amazon S3. 
+ Tabel — Tabel di bucket tabel Anda disimpan dalam Apache Iceberg format. Anda dapat menanyakan tabel ini menggunakan SQL standar di mesin kueri yang mendukungIceberg.

Amazon Resource Names (ARNs) untuk tabel dan bucket tabel berisi `s3tables` namespace, Akun AWS ID, dan nama bucket. Wilayah AWS Untuk mengakses dan melakukan tindakan pada tabel dan bucket tabel Anda, Anda harus menggunakan format ARN berikut:
+ Tabel format ARN:

  `arn:aws:s3tables:us-west-2:111122223333:bucket/amzn-s3-demo-bucket/table/demo-tableID`

## Tindakan untuk Tabel S3
<a name="s3-tables-actions"></a>

Dalam kebijakan berbasis identitas atau kebijakan berbasis sumber daya, Anda menentukan tindakan Tabel S3 mana yang diizinkan atau ditolak untuk prinsip IAM tertentu. Tindakan tabel sesuai dengan operasi API tingkat bucket dan tabel. Semua tindakan adalah bagian dari namespace IAM yang unik:. `s3tables`

Saat Anda menggunakan tindakan dalam kebijakan, Anda biasanya mengizinkan atau menolak akses ke operasi API dengan nama yang sama. Namun, dalam beberapa kasus, satu tindakan mengendalikan akses ke lebih dari satu operasi API. Misalnya, `s3tables:GetTableData` tindakan mencakup izin untuk`GetObject`,`ListParts`, dan operasi `ListMultiparts` API. 

Berikut ini adalah tindakan yang didukung untuk bucket tabel. Anda dapat menentukan tindakan berikut dalam `Action` elemen kebijakan IAM atau kebijakan sumber daya.


| Tindakan | Deskripsi | Tingkat akses | Akses lintas akun | 
| --- | --- | --- | --- | 
| s3tables:CreateTableBucket | Memberikan izin untuk membuat keranjang tabel | Write | Tidak | 
| s3tables:GetTableBucket | Memberikan izin untuk mengambil ARN bucket tabel, nama bucket tabel, dan tanggal pembuatan. | Write | Ya | 
| s3tables:ListTableBuckets | Memberikan izin untuk mencantumkan semua bucket tabel di akun ini. | Read | Tidak | 
| s3tables:CreateNamespace | Memberikan izin untuk membuat spasi nama di keranjang tabel | Write | Ya | 
| s3tables:GetNamespace | Memberikan izin untuk mengambil detail namespace | Read | Ya | 
| s3tables:ListNamespaces | Memberikan izin untuk mencantumkan semua ruang nama di keranjang meja. | Read | Ya | 
| s3tables:DeleteNamespace | Memberikan izin untuk menghapus namespace di keranjang tabel | Write | Ya | 
| s3tables:DeleteTableBucket | Memberikan izin untuk menghapus ember  | Write | Ya  | 
| s3tables:PutTableBucketPolicy | Memberikan izin untuk menambah atau mengganti kebijakan bucket | Permissions Management | Tidak | 
| s3tables:GetTableBucketPolicy | Memberikan izin untuk mengambil kebijakan bucket | Read | Tidak | 
| s3tables:DeleteTableBucketPolicy | Memberikan izin untuk menghapus kebijakan bucket | Permissions Management | Tidak | 
| s3tables:GetTableBucketMaintenanceConfiguration | Memberikan izin untuk mengambil konfigurasi pemeliharaan untuk bucket meja | Read | Ya  | 
| s3tables:PutTableBucketMaintenanceConfiguration | Memberikan izin untuk menambah atau mengganti konfigurasi pemeliharaan untuk bucket meja | Write | Ya | 
| s3tables:PutTableBucketEncryption | Memberikan izin untuk menambah atau mengganti konfigurasi enkripsi untuk keranjang tabel | Write | Tidak | 
| s3tables:GetTableBucketEncryption | Memberikan izin untuk mengambil konfigurasi enkripsi untuk keranjang tabel | Read | Tidak | 
| s3tables:DeleteTableBucketEncryption | Memberikan izin untuk menghapus konfigurasi enkripsi untuk keranjang tabel | Write | Tidak | 

Tindakan berikut didukung untuk tabel:


| Tindakan | Deskripsi | Tingkat akses | Akses lintas akun | 
| --- | --- | --- | --- | 
| s3tables:GetTableMaintenanceConfiguration | Memberikan izin untuk mengambil konfigurasi pemeliharaan untuk tabel | Read | Ya | 
| s3tables:PutTableMaintenanceConfiguration |  Memberikan izin untuk menambah atau mengganti konfigurasi pemeliharaan untuk tabel | Write | Ya | 
| s3tables:PutTablePolicy | Memberikan izin untuk menambah atau mengganti kebijakan tabel | Permissions Management | Tidak | 
| s3tables:GetTablePolicy | Memberikan izin untuk mengambil kebijakan tabel | Read | Tidak | 
| s3tables:DeleteTablePolicy | Memberikan izin untuk menghapus kebijakan tabel | Permissions management | Tidak | 
| s3tables:CreateTable | Memberikan izin untuk membuat tabel di ember meja | Write | Ya | 
| s3tables:GetTable | Memberikan izin untuk mengambil informasi tabel | Read | Ya | 
| s3tables:GetTableMetadataLocation | Memberikan izin untuk mengambil pointer root tabel (file metadata) | Read | Ya  | 
| s3tables:ListTables | Memberikan izin untuk mencantumkan semua tabel dalam ember meja | Read | Ya  | 
| s3tables:RenameTable | Berikan izin untuk mengubah nama tabel. | Write | Ya  | 
| s3tables:UpdateTableMetadataLocation | Memberikan izin untuk memperbarui penunjuk root tabel (file metadata) | Write | Ya  | 
| s3tables:GetTableData | Memberikan izin untuk membaca metadata tabel dan objek data yang disimpan dalam keranjang tabel | Read | Ya | 
| s3tables:PutTableData | Memberikan izin untuk menulis metadata tabel dan objek data yang disimpan dalam keranjang tabel | Write | Ya | 
| s3tables:GetTableEncryption  | Memberikan izin untuk mengambil pengaturan enkripsi untuk tabel | Write | Tidak | 
| s3tables:PutTableEncryption  | Memberikan izin untuk menambahkan enkripsi ke tabel | Write | Tidak | 
| s3tables:DeleteTable | Memberikan izin untuk menghapus tabel dari ember meja | Write | Ya | 

Untuk melakukan tindakan baca dan tulis tingkat tabel, Tabel S3 mendukung operasi API Amazon S3 seperti dan. `GetObject` `PutObject` Tabel berikut menyediakan daftar tindakan tingkat objek. Saat memberikan izin baca dan tulis ke tabel Anda, Anda menggunakan tindakan berikut.


| Tindakan | Objek S3 APIs | 
| --- | --- | 
| s3tables:GetTableData | GetObject, ListParts, HeadObject | 
| s3tables:PutTableData | PutObject, CreateMultipartUpload, CompleteMultipartUpload,  UploadPart, AbortMultipartUpload | 

Misalnya, jika pengguna memiliki `GetTableData` izin, maka mereka dapat membaca semua file yang terkait dengan tabel, seperti file metadata, manifes, file daftar manifes, dan file data parket.

## Kunci kondisi untuk Tabel S3
<a name="s3-tables-conditionkeys"></a>

Tabel S3 mendukung [kunci konteks kondisi AWS global](https://docs.aws.amazon.com//IAM/latest/UserGuide/reference_policies_condition-keys.html).

Selain itu, Tabel S3 mendefinisikan kunci kondisi berikut yang dapat Anda gunakan dalam kebijakan akses.


| Kunci syarat | Deskripsi | Tipe | 
| --- | --- | --- | 
|  s3tables:tableName |  Memfilter akses dengan nama tabel di keranjang tabel. Anda dapat menggunakan kunci `s3tables:tableName` kondisi untuk menulis IAM, atau kebijakan bucket tabel yang membatasi akses pengguna atau aplikasi hanya ke tabel yang memenuhi kondisi nama ini.   Penting untuk dicatat bahwa jika Anda menggunakan tombol `s3tables:tableName` kondisi untuk mengontrol akses maka perubahan nama tabel dapat memengaruhi kebijakan ini. Nilai contoh: "s3tables:tableName":"department\$1"  | String | 
|  s3tables:namespace |  Memfilter akses oleh ruang nama yang dibuat di keranjang tabel.  Anda dapat menggunakan kunci `s3tables:namespace` kondisi untuk menulis kebijakan IAM, tabel, atau keranjang tabel yang membatasi akses pengguna atau aplikasi ke tabel yang merupakan bagian dari namespace tertentu. *Nilai contoh:* `"s3tables:namespace":"hr" `  Penting untuk dicatat bahwa jika Anda menggunakan kunci `s3tables:namespace` kondisi untuk mengontrol akses, maka perubahan dalam ruang nama dapat memengaruhi kebijakan ini.  | String | 
|  s3tables:SSEAlgorithm |  Memfilter akses oleh algoritma enkripsi sisi server yang digunakan untuk mengenkripsi tabel.  Anda dapat menggunakan kunci `s3tables:SSEAlgorithm` kondisi untuk menulis kebijakan IAM, tabel, atau keranjang tabel yang membatasi akses pengguna atau aplikasi ke tabel yang dienkripsi dengan jenis enkripsi tertentu. *Nilai contoh:* `"s3tables:SSEAlgorithm":"aws:kms" `  Penting untuk dicatat bahwa jika Anda menggunakan kunci `s3tables:SSEAlgorithm` kondisi untuk mengontrol akses, maka perubahan enkripsi dapat memengaruhi kebijakan ini.  | String | 
|  s3tables:KMSKeyArn |  Memfilter akses dengan AWS KMS kunci ARN untuk kunci yang digunakan untuk mengenkripsi tabel Anda dapat menggunakan kunci `s3tables:KMSKeyArn` kondisi untuk menulis kebijakan IAM, tabel, atau keranjang tabel yang membatasi akses pengguna atau aplikasi ke tabel yang dienkripsi dengan kunci KMS tertentu.  Penting untuk dicatat bahwa jika Anda menggunakan tombol `s3tables:KMSKeyArn` kondisi untuk mengontrol akses, maka mengubah kunci KMS Anda dapat memengaruhi kebijakan ini.  | ARN | 

# Kebijakan berbasis identitas IAM untuk Tabel S3
<a name="s3-tables-identity-based-policies"></a>

Secara default, pengguna dan peran tidak memiliki izin untuk membuat atau memodifikasi tabel dan bucket tabel. Mereka juga tidak dapat melakukan tugas dengan menggunakan konsol s3, AWS Command Line Interface (AWS CLI), atau Amazon APIs S3 REST. Untuk membuat dan mengakses bucket dan tabel tabel, administrator AWS Identity and Access Management (IAM) harus memberikan izin yang diperlukan untuk peran IAM atau pengguna. Untuk mempelajari cara membuat kebijakan berbasis identitas IAM menggunakan contoh dokumen kebijakan JSON ini, lihat [Membuat kebijakan IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create-console.html) dalam *Panduan Pengguna IAM*. 

Topik berikut mencakup contoh kebijakan berbasis identitas IAM. Untuk menggunakan contoh kebijakan berikut, ganti *user input placeholders* dengan informasi Anda sendiri.

**Topics**
+ [

## Contoh 1: Izinkan akses untuk membuat dan menggunakan bucket tabel
](#example-1-s3-tables-identity-based-policies)
+ [

## Contoh 2: Izinkan akses untuk membuat dan menggunakan tabel di keranjang tabel
](#example-2-s3-tables-identity-based-policies)

## Contoh 1: Izinkan akses untuk membuat dan menggunakan bucket tabel
<a name="example-1-s3-tables-identity-based-policies"></a>

**.**

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowBucketActions",
            "Effect": "Allow",
            "Action": [
                "s3tables:CreateTableBucket",
                "s3tables:PutTableBucketPolicy",
                "s3tables:GetTableBucketPolicy",
                "s3tables:ListTableBuckets",
                "s3tables:GetTableBucket"
            ],
            "Resource": "arn:aws:s3tables:us-east-1:111122223333:bucket/*"
        }
    ]
}
```

------

## Contoh 2: Izinkan akses untuk membuat dan menggunakan tabel di keranjang tabel
<a name="example-2-s3-tables-identity-based-policies"></a>

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowBucketActions",
            "Effect": "Allow",
            "Action": [
                "s3tables:GetTableBucket",
                "s3tables:ListTables",
                "s3tables:CreateTable",
                "s3tables:PutTableData",
                "s3tables:GetTableData",
                "s3tables:GetTable",
                "s3tables:GetTableMetadataLocation",
                "s3tables:UpdateTableMetadataLocation",
                "s3tables:GetNamespace",
                "s3tables:CreateNamespace",
                "s3tables:ListNamespaces"
            ],
            "Resource": [
                "arn:aws:s3tables:us-east-1:111122223333:bucket/amzn-s3-demo-bucket",
                "arn:aws:s3tables:us-east-1:111122223333:bucket/amzn-s3-demo-bucket/table/*"
            ]
        }
    ]
}
```

------

# Kebijakan berbasis sumber daya untuk Tabel S3
<a name="s3-tables-resource-based-policies"></a>

Tabel S3 menyediakan kebijakan berbasis sumber daya untuk mengelola akses ke bucket dan tabel tabel: kebijakan keranjang tabel dan kebijakan tabel. Anda dapat menggunakan kebijakan bucket tabel untuk memberikan izin akses API di keranjang tabel, namespace, atau tingkat tabel. Izin yang dilampirkan pada bucket tabel dapat diterapkan ke semua tabel di bucket atau tabel tertentu di bucket, tergantung pada definisi kebijakan. Anda dapat menggunakan kebijakan tabel untuk memberikan izin di tingkat tabel. 

Ketika Tabel S3 menerima permintaan, pertama-tama memverifikasi bahwa pemohon memiliki izin yang diperlukan. Ini mengevaluasi semua kebijakan akses yang relevan, kebijakan pengguna, dan kebijakan berbasis sumber daya dalam memutuskan apakah akan mengotorisasi permintaan (kebijakan pengguna IAM, kebijakan peran IAM, kebijakan keranjang tabel, dan kebijakan tabel). Misalnya, jika kebijakan bucket tabel memberikan izin kepada pengguna untuk melakukan semua tindakan pada tabel dalam bucket (termasuk`DeleteTable`), tetapi tabel individual memiliki kebijakan tabel yang menolak `DeleteTable` tindakan untuk semua pengguna, maka pengguna tidak dapat menghapus tabel tersebut.

Topik berikut mencakup contoh kebijakan keranjang tabel dan tabel. Untuk menggunakan kebijakan ini, ganti *user input placeholders* dengan informasi Anda sendiri.

**catatan**  
Setiap kebijakan yang memberikan izin untuk mengubah tabel harus menyertakan izin `GetTableMetadataLocation` untuk mengakses file root tabel. Untuk informasi selengkapnya, lihat [https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3TableBuckets_GetTableMetadataLocation.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3TableBuckets_GetTableMetadataLocation.html).
Setiap kali Anda melakukan aktivitas tulis atau hapus di tabel, sertakan izin `UpdateTableMetadataLocation` dalam kebijakan akses Anda.
Sebaiknya gunakan kebijakan bucket tabel untuk mengatur akses ke tindakan tingkat ember dan kebijakan tabel untuk mengatur akses ke tindakan tingkat tabel. Jika Anda ingin menentukan kumpulan izin yang sama di beberapa tabel, sebaiknya gunakan kebijakan bucket tabel.

**Topics**
+ [

## Contoh 1: Kebijakan bucket tabel memungkinkan akses ke `PutBucketMaintenanceConfiguration` bucket di akun
](#table-bucket-policy-1)
+ [

## Contoh 2: Kebijakan keranjang tabel untuk memungkinkan akses baca (SELECT) ke tabel yang disimpan di `hr` namespace
](#table-bucket-policy-2)
+ [

## Contoh 3: Kebijakan tabel untuk memungkinkan pengguna menghapus tabel
](#table-bucket-policy-3)

## Contoh 1: Kebijakan bucket tabel memungkinkan akses ke `PutBucketMaintenanceConfiguration` bucket di akun
<a name="table-bucket-policy-1"></a>

Contoh kebijakan bucket tabel berikut memungkinkan IAM `data steward` menghapus objek yang tidak direferensikan untuk semua bucket di akun dengan mengizinkan akses ke. `PutBucketMaintenanceConfiguration`

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::111122223333:role/datasteward"
            },
            "Action": [
                "s3tables:PutTableBucketMaintenanceConfiguration"
            ],
            "Resource": "arn:aws:s3tables:us-east-1:111122223333:bucket/*"
        }
    ]
}
```

------

## Contoh 2: Kebijakan keranjang tabel untuk memungkinkan akses baca (SELECT) ke tabel yang disimpan di `hr` namespace
<a name="table-bucket-policy-2"></a>

Berikut contoh kebijakan bucket tabel memungkinkan Jane, pengguna dari Akun AWS ID `123456789012` untuk mengakses tabel yang disimpan di `hr` namespace dalam bucket tabel.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::123456789012:user/Jane"
            },
            "Action": [
                "s3tables:GetTableData",
                "s3tables:GetTableMetadataLocation"
            ],
            "Resource": "arn:aws:s3tables:us-east-1:111122223333:bucket/amzn-s3-demo-table-bucket/table/*",
            "Condition": {
                "StringLike": {
                    "s3tables:namespace": "hr"
                }
            }
        }
    ]
}
```

------

## Contoh 3: Kebijakan tabel untuk memungkinkan pengguna menghapus tabel
<a name="table-bucket-policy-3"></a>

Berikut contoh kebijakan tabel yang memungkinkan peran IAM `data steward` untuk menghapus tabel.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Id": "DeleteTable",
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::111122223333:role/datasteward"
            },
            "Action": [
                "s3tables:DeleteTable",
                "s3tables:UpdateTableMetadataLocation",
                "s3tables:PutTableData",
                "s3tables:GetTableMetadataLocation"
            ],
            "Resource": "arn:aws:s3tables:us-east-1:111122223333:bucket/amzn-s3-demo-bucket/table/tableUUID"
        }
    ]
}
```

------

# AWS kebijakan terkelola untuk Tabel S3
<a name="s3-tables-security-iam-awsmanpol"></a>

Kebijakan AWS terkelola adalah kebijakan mandiri yang dibuat dan dikelola oleh AWS. AWS Kebijakan terkelola dirancang untuk memberikan izin bagi banyak kasus penggunaan umum sehingga Anda dapat mulai menetapkan izin kepada pengguna, grup, dan peran.

Perlu diingat bahwa kebijakan AWS terkelola mungkin tidak memberikan izin hak istimewa paling sedikit untuk kasus penggunaan spesifik Anda karena tersedia untuk digunakan semua pelanggan. AWS Kami menyarankan Anda untuk mengurangi izin lebih lanjut dengan menentukan [kebijakan yang dikelola pelanggan](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#customer-managed-policies) yang khusus untuk kasus penggunaan Anda.

Anda tidak dapat mengubah izin yang ditentukan dalam kebijakan AWS terkelola. Jika AWS memperbarui izin yang ditentukan dalam kebijakan AWS terkelola, pemutakhiran akan memengaruhi semua identitas utama (pengguna, grup, dan peran) yang dilampirkan kebijakan tersebut. AWS kemungkinan besar akan memperbarui kebijakan AWS terkelola saat baru Layanan AWS diluncurkan atau operasi API baru tersedia untuk layanan yang ada.

Untuk informasi selengkapnya, lihat [Kebijakan terkelola AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) dalam *Panduan Pengguna IAM*.

## AWS kebijakan terkelola: AmazonS3TablesFullAccess
<a name="s3-tables-security-iam-awsmanpol-amazons3tablesfullaccess"></a>

Anda dapat melampirkan kebijakan `AmazonS3TablesFullAccess` ke identitas IAM Anda. Kebijakan ini memberikan izin yang memungkinkan akses penuh ke Tabel Amazon S3. Untuk informasi selengkapnya tentang kebijakan ini, lihat [https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonS3TablesFullAccess.html](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonS3TablesFullAccess.html).

## AWS kebijakan terkelola: AmazonS3TablesReadOnlyAccess
<a name="s3-tables-security-iam-awsmanpol-amazons3readonlyaccess"></a>

Anda dapat melampirkan kebijakan `AmazonS3TablesReadOnlyAccess` ke identitas IAM Anda. Kebijakan ini memberikan izin yang memungkinkan akses hanya-baca ke Tabel Amazon S3. Untuk informasi selengkapnya tentang kebijakan ini, lihat [https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonS3TablesReadOnlyAccess.html](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonS3TablesReadOnlyAccess.html).

## AWS kebijakan terkelola: AmazonS3TablesLakeFormationServiceRole
<a name="s3-tables-security-iam-awsmanpol-amazons3tableslakeformationservicerole"></a>

Anda dapat melampirkan kebijakan `AmazonS3TablesLakeFormationServiceRole` ke identitas IAM Anda. Kebijakan ini memberikan izin yang memungkinkan akses peran AWS Lake Formation layanan ke Tabel S3. AWS KMS izin digunakan untuk memungkinkan Lake Formation mengakses tabel terenkripsi. Untuk informasi selengkapnya tentang kebijakan ini, lihat [https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonS3TablesLakeFormationServiceRole.html](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonS3TablesLakeFormationServiceRole.html).

## Tabel Amazon S3 memperbarui kebijakan terkelola AWS
<a name="s3-tables-security-iam-awsmanpol-updates"></a>

Lihat detail tentang pembaruan kebijakan AWS terkelola untuk Tabel Amazon S3 sejak Tabel S3 mulai melacak perubahan ini.


| Ubah | Deskripsi | Date | 
| --- | --- | --- | 
|  Tabel Amazon S3 diperbarui. `AmazonS3TablesFullAccess`  |  Tabel S3 memperbarui kebijakan AWS-managed yang disebut. `AmazonS3TablesFullAccess` Pembaruan ini memberikan izin untuk meneruskan peran ke layanan Replikasi Tabel S3.  |  Desember 2, 2025  | 
|  Tabel Amazon S3 ditambahkan. `AmazonS3TablesLakeFormationServiceRole`  |  Tabel S3 menambahkan kebijakan AWS-managed baru yang disebut. `AmazonS3TablesLakeFormationServiceRole` Kebijakan ini memberikan izin yang memungkinkan akses peran layanan Lake Formation ke Tabel S3.   | 19 Mei 2025 | 
|  Tabel Amazon S3 ditambahkan. `AmazonS3TablesFullAccess`  |  Tabel S3 menambahkan kebijakan AWS-managed baru yang disebut. `AmazonS3TablesFullAccess` Kebijakan ini memberikan izin yang memungkinkan akses penuh ke Tabel Amazon S3.   | Desember 03, 2024 | 
|  Tabel Amazon S3 ditambahkan. `AmazonS3TablesReadOnlyAccess`  |  Tabel S3 menambahkan kebijakan AWS-managed baru yang disebut. `AmazonS3TablesReadOnlyAccess` Kebijakan ini memberikan izin untuk mengizinkan akses hanya-baca ke Tabel Amazon S3.   | Desember 03, 2024 | 
|  Tabel Amazon S3 mulai melacak perubahan.  |  Tabel Amazon S3 mulai melacak perubahan untuk kebijakan yang AWS dikelola.  | Desember 03, 2024 | 

# Memberikan akses dengan semantik SQL
<a name="s3-tables-sql"></a>

Anda dapat memberikan izin ke tabel dengan menggunakan semantik SQL dalam kebijakan bucket tabel dan tabel. Contoh semantik SQL yang dapat Anda gunakan adalah`CREATE`,,, `INSERT``DELETE`, `UPDATE` dan. `ALTER` Tabel berikut menyediakan daftar tindakan API yang terkait dengan semantik SQL yang dapat Anda gunakan untuk memberikan izin kepada pengguna Anda.

Tabel S3 sebagian mendukung izin menggunakan semantik SQL. Misalnya, `CreateTable` API hanya membuat tabel kosong di keranjang tabel. Anda memerlukan izin tambahan seperti,`UpdateTableMetadata`,`PutTableData`, dan `GetTableMetadataLocation` untuk dapat mengatur skema tabel. Izin tambahan ini juga berarti bahwa Anda juga memberikan akses pengguna untuk menyisipkan baris dalam tabel. Jika Anda ingin mengatur akses murni berdasarkan semantik SQL, maka sebaiknya gunakan [AWS Lake Formation](https://docs.aws.amazon.com/lake-formation/latest/dg/what-is-lake-formation.html)atau solusi pihak ketiga yang terintegrasi dengan Tabel S3.


| Aktivitas tingkat meja | Tindakan IAM | 
| --- | --- | 
| SELECT | s3tables:GetTableData, s3tables:GetTableMetadataLocation | 
| CREATE | s3tables:CreateTable, s3tables:UpdateTableMetadataLocation, s3tables:PutTableData, s3tables:GetTableMetadataLocation,  | 
| INSERT | s3tables:UpdateTableMetadataLocation, s3tables:PutTableData, s3tables:GetTableMetadataLocation | 
| UPDATE | s3tables:UpdateTableMetadataLocation, s3tables:PutTableData, s3tables:GetTableMetadataLocation | 
| ALTER,RENAME | s3tables:UpdateTableMetadataLocation, s3tables:PutTableData, s3tables:GetTableMetadataLocation, s3tables:RenameTable  | 
| DELETE,DROP | s3tables:DeleteTable, s3tables:UpdateTableMetadataLocation, s3tables:PutTableData, s3tables:GetTableMetadataLocation  | 

**catatan**  
`s3tables:DeleteTable`Izin diperlukan untuk menghapus tabel dari ember meja. Izin ini memungkinkan Anda untuk menghapus tabel secara permanen dan semua data dan metadata yang terkait. Gunakan izin ini dengan hati-hati karena operasi penghapusan tidak dapat dibatalkan.

# Mengelola akses ke tabel atau database dengan Lake Formation
<a name="grant-permissions-tables"></a>

Jika bucket tabel Anda terintegrasi dengan layanan AWS analitik menggunakan Lake Formation, maka Lake Formation mengelola akses ke tabel Anda dan mengharuskan setiap kepala sekolah IAM (pengguna atau peran) diberi wewenang untuk melakukan tindakan mereka. Lake Formation menggunakan model izinnya sendiri (izin Lake Formation) yang memungkinkan kontrol akses berbutir halus untuk sumber daya Katalog Data. 

Untuk informasi selengkapnya, lihat [Ikhtisar izin Lake Formation](https://docs.aws.amazon.com//lake-formation/latest/dg/lf-permissions-overview.html) di *Panduan AWS Lake Formation Pengembang*.

Ada dua jenis izin utama di AWS Lake Formation: 

1. Izin akses metadata mengontrol kemampuan untuk membuat, membaca, memperbarui, dan menghapus database dan tabel metadata di Katalog Data.

1. Izin akses data yang mendasari mengontrol kemampuan untuk membaca dan menulis data ke lokasi Amazon S3 yang mendasari yang ditunjuk oleh sumber daya Katalog Data.

Lake Formation menggunakan kombinasi model izinnya sendiri dan model izin IAM untuk mengontrol akses ke sumber daya Katalog Data dan data yang mendasarinya:
+ Agar permintaan mengakses sumber daya Katalog Data atau data dasar agar berhasil, permintaan harus lulus pemeriksaan izin oleh IAM dan Lake Formation.
+ Izin IAM mengontrol akses ke Lake Formation dan AWS Glue APIs dan resource, sedangkan izin Lake Formation mengontrol akses ke sumber daya Katalog Data, lokasi Amazon S3, dan data yang mendasarinya.

Izin Lake Formation hanya berlaku di Wilayah di mana mereka diberikan, dan kepala sekolah harus diberi wewenang oleh administrator danau data atau kepala sekolah lain dengan izin yang diperlukan untuk diberikan izin Lake Formation. 

**catatan**  
Jika Anda adalah pengguna yang melakukan integrasi bucket tabel, Anda sudah memiliki izin Lake Formation ke tabel Anda. Jika Anda satu-satunya kepala sekolah yang akan mengakses tabel Anda, Anda dapat melewati langkah ini. Anda hanya perlu memberikan izin Lake Formation di tabel Anda ke prinsipal IAM lainnya. Hal ini memungkinkan prinsipal lain untuk mengakses tabel saat menjalankan query. Untuk informasi selengkapnya, lihat [Memberikan izin Lake Formation di atas meja atau database](#grant-lf-table). 

## Memberikan izin Lake Formation di atas meja atau database
<a name="grant-lf-table"></a>

Anda dapat memberikan izin utama Lake Formation pada tabel atau database dalam ember meja, baik melalui konsol Lake Formation atau. AWS CLI

**catatan**  
Saat Anda memberikan izin Lake Formation pada sumber daya Katalog Data ke akun eksternal atau langsung ke kepala IAM di akun lain, Lake Formation menggunakan layanan AWS Resource Access Manager (AWS RAM) untuk membagikan sumber daya. Jika akun penerima hibah berada di organisasi yang sama dengan akun pemberi hibah, sumber daya bersama segera tersedia untuk penerima hibah. Jika akun penerima hibah tidak berada di organisasi yang sama, AWS RAM kirimkan undangan ke akun penerima hibah untuk menerima atau menolak hibah sumber daya. Kemudian, untuk membuat sumber daya bersama tersedia, administrator data lake di akun penerima hibah harus menggunakan AWS RAM konsol atau AWS CLI untuk menerima undangan. Untuk informasi selengkapnya tentang berbagi data lintas akun, lihat Berbagi [data lintas akun di Lake Formation](https://docs.aws.amazon.com/lake-formation/latest/dg/cross-account-permissions.html) di Panduan *AWS Lake Formation Pengembang*.

------
#### [ Console ]

1. Buka AWS Lake Formation konsol di[https://console.aws.amazon.com/lakeformation/](https://console.aws.amazon.com/lakeformation/), dan masuk sebagai administrator danau data. Untuk informasi selengkapnya tentang cara membuat administrator data lake, lihat [Membuat administrator data lake](https://docs.aws.amazon.com/lake-formation/latest/dg/initial-lf-config.html#create-data-lake-admin) di *Panduan AWS Lake Formation Pengembang*.

1. **Di panel navigasi, pilih **Izin data**, lalu pilih Hibah.** 

1. Pada halaman **Izin Hibah**, di bawah **Prinsipal**, lakukan salah satu hal berikut:
   + Untuk Amazon Athena atau Amazon Redshift, **pilih pengguna dan peran IAM, dan pilih** prinsipal IAM yang Anda gunakan untuk kueri.
   + Untuk Amazon Data Firehose, pilih **pengguna dan peran IAM, lalu pilih peran** layanan yang Anda buat untuk streaming ke tabel.
   + Untuk Cepat, pilih **pengguna dan grup SAFL**, lalu masukkan Nama Sumber Daya Amazon (ARN) pengguna admin Cepat Anda.
   + Untuk akses AWS GlueIceberg REST endpoint, pilih **pengguna dan peran IAM lalu pilih peran** IAM yang Anda buat untuk klien Anda. Untuk informasi selengkapnya, lihat [Buat peran IAM untuk klien Anda](s3-tables-integrating-glue-endpoint.md#glue-endpoint-create-iam-role)

1. Di bawah **LF-tag atau sumber katalog, pilih Sumber daya Katalog** **Data Bernama**.

1. Untuk **Katalog**, pilih subkatalog yang Anda buat saat mengintegrasikan bucket tabel, misalnya,. `account-id:s3tablescatalog/amzn-s3-demo-bucket`

1. Untuk **Database**, pilih namespace bucket tabel S3 yang Anda buat.

1. (Opsional) Untuk **Tabel**, pilih tabel S3 yang Anda buat di bucket tabel Anda. 
**catatan**  
Jika Anda membuat tabel baru di editor kueri Athena, jangan pilih tabel. 

1. Lakukan salah satu tindakan berikut:
   + Jika Anda menentukan tabel di langkah sebelumnya, untuk **izin Tabel**, pilih **Super**.
   + Jika Anda tidak menentukan tabel pada langkah sebelumnya, buka **izin Database**. Untuk berbagi data lintas akun, Anda tidak dapat memilih **Super** untuk memberikan semua izin kepada prinsipal lainnya di database Anda. **Sebagai gantinya, pilih lebih banyak izin berbutir halus, seperti Deskripsikan.**

1. Pilih**Izin**.

------
#### [ CLI ]

1. Pastikan Anda menjalankan AWS CLI perintah berikut sebagai administrator data lake. Untuk informasi selengkapnya, lihat [Membuat administrator data lake](https://docs.aws.amazon.com//lake-formation/latest/dg/initial-lf-config.html#create-data-lake-admin) di *Panduan AWS Lake Formation Pengembang*.

1. Jalankan perintah berikut untuk memberikan izin Lake Formation pada tabel di bucket tabel S3 ke prinsipal IAM untuk mengakses tabel. Untuk menggunakan contoh ini, ganti *`user input placeholders`*dengan informasi Anda sendiri. 

   ```
   aws lakeformation grant-permissions \
   --region us-east-1 \
   --cli-input-json \
   '{
       "Principal": {
           "DataLakePrincipalIdentifier": "user or role ARN, for example, arn:aws:iam::account-id:role/example-role"
       },
       "Resource": {
           "Table": {
               "CatalogId": "account-id:s3tablescatalog/amzn-s3-demo-bucket",
               "DatabaseName": "S3 table bucket namespace, for example, test_namespace",
               "Name": "S3 table bucket table name, for example test_table"
           }
       },
       "Permissions": [
           "ALL"
       ]
   }'
   ```

------