Mengelola izin lintas akun menggunakan keduanya AWS Glue dan Lake Formation - AWS Lake Formation

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

Mengelola izin lintas akun menggunakan keduanya AWS Glue dan Lake Formation

Dimungkinkan untuk memberikan akses lintas akun ke sumber daya Katalog Data dan data yang mendasarinya dengan menggunakan salah satu AWS Glue atau AWS Lake Formation.

Masuk AWS Glue, Anda memberikan izin lintas akun dengan membuat atau memperbarui kebijakan sumber daya Katalog Data. Di Lake Formation, Anda memberikan izin lintas akun dengan menggunakan model GRANT/REVOKE izin Lake Formation dan operasinya. Grant Permissions API

Tip

Kami menyarankan agar hanya mengandalkan izin Lake Formation untuk mengamankan data lake Anda.

Anda dapat melihat hibah lintas akun Lake Formation dengan menggunakan konsol Lake Formation atau konsol AWS Resource Access Manager (AWS RAM). Namun, halaman konsol tersebut tidak menampilkan izin lintas akun yang diberikan oleh AWS Glue Kebijakan sumber daya Katalog Data. Demikian pula, Anda dapat melihat hibah lintas akun dalam kebijakan sumber daya Katalog Data menggunakan halaman Pengaturan AWS Glue konsol, tetapi halaman itu tidak menampilkan izin lintas akun yang diberikan menggunakan Lake Formation.

Untuk memastikan bahwa Anda tidak melewatkan hibah apa pun saat melihat dan mengelola izin lintas akun, Lake Formation dan AWS Glue mengharuskan Anda untuk melakukan tindakan berikut untuk menunjukkan bahwa Anda mengetahui dan mengizinkan hibah lintas akun oleh Lake Formation dan AWS Glue.

Saat memberikan izin lintas akun menggunakan AWS Glue Kebijakan sumber daya Katalog Data

Jika akun Anda (akun pemberi atau akun produsen) tidak membuat hibah lintas akun yang digunakan AWS RAM untuk berbagi sumber daya, Anda dapat menyimpan kebijakan sumber daya Katalog Data seperti biasa di AWS Glue. Namun, jika hibah yang melibatkan pembagian AWS RAM sumber daya telah dibuat, Anda harus melakukan salah satu hal berikut untuk memastikan bahwa menyimpan kebijakan sumber daya berhasil:

  • Saat Anda menyimpan kebijakan sumber daya di halaman Pengaturan AWS Glue konsol, konsol mengeluarkan peringatan yang menyatakan bahwa izin dalam kebijakan akan menjadi tambahan dari izin apa pun yang diberikan menggunakan konsol Lake Formation. Anda harus memilih Lanjutkan untuk menyimpan kebijakan.

  • Saat Anda menyimpan kebijakan sumber daya menggunakan glue:PutResourcePolicy API operasi, Anda harus menyetel EnableHybrid bidang ke 'TRUE' (type = string). Contoh kode berikut menunjukkan bagaimana melakukan ini dengan Python.

    import boto3 import json REGION = 'us-east-2' PRODUCER_ACCOUNT_ID = '123456789012' CONSUMER_ACCOUNT_IDs = ['111122223333'] glue = glue_client = boto3.client('glue') policy = { "Version": "2012-10-17", "Statement": [ { "Sid": "Cataloguers", "Effect": "Allow", "Action": [ "glue:*" ], "Principal": { "AWS": CONSUMER_ACCOUNT_IDs }, "Resource": [ f"arn:aws:glue:{REGION}:{PRODUCER_ACCOUNT_ID}:catalog", f"arn:aws:glue:{REGION}:{PRODUCER_ACCOUNT_ID}:database/*", f"arn:aws:glue:{REGION}:{PRODUCER_ACCOUNT_ID}:table/*/*" ] } ] } policy = json.dumps(policy) glue.put_resource_policy(PolicyInJson=policy, EnableHybrid='TRUE')

    Untuk informasi selengkapnya, lihat PutResourcePolicy Tindakan (Python: put_resource_policy) di Panduan Pengembang.AWS Glue

Saat memberikan izin lintas akun menggunakan metode sumber daya bernama Lake Formation

Jika tidak ada kebijakan sumber daya Katalog Data di akun Anda (akun produser), hibah lintas akun Lake Formation yang Anda lakukan melanjutkan seperti biasa. Namun, jika kebijakan sumber daya Katalog Data ada, Anda harus menambahkan pernyataan berikut untuk mengizinkan hibah lintas akun Anda berhasil jika dibuat dengan metode sumber daya bernama. Ganti <region> dengan nama Region yang valid dan <account-id> dengan ID AWS akun Anda (ID akun produsen).

{ "Effect": "Allow", "Action": [ "glue:ShareResource" ], "Principal": {"Service": [ "ram.amazonaws.com" ]}, "Resource": [ "arn:aws:glue:<region>:<account-id>:table/*/*", "arn:aws:glue:<region>:<account-id>:database/*", "arn:aws:glue:<region>:<account-id>:catalog" ] }

Tanpa pernyataan tambahan ini, hibah Lake Formation berhasil, tetapi diblokir AWS RAM, dan akun penerima tidak dapat mengakses sumber daya yang diberikan.

penting

Saat menggunakan metode kontrol akses berbasis tag Lake Formation (LF-TBAC) untuk membuat hibah lintas akun, Anda harus memiliki kebijakan sumber daya Katalog Data dengan setidaknya izin yang ditentukan. Prasyarat

Lihat Juga: