

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

# Federasi katalog ke katalog Gunung Es jarak jauh
<a name="catalog-federation"></a>

Federasi katalog AWS Glue menyediakan akses langsung dan aman ke tabel Iceberg, disimpan di Amazon S3 dan dikatalogkan dalam katalog jarak jauh, menggunakan mesin analitik. AWS Federasi katalog menyinkronkan metadata di seluruh Katalog Data dan katalog jarak jauh saat Anda mengakses tabel jarak jauh. Ini didukung oleh berbagai mesin analitik, termasuk Amazon Redshift, Amazon EMR, Amazon Athena,, mesin pihak ketiga seperti Apache Spark AWS Glue, dan banyak lagi.

Federasi katalog menggunakan AWS Glue Data Catalog untuk berkomunikasi dengan sistem katalog jarak jauh untuk menemukan tabel dan Lake Formation untuk mengotorisasi akses ke data tabel di Amazon S3. Saat Anda menanyakan tabel federasi, Katalog Data menemukan informasi tabel terbaru di katalog jarak jauh pada waktu kueri, mendapatkan lokasi Amazon S3 tabel, skema saat ini, dan informasi partisi. Mesin analitik Anda (Amazon Athena, Amazon Redshift, Amazon EMR) kemudian menggunakan informasi ini untuk mengakses file data Iceberg langsung dari Amazon S3. Lake Formation mengelola akses ke tabel dengan menjual kredenal cakupan ke data tabel yang disimpan di Amazon S3, memungkinkan engine menerapkan izin berbutir halus ke tabel federasi.

## Fitur Federasi Katalog
<a name="catalog-federation-features"></a>

**Diatur menggunakan Lake Formation**  
Katalog Gunung Es Federasi di Katalog Data adalah sumber daya terdaftar Lake Formation, memungkinkan Anda memberikan izin baris, kolom, tingkat sel berbutir halus ke tabel Gunung Es di katalog Gunung Es federasi menggunakan hibah Lake Formation. Katalog Iceberg Federasi dan objek terkait dapat dibagikan dengan aman di seluruh akun. AWS Katalog Federated Iceberg juga bekerja dengan kontrol akses berbasis Lake Formation Tag yang memungkinkan Anda untuk menskalakan tata kelola menggunakan tag.

**Konfigurasi jaringan**  
Federasi katalog mendukung koneksi langsung ke sumber katalog jarak jauh menggunakan konektivitas HTTPS standar. Ini juga mendukung konektivitas melalui Amazon VPC ketika Anda ingin mempertahankan isolasi jaringan dan konektivitas menggunakan dukungan proxy ketika Anda menginginkan komunikasi yang aman melalui firewall organisasi.

**Topics**
+ [Fitur Federasi Katalog](#catalog-federation-features)
+ [Katalog Federasi ke Gunung Snowflake Es](catalog-federation-snowflake.md)
+ [Federasi ke Databricks Unity Catalog](catalog-federation-databricks.md)

# Katalog Federasi ke Gunung Snowflake Es
<a name="catalog-federation-snowflake"></a>

AWS Glue Data Catalog federasi untuk Snowflake menggunakan OAuth2 kredensi dari kepala layanan. Snowflake Anda dapat menggunakan federasi ini untuk terhubung ke Snowflake Horizon dan Snowflake Polaris katalog. Mekanisme otentikasi ini memungkinkan Katalog Data untuk mengakses metadata berbagai objek (seperti katalog, database, dan tabel) dalam katalog Anda, berdasarkan hak istimewa yang terkait dengan prinsipal layanan. Untuk memastikan akses ke objek yang tepat, penting untuk memberikan prinsip layanan Snowflake dengan izin yang diperlukan untuk membaca metadata objek ini.

## Prasyarat
<a name="catalog-federation-snowflake-prerequisites"></a>

Sebelum Anda membuat katalog federasi di Katalog Data yang diatur oleh Lake Formation, pastikan Anda memiliki izin berikut:

Prinsipal IAM Anda (pengguna atau peran) harus memiliki izin berikut:
+ **Izin Lake Formation** —`lakeformation:RegisterResource`, `lakeformation:DescribeResource`
+ **AWS Glue izin** —`glue:CreateConnection`,,`glue:CreateCatalog`, `glue:GetConnection` `glue:PassConnection`
+ **Izin Secrets Manager** —`secretsmanager:CreateSecret`, `secretsmanager:GetSecretValue`
+ **Izin IAM** —`iam:CreateRole`,, `iam:AttachRolePolicy` `iam:PassRole`

Anda harus menjadi administrator danau data Lake Formation atau memiliki `CREATE_CATALOG` izin pada Katalog Data

## Buat Katalog Federasi
<a name="catalog-federation-snowflake-create"></a>

### Menggunakan Konsol
<a name="catalog-federation-snowflake-console"></a>

1. Masuk ke konsol dan buka konsol Lake Formation di [https://console.aws.amazon.com/lakeformation/](https://console.aws.amazon.com/lakeformation/).

1. Pilih AWS wilayah yang disukai di bagian halaman kanan atas.

1. Di panel navigasi kiri, pilih Katalog.

1. Pilih **Create Catalog** untuk membuka **Create Catalog Workflow**.

1. Di **Pilih langkah sumber data**, pilih Snowflake dari opsi yang tersedia.

1. Pada langkah **Atur detail katalog**, Anda memberikan tiga informasi - detail katalog, detail koneksi, dan detail pendaftaran.

1. Dalam wadah **detail katalog**, berikan nama unik ke katalog AWS Glue federasi Anda dan masukkan nama Snowflake katalog yang ada.

1. Dalam kontainer **detail koneksi**, Anda dapat memilih dari koneksi yang ada yang dapat Anda akses atau menyediakan konfigurasi untuk membuat konektor baru.

1. Konfigurasi koneksi baru meliputi:
   + Nama Koneksi — Nama unik dari objek AWS Glue koneksi.
   + URL Instance — URL endpoint dari Snowflake akun Anda yang ada.
   + Otentikasi — Tentukan konfigurasi otentikasi yang AWS Glue digunakan untuk terhubung ke server katalog jarak jauh. AWS Glue mendukung keduanya OAuth2 dan otentikasi Kustom.
   + URL Token — Tentukan URL penyedia identitas katalog jarak jauh.
   + OAuth2 ID Klien - Tentukan ID Klien dari OAuth2 kredensi yang terkait dengan katalog jarak jauh Anda.
   + Rahasia — Simpan dan gunakan rahasia OAuth2 klien menggunakan AWS Secrets Manager atau masukkan nilai rahasia di kotak teks. Saat Anda memasukkan rahasia secara manual di konsol, AWS Glue buat rahasia atas nama Anda.
   + Cakupan URL Token — Tentukan OAuth ruang lingkup untuk otentikasi.
   + Filter Casing Katalog - Pilih apakah akan membawa objek huruf kecil atau huruf besar dari katalog jarak jauh Anda ke Katalog Data.

1. Buat peran IAM yang dapat digunakan oleh kepala layanan Lake Formation untuk mengakses rahasia di AWS Glue dan lokasi Amazon AWS Secrets Manager S3 dari tabel Iceberg jarak jauh. Pilih peran IAM di dropdown pendaftaran. Lihat langkah 2 dan 3 di bagian CLI berikut untuk detail kebijakan IAM.

1. Pilih Uji Koneksi untuk menguji apakah properti koneksi dan akses peran IAM dikonfigurasi dengan benar.

1. Pilih **Berikutnya** untuk meninjau pengaturan Anda.

1. Pilih **Buat Katalog** di halaman ulasan.

### Menggunakan CLI
<a name="snowflake-federation-cli"></a>

1. <a name="snowflake-step-1"></a>**Buat AWS Secrets Manager rahasia**

    AWS Glue Konektor mendukung dua jenis otentikasi - **OAuth2**dan **Custom**. Saat menggunakan OAuth2 opsi, gunakan AWS Secrets Manager untuk menyimpan rahasia klien dari kepala Snowflake layanan. Anda nantinya akan menggunakan rahasia ini saat membuat AWS Glue Koneksi. Untuk otentikasi kustom, gunakan AWS Secrets Manager untuk menyimpan dan mengambil token akses.

   Dalam contoh berikut, ganti`your-snowflake-secret`,`client_secret`, `region` dengan informasi Anda sendiri.

   ```
   aws secretsmanager create-secret \
   --name your-snowflake-secret \
   --description "Snowflake secret" \
   --secret-string '{
   "USER_MANAGED_CLIENT_APPLICATION_CLIENT_SECRET": "client_secret"
   }' \
   --region region
   ```
**catatan**  
`USER_MANAGED_CLIENT_APPLICATION_CLIENT_SECRET`adalah kata kunci yang dicadangkan yang AWS Glue digunakan untuk merujuk ke nilai rahasia klien dalam rahasia. Gunakan kata kunci yang sama saat Anda membuat rahasia di konsol Lake Formation juga.

1. <a name="snowflake-step-2"></a>**Buat peran IAM yang memberikan akses objek AWS Glue koneksi ke rahasia yang dibuat pada langkah sebelumnya**

   Objek AWS Glue koneksi memerlukan akses ke AWS Secrets Manager rahasia saat Anda gunakan AWS Secrets Manager untuk menyimpan, mengambil, dan menyegarkan token OAuth rahasia Anda. Objek AWS Glue koneksi juga memerlukan akses untuk membuat, mendeskripsikan, dan menggunakan antarmuka jaringan Amazon VPC saat Anda menggunakan titik akhir VPC Amazon untuk membatasi konektivitas ke akun Anda. Snowflake

   Buat kebijakan IAM dan lampirkan ke peran IAM. Tambahkan prinsip AWS Glue layanan ke kebijakan kepercayaan.

   Dalam contoh berikut, ganti`your-secrets-manager-ARN`,`your-vpc-id`, dan `your-subnet-id1` dengan informasi Anda sendiri.  
**Example Kebijakan IAM**  

   ```
   {
       "Version": "2012-10-17",		 	 	 
       "Statement": [{
               "Effect": "Allow",
               "Action": [
                   "secretsmanager:GetSecretValue",
                   "secretsmanager:DescribeSecret",
                   "secretsmanager:PutSecretValue"
               ],
               "Resource": [
                   "your-secrets-manager-ARN"
               ]
           },
           {
               "Effect": "Allow",
               "Action": [
                   "ec2:CreateNetworkInterface",
                   "ec2:DeleteNetworkInterface",
                   "ec2:DescribeNetworkInterfaces"
               ],
               "Resource": "*",
               "Condition": {
                   "ArnEquals": {
                       "ec2:Vpc": "arn:aws:ec2:region:account-id:vpc/your-vpc-id",
                       "ec2:Subnet": ["arn:aws:ec2:region:account-id:subnet/your-subnet-id1"]
                   }
               }
           }
       ]
   }
   ```  
**Example Kebijakan Kepercayaan**  

   ```
   {
       "Version": "2012-10-17",		 	 	 
       "Statement": [{
           "Effect": "Allow",
           "Principal": {
               "Service": "glue.amazonaws.com"
           },
           "Action": "sts:AssumeRole"
       }]
   }
   ```

1. <a name="snowflake-step-3"></a>**Buat kebijakan IAM yang memberikan akses baca Lake Formation ke lokasi Amazon S3 katalog**

   Sebagai pemilik katalog katalog federasi di Katalog Data, Anda menggunakan Lake Formation untuk memberikan akses tabel berbutir kasar, akses berbutir halus - tingkat kolom, tingkat baris, dan tingkat sel - akses, dan akses berbasis tag ke tim data Anda. Lake Formation menggunakan peran IAM yang memberikan akses ke lokasi Amazon S3 yang mendasari tabel Iceberg jarak jauh Anda. Akses ini memungkinkan Lake Formation untuk menjual kredenal akses cakupan ke mesin analitik yang menanyakan tabel jarak jauh.

   Buat kebijakan IAM dan lampirkan ke peran IAM. Tambahkan kepala layanan Lake Formation ke kebijakan kepercayaan peran.

   Dalam contoh berikut, ganti `amzn-s3-demo-bucketN` dan `your-kms-key` dengan informasi Anda sendiri.  
**Example Kebijakan IAM**  

   ```
   {
       "Version": "2012-10-17",		 	 	 
       "Statement": [{
               "Effect": "Allow",
               "Action": [
                   "s3:GetObject"
               ],
               "Resource": [
                   "arn:aws:s3:::amzn-s3-demo-bucket1/*",
                   "arn:aws:s3:::amzn-s3-demo-bucket2/*"
               ]
           },
           {
               "Effect": "Allow",
               "Action": [
                   "s3:ListBucket"
               ],
               "Resource": [
                   "arn:aws:s3:::amzn-s3-demo-bucket1",
                   "arn:aws:s3:::amzn-s3-demo-bucket2"
               ]
           },
           {
               "Effect": "Allow",
               "Action": [
                   "kms:Decrypt",
                   "kms:Encrypt"
               ],
               "Resource": [
                   "your-kms-key"
               ]
           }
       ]
   }
   ```  
**Example Kebijakan Kepercayaan**  

   ```
   {
       "Version": "2012-10-17",		 	 	 
       "Statement": [{
           "Sid": "",
           "Effect": "Allow",
           "Principal": {
               "Service": "lakeformation.amazonaws.com"
           },
           "Action": "sts:AssumeRole"
       }]
   }
   ```
**catatan**  
Saat Anda menggunakan konsol Lake Formation untuk membuat katalog federasi, konsol menggunakan peran IAM tunggal dengan kedua kebijakan yang dilampirkan untuk menyelesaikan penyiapan.

1. <a name="snowflake-step-4"></a>**Buat objek AWS Glue koneksi**

   AWS Glue konektor mendukung OAuth2 dan metode otentikasi kustom. Objek koneksi Katalog Data mendukung `CATALOG_CASING_FILTER` konfigurasi yang memungkinkan Anda membawa objek huruf kecil atau huruf besar dalam katalog jarak jauh Anda ke Katalog Data.

   Contoh berikut menggunakan konfigurasi OAuth2 otentikasi untuk membuat AWS Glue koneksi. Ganti `highlighted sections` dengan informasi Anda.

   ```
   aws glue create-connection \
       --connection-input '{
   "Name": "your-glue-connection-to-snowflake-account",
   "ConnectionType": "SNOWFLAKEICEBERGRESTCATALOG",
   "ConnectionProperties": {
       "INSTANCE_URL": "your-snowflake-account-URL",
       "ROLE_ARN": "your-IAM-role-for-secrets-and-VPC-access",
       "CATALOG_CASING_FILTER": "LOWERCASE_ONLY"
   },
   "AuthenticationConfiguration": {
       "AuthenticationType": "OAUTH2",
       "OAuth2Properties": {
           "OAuth2GrantType": "CLIENT_CREDENTIALS",
           "TokenUrl": "your-internal-or-external-token-server-url",
           "OAuth2ClientApplication": {
               "UserManagedClientApplicationClientId": "our-client-id"
           },
           "TokenUrlParametersMap": {
               "scope": "all-apis"
           }
       },
       "SecretArn": "arn:aws:secretsmanager:your-aws-region:your-aws-account-id:secret:snowflake-secret"
   }
   }'
   ```

1. <a name="snowflake-step-5"></a>**Daftarkan AWS Glue koneksi sebagai sumber daya Lake Formation**

   Menggunakan objek AWS Glue koneksi (dibuat di Langkah 4) dan peran IAM (dibuat pada Langkah 3), Anda sekarang dapat mendaftarkan objek AWS Glue koneksi sebagai sumber daya yang dikelola Lake Formation.

   Ganti `your-glue-connector-arn` dan `your-IAM-role-ARN-having-LF-access` dengan informasi Anda.

   ```
   aws lakeformation register-resource \
       --resource-arn your-glue-connector-arn \
       --role-arn your-IAM-role-ARN-having-LF-access \
       --with-federation \
       --with-privileged-access
   ```

1. <a name="snowflake-step-6"></a>**Buat katalog federasi di Katalog Data**

   Setelah membuat objek AWS Glue koneksi dan mendaftarkannya dengan Lake Formation, Anda dapat membuat katalog federasi di Katalog Data:

   Berikan katalog federasi nama unik di`your-federated-catalog-name`, referensi katalog Snowflake di at`catalog-name-in-Snowflake`, dan masukkan nama koneksi yang dibuat sebelumnya di`your-glue-connection-name`.

   ```
   aws glue create-catalog \
       --name your-federated-catalog-name \
       --catalog-input '{
       "FederatedCatalog": {
           "Identifier": catalog-name-in-Snowflake",
           "ConnectionName": your-glue-connection-name"
       },
       "CreateTableDefaultPermissions": [],
       "CreateDatabaseDefaultPermissions": []
   }'
   ```

## Pertimbangan saat berintegrasi dengan Snowflake
<a name="snowflake-considerations"></a>
+ Saat Anda menghapus sumber daya (seperti database dan tabel)Snowflake, Lake Formation tidak secara otomatis mencabut izin yang diberikan pada sumber daya federasi tersebut. Untuk menghapus izin akses, Anda harus secara eksplisit mencabut izin yang sebelumnya diberikan pada sumber daya federasi menggunakan Lake Formation.
+ Saat Anda memasang katalog jarak jauh dengan `CATALOG_CASING_FILTER='UPPERCASE_ONLY'` konfigurasi, database dan tabel dengan pengidentifikasi huruf besar digabungkan tetapi objek dengan pengidentifikasi huruf kecil tidak.
+ Anda dapat menggunakan kembali AWS Glue koneksi yang sama untuk membuat beberapa katalog federasi. Menghapus katalog tidak akan menghapus koneksi terkait. Untuk menghapus koneksi, gunakan `aws glue delete-connection` perintah AWS CLI dan pastikan semua katalog terkait dihapus terlebih dahulu.
+ Ruang nama bersarang dalam Polaris katalog tidak didukung. Artinya, federasi katalog dapat mengakses Iceberg tabel jarak jauh yang mengikuti `catalog.database.table` notasi 3 bagian.

# Federasi ke Databricks Unity Catalog
<a name="catalog-federation-databricks"></a>

AWS Glue Data Catalog federasi untuk Databricks menggunakan OAuth2 kredensi dari kepala layanan. Databricks Mekanisme otentikasi ini memungkinkan AWS Glue Data Catalog untuk mengakses metadata berbagai objek (seperti katalog, database, dan tabel) diDatabricks Unity Catalog, berdasarkan hak istimewa yang terkait dengan prinsip layanan. Untuk memastikan akses ke objek yang tepat, penting untuk memberikan prinsipal layanan dengan izin yang diperlukan Databricks untuk membaca metadata objek ini.

Selanjutnya, federasi katalog memungkinkan penemuan dan kueri Iceberg tabel di Katalog Unity Databricks Anda. Untuk membaca tabel delta, pastikan Iceberg metadata tersedia untuk tabel ini menggunakan. Uniform Ikuti Databricks tutorial dan dokumentasi untuk membuat prinsip layanan dan hak istimewa terkait di ruang Databricks kerja Anda.

## Prasyarat
<a name="catalog-federation-databricks-prerequisites"></a>

Sebelum Anda membuat katalog federasi di Katalog Data yang diatur oleh Lake Formation, pastikan Anda memiliki izin berikut:

Prinsipal IAM Anda (pengguna atau peran) harus memiliki izin berikut:
+ **Izin Lake Formation** —`lakeformation:RegisterResource`, `lakeformation:DescribeResource`
+ **AWS Glue izin** —`glue:CreateConnection`,,`glue:CreateCatalog`, `glue:GetConnection` `glue:PassConnection`
+ **Izin Secrets Manager** —`secretsmanager:CreateSecret`, `secretsmanager:GetSecretValue`
+ **Izin IAM** —`iam:CreateRole`,, `iam:AttachRolePolicy` `iam:PassRole`

Anda harus menjadi administrator danau data Lake Formation atau memiliki `CREATE_CATALOG` izin pada Katalog Data

## Buat Katalog Federasi
<a name="catalog-federation-databricks-create"></a>

### Menggunakan Konsol
<a name="catalog-federation-databricks-console"></a>

1. Masuk ke konsol dan buka konsol Lake Formation di [https://console.aws.amazon.com/lakeformation/](https://console.aws.amazon.com/lakeformation/).

1. Pilih AWS wilayah yang disukai di bagian halaman kanan atas.

1. Di panel navigasi kiri, pilih Katalog.

1. Pilih **Create Catalog** untuk membuka **Create Catalog Workflow**.

1. Di **Pilih langkah sumber data**, pilih Databricks dari opsi yang tersedia.

1. Pada langkah **Atur detail katalog**, Anda memberikan tiga informasi - detail katalog, detail koneksi, dan detail pendaftaran.

1. Dalam wadah **detail katalog**, berikan nama unik ke katalog AWS Glue federasi Anda dan masukkan nama Databricks katalog yang ada.

1. Dalam kontainer **detail koneksi**, Anda dapat memilih dari koneksi yang ada yang dapat Anda akses atau menyediakan konfigurasi untuk membuat konektor baru.

1. Konfigurasi koneksi baru meliputi:
   + Nama Koneksi — Nama unik dari objek AWS Glue koneksi.
   + URL Workspace — URL endpoint dari ruang kerja Anda yang adaDatabricks.
   + Otentikasi — Tentukan konfigurasi otentikasi yang AWS Glue digunakan untuk terhubung ke server katalog jarak jauh. AWS Glue mendukung keduanya OAuth2 dan otentikasi Kustom.
   + URL Token — Tentukan URL penyedia identitas katalog jarak jauh.
   + OAuth2 ID Klien — Tentukan ID Klien dari OAuth2 kredensi yang terkait dengan katalog jarak jauh Anda.
   + Rahasia — Simpan dan gunakan rahasia OAuth2 klien menggunakan AWS Secrets Manager atau masukkan nilai rahasia di kotak teks. Saat Anda memasukkan rahasia secara manual di konsol, AWS Glue buat rahasia atas nama Anda.
   + Cakupan URL Token — Tentukan OAuth ruang lingkup untuk otentikasi.

1. Buat peran IAM yang dapat digunakan oleh kepala layanan Lake Formation untuk mengakses rahasia di AWS Glue dan lokasi Amazon S3 dari tabel jarak jauh masing-masing. Iceberg Pilih peran IAM di dropdown pendaftaran. Lihat langkah 2 dan 3 di bagian CLI berikut untuk detail kebijakan IAM.

1. Pilih Uji Koneksi untuk menguji apakah properti koneksi dan akses peran IAM dikonfigurasi dengan benar. Fungsionalitas koneksi uji tidak tersedia saat menghubungkan Databricks menggunakan Amazon VPC.

1. Pilih **Berikutnya** untuk meninjau pengaturan Anda.

1. Pilih **Buat Katalog** di halaman ulasan.

### Menggunakan CLI
<a name="catalog-federation-databricks-cli"></a>

1. <a name="databricks-step-1"></a>**Buat AWS Secrets Manager rahasia**

    AWS Glue Konektor mendukung dua jenis otentikasi - **OAuth2**dan **Custom**. Saat menggunakan OAuth2 opsi, gunakan AWS Secrets Manager untuk menyimpan rahasia klien dari kepala Databricks layanan. Anda nantinya akan menggunakan rahasia ini saat membuat AWS Glue Koneksi. Untuk otentikasi kustom, gunakan AWS Secrets Manager untuk menyimpan dan mengambil token akses.

   Dalam contoh berikut, ganti`<databricks-secret>`,`<client_secret>`, `<region>` dengan informasi Anda sendiri.

   ```
   aws secretsmanager create-secret \
   --name <databricks-secret> \
   --description "Databricks secret" \
   --secret-string '{
   "USER_MANAGED_CLIENT_APPLICATION_CLIENT_SECRET": "<client_secret>"
   }' \
   --region <region>
   ```
**catatan**  
`USER_MANAGED_CLIENT_APPLICATION_CLIENT_SECRET`adalah kata kunci yang dicadangkan yang AWS Glue digunakan untuk merujuk ke nilai rahasia klien dalam rahasia. Gunakan kata kunci yang sama saat Anda membuat rahasia di konsol Lake Formation juga. 

1. <a name="databricks-step-2"></a>**Buat peran IAM yang memberikan akses objek AWS Glue koneksi ke rahasia yang dibuat pada langkah sebelumnya**

   Objek AWS Glue koneksi memerlukan akses ke AWS Secrets Manager rahasia saat Anda gunakan AWS Secrets Manager untuk menyimpan, mengambil, dan menyegarkan token OAuth rahasia Anda. Objek AWS Glue koneksi juga memerlukan akses untuk membuat, mendeskripsikan, dan menggunakan antarmuka jaringan Amazon VPC saat Anda menggunakan titik akhir VPC Amazon untuk membatasi konektivitas ke ruang kerja Anda. Databricks

   Buat kebijakan IAM dan lampirkan ke peran IAM. Tambahkan prinsip AWS Glue layanan ke kebijakan kepercayaan.

   Dalam contoh berikut, ganti`<your-secrets-manager-ARN>`,`<your-vpc-id>`, dan `<your-subnet-id1>` dengan informasi Anda sendiri.  
**Example Kebijakan IAM**  

   ```
   {
       "Version": "2012-10-17",		 	 	 
       "Statement": [{
               "Effect": "Allow",
               "Action": [
                   "secretsmanager:GetSecretValue",
                   "secretsmanager:DescribeSecret",
                   "secretsmanager:PutSecretValue"
               ],
               "Resource": [
                   "<your-secrets-manager-ARN>"
               ]
           },
           {
               "Effect": "Allow",
               "Action": [
                   "ec2:CreateNetworkInterface",
                   "ec2:DeleteNetworkInterface",
                   "ec2:DescribeNetworkInterfaces"
               ],
               "Resource": "*",
               "Condition": {
                   "ArnEquals": {
                       "ec2:Vpc": "arn:aws:ec2:region:account-id:vpc/<your-vpc-id>",
                       "ec2:Subnet": ["arn:aws:ec2:region:account-id:subnet/<your-subnet-id1>"]
                   }
               }
           }
       ]
   }
   ```  
**Example Kebijakan Kepercayaan**  

   ```
   {
       "Version": "2012-10-17",		 	 	 
       "Statement": [{
           "Effect": "Allow",
           "Principal": {
               "Service": "glue.amazonaws.com"
           },
           "Action": "sts:AssumeRole"
       }]
   }
   ```

1. <a name="databricks-step-3"></a>**Buat kebijakan IAM yang memberikan akses baca Lake Formation ke lokasi Amazon S3 katalog**

   Sebagai pemilik katalog katalog federasi di Katalog Data, Anda menggunakan Lake Formation untuk memberikan akses tabel berbutir kasar, akses berbutir halus - tingkat kolom, tingkat baris, dan tingkat sel - akses, dan akses berbasis tag ke tim data Anda. Lake Formation menggunakan peran IAM yang memberikan akses ke lokasi Amazon S3 yang mendasari tabel Iceberg jarak jauh Anda. Akses ini memungkinkan Lake Formation untuk menjual kredenal akses cakupan ke mesin analitik yang menanyakan tabel jarak jauh.

   Buat kebijakan IAM dan lampirkan ke peran IAM. Tambahkan kepala layanan Lake Formation ke kebijakan kepercayaan peran IAM.

   Dalam contoh berikut, ganti `<your-s3-bucket-N>` dan `<your-kms-key>` dengan informasi Anda sendiri.  
**Example Kebijakan IAM**  

   ```
   {
       "Version": "2012-10-17",		 	 	 
       "Statement": [{
               "Effect": "Allow",
               "Action": [
                   "s3:GetObject"
               ],
               "Resource": [
                   "arn:aws:s3:::<your-s3-bucket-1>/*",
                   "arn:aws:s3:::<your-s3-bucket-2>/*"
               ]
           },
           {
               "Effect": "Allow",
               "Action": [
                   "s3:ListBucket"
               ],
               "Resource": [
                   "arn:aws:s3:::<your-s3-bucket-1>",
                   "arn:aws:s3:::<your-s3-bucket-2>"
               ]
           },
           {
               "Effect": "Allow",
               "Action": [
                   "kms:Decrypt",
                   "kms:Encrypt"
               ],
               "Resource": [
                   "<your-kms-key>"
               ]
           }
       ]
   }
   ```  
**Example Kebijakan Kepercayaan**  

   ```
   {
       "Version": "2012-10-17",		 	 	 
       "Statement": [{
           "Sid": "",
           "Effect": "Allow",
           "Principal": {
               "Service": "lakeformation.amazonaws.com"
           },
           "Action": "sts:AssumeRole"
       }]
   }
   ```
**catatan**  
Saat Anda menggunakan konsol Lake Formation untuk membuat katalog federasi, konsol menggunakan peran IAM tunggal dengan kedua kebijakan yang dilampirkan untuk menyelesaikan penyiapan.

1. <a name="databricks-step-4"></a>**Buat objek AWS Glue koneksi**

   Data Catalog mendukung ConnectionType`DATABRICKSICEBERGRESTCATALOG`: untuk menghubungkan Data Catalog ke. Databricks AWS Glue Konektor ini mendukung OAuth2 dan metode otentikasi kustom.

   Contoh berikut menggunakan konfigurasi OAuth2 otentikasi untuk membuat AWS Glue koneksi. Ganti `highlighed sections` dengan informasi Anda.

   ```
   aws glue create-connection \
       --connection-input '{
   "Name": "<your-glue-connection-to-databricks-unity-account>",
   "ConnectionType": "DATABRICKSICEBERGRESTCATALOG",
   "ConnectionProperties": {
       "INSTANCE_URL": "<your-databricks-workspace-catalog-URL>",
       "ROLE_ARN": "<your-IAM-role-for-secrets-and-VPC-access>"
   },
   "AuthenticationConfiguration": {
       "AuthenticationType": "OAUTH2",
       "OAuth2Properties": {
           "OAuth2GrantType": "CLIENT_CREDENTIALS",
           "TokenUrl": "<your-internal-or-external-token-server-url>",
           "OAuth2ClientApplication": {
               "UserManagedClientApplicationClientId": "<your-client-id>"
           },
           "TokenUrlParametersMap": {
               "scope": "all-apis"
           }
       },
       "SecretArn": "arn:aws:secretsmanager:<aws-region>:<your-aws-account-id>:secret:<databricks-secret>"
   }
   }'
   ```

1. <a name="databricks-step-5"></a>**Daftarkan AWS Glue koneksi sebagai sumber daya Lake Formation**

   Menggunakan objek AWS Glue koneksi (dibuat di Langkah 4) dan peran IAM (dibuat pada Langkah 3), Anda sekarang dapat mendaftarkan objek AWS Glue koneksi sebagai sumber daya yang dikelola Lake Formation.

   Ganti `<your-glue-connector-arn>` dan `<your-IAM-role-ARN-having-LF-access>` dengan informasi Anda.

   ```
   aws lakeformation register-resource \
       --resource-arn <your-glue-connector-arn> \
       --role-arn <your-IAM-role-ARN-having-LF-access> \
       --with-federation \
       --with-privileged-access
   ```

1. <a name="databricks-step-6"></a>**Buat katalog federasi di Katalog Data**

   Setelah membuat objek AWS Glue koneksi dan mendaftarkannya dengan Lake Formation, Anda dapat membuat katalog federasi di Katalog Data:

   Berikan katalog federasi nama unik di`<your-federated-catalog-name>`, referensi katalog Databricks di at`"<catalog-name-in-Databricks>`, dan masukkan nama koneksi yang dibuat sebelumnya di`"<your-glue-connection-name>`.

   ```
   aws glue create-catalog \
       --name <your-federated-catalog-name> \
       --catalog-input '{
       "FederatedCatalog": {
           "Identifier": "<catalog-name-in-Databricks>",
           "ConnectionName": "<your-glue-connection-name>"
       },
       "CreateTableDefaultPermissions": [],
       "CreateDatabaseDefaultPermissions": []
   }'
   ```

## Pertimbangan saat berintegrasi dengan Databricks
<a name="databricks-considerations"></a>
+ Saat Anda menghapus sumber daya (seperti database dan tabel) diDatabricks, Lake Formation tidak secara otomatis mencabut izin yang diberikan pada sumber daya federasi tersebut. Untuk menghapus izin akses, Anda harus secara eksplisit mencabut izin yang sebelumnya diberikan pada sumber daya federasi menggunakan Lake Formation.
+ Anda dapat menanyakan tabel Iceberg yang disimpan di Amazon S3 menggunakan integrasi ini. Saat menggunakan format tabel atau penyimpanan objek lainnya, Anda dapat menggabungkan metadata dalam katalog jarak jauh ke AWS Glue dan mencantumkan database dan tabelnya tetapi operasi kueri seperti `SELECT ColumnFoo from TableBar` akan gagal selama kueri dengan kesalahan 'Gagal membaca tabel. Apache Iceberg Lokasi penyimpanan objek tidak didukung. '
+ Anda dapat menggunakan kembali AWS Glue koneksi yang sama untuk membuat beberapa katalog federasi. Menghapus katalog tidak akan menghapus objek koneksi terkait. Untuk menghapus objek koneksi, gunakan `aws glue delete-connection` perintah AWS CLI dan pastikan semua katalog terkait dihapus terlebih dahulu.