Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Meningkatkan AWS Glue izin data untuk model AWS Lake Formation
AWS Lake Formation izin mengaktifkan kontrol akses berbutir halus untuk data di danau data Anda. Anda dapat menggunakan model izin Lake Formation untuk mengelola AWS Glue Data Catalog objek dan lokasi data yang ada di Amazon Simple Storage Service (Amazon S3).
Model izin Lake Formation menggunakan izin kasar AWS Identity and Access Management (IAM) untuk akses layanan. API Lake Formation menggunakan Pemfilteran data dan keamanan tingkat sel di Lake Formation fctionality untuk membatasi akses tabel di kolom, baris, dan tingkat sel untuk pengguna dan aplikasinya. Sebagai perbandingan, AWS Glue model memberikan akses data melalui IAMkebijakan berbasis Identitas dan berbasis sumber daya.
Untuk beralih, ikuti langkah-langkah dalam panduan ini.
Untuk informasi selengkapnya, lihat Ikhtisar izin Lake Formation .
Tentang izin default
Untuk menjaga kompatibilitas mundur dengan AWS Glue, secara default, AWS Lake Formation memberikan Super
izin kepada IAMAllowedPrincipals
grup pada semua yang ada AWS Glue Sumber daya Katalog Data, dan memberikan Super
izin pada sumber daya Katalog Data baru jika setelan Use only IAM access control diaktifkan. Hal ini secara efektif menyebabkan akses ke sumber daya Katalog Data dan lokasi Amazon S3 dikendalikan semata-mata oleh AWS Identity and Access Management
(IAM) kebijakan. IAMAllowedPrincipals
Grup ini mencakup IAM pengguna dan peran apa pun yang diizinkan mengakses objek Katalog Data menurut IAM kebijakan Anda. Super
Izin memungkinkan kepala sekolah untuk melakukan setiap operasi Lake Formation yang didukung pada database atau tabel yang diberikan.
Anda dapat mulai menggunakan Lake Formation untuk mengelola akses ke data Anda dengan mendaftarkan lokasi sumber daya Katalog Data yang ada di Lake Formation atau dengan menggunakan mode akses hybrid. Saat mendaftarkan lokasi Amazon S3 dalam mode akses hybrid, Anda dapat mengaktifkan izin Lake Formation dengan memilih prinsipal untuk database dan tabel di bawah lokasi tersebut.
Untuk memudahkan transisi izin data lake dari model Amazon S3 IAM dan izin Lake Formation, sebaiknya gunakan mode akses hybrid untuk Katalog Data. Dengan mode akses hybrid, Anda memiliki jalur tambahan di mana Anda dapat mengaktifkan izin Lake Formation untuk kumpulan pengguna tertentu tanpa mengganggu pengguna atau beban kerja lain yang ada.
Untuk informasi selengkapnya, lihat Mode akses hibrid.
Nonaktifkan pengaturan Katalog Data default untuk memindahkan semua pengguna tabel yang ada ke Lake Formation dalam satu langkah.
Untuk mulai menggunakan izin Lake Formation dengan yang sudah ada AWS Glue Database dan tabel Katalog Data, Anda harus melakukan hal berikut:
-
Tentukan IAM izin pengguna yang ada untuk setiap database dan tabel.
-
Replikasi izin ini di Lake Formation.
-
Untuk setiap lokasi Amazon S3 yang berisi data:
-
Cabut
Super
izin dariIAMAllowedPrincipals
grup pada setiap sumber daya Katalog Data yang mereferensikan lokasi tersebut. -
Daftarkan lokasi dengan Lake Formation.
-
-
Bersihkan kebijakan kontrol akses berbutir halus yang ada. IAM
penting
Untuk menambahkan pengguna baru saat dalam proses transisi Katalog Data Anda, Anda harus menyiapkan butiran AWS Glue izin IAM seperti sebelumnya. Anda juga harus mereplikasi izin tersebut di Lake Formation seperti yang dijelaskan di bagian ini. Jika pengguna baru memiliki IAM kebijakan kasar yang dijelaskan dalam panduan ini, mereka dapat mencantumkan database atau tabel apa pun yang memiliki izin yang Super
diberikan. IAMAllowedPrincipals
Mereka juga dapat melihat metadata untuk sumber daya tersebut.
Ikuti langkah-langkah di bagian ini untuk meningkatkan ke model izin Lake Formation.
Topik
- Langkah 1: Daftar izin pengguna dan peran yang ada
- Langkah 2: Siapkan izin Lake Formation yang setara
- Langkah 3: Berikan IAM izin pengguna untuk menggunakan Lake Formation
- Langkah 4: Alihkan penyimpanan data Anda ke model izin Lake Formation
- Langkah 5: Amankan sumber daya Katalog Data baru
- Langkah 6: Beri pengguna IAM kebijakan baru untuk akses data lake masa depan
- Langkah 7: Bersihkan IAM kebijakan yang ada
Langkah 1: Daftar izin pengguna dan peran yang ada
Untuk mulai menggunakan AWS Lake Formation izin dengan yang sudah ada AWS Glue database dan tabel, Anda harus terlebih dahulu menentukan izin pengguna yang ada.
penting
Sebelum Anda mulai, pastikan Anda telah menyelesaikan tugas diMemulai dengan Lake Formation.
Menggunakan API operasi
Gunakan ListPoliciesGrantingServiceAccessAPIoperasi AWS Identity and Access Management (IAM) untuk menentukan IAM kebijakan yang dilampirkan pada setiap prinsipal (pengguna atau peran). Dari kebijakan yang ditampilkan dalam hasil, Anda dapat menentukan IAM izin yang diberikan kepada prinsipal. Anda harus meminta API untuk setiap kepala sekolah secara terpisah.
AWS CLI Contoh berikut mengembalikan kebijakan yang dilampirkan ke penggunaglue_user1
.
aws iam list-policies-granting-service-access --arn arn:aws:iam::111122223333:user/glue_user1 --service-namespaces glue
Perintah mengembalikan hasil yang mirip dengan berikut ini.
{ "PoliciesGrantingServiceAccess": [ { "ServiceNamespace": "glue", "Policies": [ { "PolicyType": "INLINE", "PolicyName": "GlueUserBasic", "EntityName": "glue_user1", "EntityType": "USER" }, { "PolicyType": "MANAGED", "PolicyArn": "arn:aws:iam::aws:policy/AmazonAthenaFullAccess", "PolicyName": "AmazonAthenaFullAccess" } ] } ], "IsTruncated": false }
Menggunakan AWS Management Console
Anda juga dapat melihat informasi ini di konsol AWS Identity and Access Management (IAM), di tab Access Advisor di halaman Ringkasan pengguna atau peran:
Buka IAM konsol di https://console.aws.amazon.com/iam/
. -
Di panel navigasi, pilih Pengguna atau Peran.
-
Pilih nama dalam daftar untuk membuka halaman Ringkasannya, dan pilih tab Access Advisor.
-
Periksa setiap kebijakan untuk menentukan kombinasi database, tabel, dan tindakan yang setiap pengguna memiliki izin.
Ingatlah untuk memeriksa peran selain pengguna selama proses ini karena pekerjaan pemrosesan data Anda mungkin mengambil peran untuk mengakses data.
Menggunakan AWS CloudTrail
Cara lain untuk menentukan izin yang ada adalah dengan mencari AWS CloudTrail AWS Glue APIpanggilan di mana additionaleventdata
bidang log berisi insufficientLakeFormationPermissions
entri. Entri ini mencantumkan database dan tabel tempat pengguna memerlukan izin Lake Formation untuk mengambil tindakan yang sama.
Ini adalah log akses data, sehingga mereka tidak dijamin untuk menghasilkan daftar lengkap pengguna dan izin mereka. Sebaiknya pilih rentang waktu yang luas untuk menangkap sebagian besar pola akses data pengguna Anda, misalnya, beberapa minggu atau bulan.
Untuk informasi selengkapnya, lihat Melihat CloudTrail Acara dengan Riwayat Acara di Panduan AWS CloudTrail Pengguna.
Selanjutnya, Anda dapat mengatur izin Lake Formation agar sesuai dengan AWS Glue izin. Lihat Langkah 2: Siapkan izin Lake Formation yang setara.
Langkah 2: Siapkan izin Lake Formation yang setara
Menggunakan informasi yang dikumpulkanLangkah 1: Daftar izin pengguna dan peran yang ada, berikan AWS Lake Formation izin untuk mencocokkan AWS Glue izin. Gunakan salah satu metode berikut untuk melakukan hibah:
-
Gunakan konsol Lake Formation atau AWS CLI.
-
Gunakan
GrantPermissions
atauBatchGrantPermissions
API operasi.Lihat Izin APIs.
Untuk informasi selengkapnya, lihat Ikhtisar izin Lake Formation .
Setelah mengatur izin Lake Formation, lanjutkan keLangkah 3: Berikan IAM izin pengguna untuk menggunakan Lake Formation.
Langkah 3: Berikan IAM izin pengguna untuk menggunakan Lake Formation
Untuk menggunakan model AWS Lake Formation izin, kepala sekolah harus memiliki izin AWS Identity and Access Management (IAM) di Lake Formation. APIs
Buat kebijakan berikut IAM dan lampirkan ke setiap pengguna yang membutuhkan akses ke data lake Anda. Sebutkan kebijakan LakeFormationDataAccess
.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "LakeFormationDataAccess", "Effect": "Allow", "Action": [ "lakeformation:GetDataAccess" ], "Resource": "*" } ] }
Selanjutnya, tingkatkan ke Lake Formation mengizinkan satu lokasi data pada satu waktu. Lihat Langkah 4: Alihkan penyimpanan data Anda ke model izin Lake Formation.
Langkah 4: Alihkan penyimpanan data Anda ke model izin Lake Formation
Tingkatkan ke Lake Formation mengizinkan satu lokasi data pada satu waktu. Untuk melakukan itu, ulangi seluruh bagian ini sampai Anda telah mendaftarkan semua jalur Amazon Simple Storage Service (Amazon S3) yang direferensikan oleh Katalog Data Anda.
Topik
Verifikasi izin Lake Formation
Sebelum mendaftarkan lokasi, lakukan langkah verifikasi untuk memastikan bahwa kepala sekolah yang benar memiliki izin Lake Formation yang diperlukan, dan bahwa tidak ada izin Lake Formation yang diberikan kepada kepala sekolah yang seharusnya tidak memilikinya. Menggunakan GetEffectivePermissionsForPath
API operasi Lake Formation, identifikasi sumber daya Katalog Data yang mereferensikan lokasi Amazon S3, bersama dengan prinsipal yang memiliki izin pada sumber daya tersebut.
AWS CLI Contoh berikut menampilkan database dan tabel Katalog Data yang mereferensikan bucket Amazon products
S3.
aws lakeformation get-effective-permissions-for-path --resource-arn arn:aws:s3:::products --profile datalake_admin
Perhatikan profile
opsinya. Kami menyarankan Anda menjalankan perintah sebagai administrator danau data.
Berikut ini adalah kutipan dari hasil yang dikembalikan.
{ "PermissionsWithGrantOption": [ "SELECT" ], "Resource": { "TableWithColumns": { "Name": "inventory_product", "ColumnWildcard": {}, "DatabaseName": "inventory" } }, "Permissions": [ "SELECT" ], "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::111122223333:user/datalake_user1", "DataLakePrincipalType": "IAM_USER" } },...
penting
Jika AWS Glue Katalog Data dienkripsi, hanya GetEffectivePermissionsForPath
mengembalikan database dan tabel yang dibuat atau dimodifikasi setelah ketersediaan umum Lake Formation.
Mengamankan sumber daya Katalog Data yang ada
Selanjutnya, cabut Super
izin dari IAMAllowedPrincipals
setiap tabel dan database yang Anda identifikasi untuk lokasi tersebut.
Awas
Jika Anda memiliki otomatisasi yang membuat database dan tabel di Katalog Data, langkah-langkah berikut dapat menyebabkan pekerjaan otomatisasi dan ekstrak hilir, transformasi, dan load (ETL) gagal. Lanjutkan hanya setelah Anda memodifikasi proses yang ada atau memberikan izin Formasi Danau eksplisit ke kepala sekolah yang diperlukan. Untuk informasi tentang izin Lake Formation, lihatReferensi izin Lake Formation.
Untuk mencabut Super
dari IAMAllowedPrincipals
atas meja
-
Buka AWS Lake Formation konsol di https://console.aws.amazon.com/lakeformation/
. Masuk sebagai administrator danau data. -
Di panel navigasi, pilih Tabel.
-
Pada halaman Tabel, pilih tombol radio di sebelah tabel yang diinginkan.
-
Pada menu Tindakan, pilih Cabut.
-
Di kotak dialog Cabut izin, di daftar IAMpengguna dan peran, gulir ke bawah ke judul Grup, lalu pilih. IAMAllowedPrincipals
-
Di bawah izin Tabel, pastikan Super dipilih, lalu pilih Batalkan.
Untuk mencabut Super
dari IAMAllowedPrincipals
database
-
Buka AWS Lake Formation konsol di https://console.aws.amazon.com/lakeformation/
. Masuk sebagai administrator danau data. -
Di panel navigasi, pilih Basis Data.
-
Pada halaman Database, pilih tombol radio di sebelah database yang diinginkan.
-
Di menu Tindakan, pilih Edit.
-
Pada halaman Edit database, hapus Gunakan hanya kontrol IAM akses untuk tabel baru dalam database ini, lalu pilih Simpan.
-
Kembali ke halaman Database, pastikan bahwa database masih dipilih, dan kemudian pada menu Tindakan, pilih Cabut.
-
Di kotak dialog Cabut izin, di daftar IAMpengguna dan peran, gulir ke bawah ke judul Grup, lalu pilih. IAMAllowedPrincipals
-
Di bawah Izin database, pastikan Super dipilih, lalu pilih Cabut.
Aktifkan izin Lake Formation untuk lokasi Amazon S3 Anda
Selanjutnya, daftarkan lokasi Amazon S3 dengan Lake Formation. Untuk melakukan ini, Anda dapat menggunakan proses yang dijelaskan dalamMenambahkan lokasi Amazon S3 ke danau data Anda. Atau, gunakan RegisterResource
API operasi seperti yang dijelaskan dalamAPI penjual kredenal.
catatan
Jika lokasi induk terdaftar, Anda tidak perlu mendaftarkan lokasi anak.
Setelah Anda menyelesaikan langkah-langkah ini dan menguji apakah pengguna Anda dapat mengakses data mereka, Anda telah berhasil meningkatkan ke izin Lake Formation. Lanjutkan dengan langkah selanjutnya,Langkah 5: Amankan sumber daya Katalog Data baru.
Langkah 5: Amankan sumber daya Katalog Data baru
Selanjutnya, amankan semua sumber daya Katalog Data baru dengan mengubah pengaturan Katalog Data default. Matikan opsi untuk hanya menggunakan AWS Identity and Access Management (IAM) kontrol akses untuk database dan tabel baru.
Awas
Jika Anda memiliki otomatisasi yang membuat database dan tabel di Katalog Data, langkah-langkah berikut dapat menyebabkan pekerjaan otomatisasi dan ekstrak hilir, transformasi, dan load (ETL) gagal. Lanjutkan hanya setelah Anda memodifikasi proses yang ada atau memberikan izin Formasi Danau eksplisit ke kepala sekolah yang diperlukan. Untuk informasi tentang izin Lake Formation, lihatReferensi izin Lake Formation.
Untuk mengubah pengaturan Katalog Data default
-
Buka AWS Lake Formation konsol di https://console.aws.amazon.com/lakeformation/
. Masuk sebagai pengguna IAM administratif (pengguna Administrator
atau pengguna lain dengan kebijakanAdministratorAccess
AWS terkelola). -
Pada panel navigasi, silakan pilih Pengaturan.
-
Pada halaman Pengaturan katalog data, kosongkan kedua kotak centang, lalu pilih Simpan.
Langkah selanjutnya adalah memberi pengguna akses ke database atau tabel tambahan di masa depan. Lihat Langkah 6: Beri pengguna IAM kebijakan baru untuk akses data lake masa depan.
Langkah 6: Beri pengguna IAM kebijakan baru untuk akses data lake masa depan
Untuk memberi pengguna akses ke database atau tabel Katalog Data tambahan di masa mendatang, Anda harus memberi mereka kebijakan inline berbutir kasar AWS Identity and Access Management (IAM) berikut. Sebutkan kebijakan GlueFullReadAccess
.
penting
Jika Anda melampirkan kebijakan ini ke pengguna sebelum mencabut Super
dari setiap database dan tabel IAMAllowedPrincipals
di Katalog Data Anda, pengguna tersebut dapat melihat semua metadata untuk sumber daya apa pun yang Super
diberikan. IAMAllowedPrincipals
{ "Version": "2012-10-17", "Statement": [ { "Sid": "GlueFullReadAccess", "Effect": "Allow", "Action": [ "lakeformation:GetDataAccess", "glue:GetTable", "glue:GetTables", "glue:SearchTables", "glue:GetDatabase", "glue:GetDatabases", "glue:GetPartitions" ], "Resource": "*" } ] }
catatan
Kebijakan inline yang ditetapkan dalam langkah ini dan langkah sebelumnya berisi IAM izin minimal. Untuk kebijakan yang disarankan untuk administrator data lake, analis data, dan persona lainnya, lihat. Referensi persona dan IAM izin Lake Formation
Selanjutnya, lanjutkan keLangkah 7: Bersihkan IAM kebijakan yang ada.
Langkah 7: Bersihkan IAM kebijakan yang ada
Setelah menyiapkan AWS Lake Formation izin dan membuat serta melampirkan kebijakan kontrol akses AWS Identity and Access Management (IAM) berbutir kasar, selesaikan langkah terakhir berikut:
-
Hapus dari pengguna, grup, dan peran IAM kebijakan kontrol akses berbutir halus lama yang Anda replikasi di Lake Formation.
Dengan melakukan ini, Anda memastikan bahwa prinsipal tersebut tidak lagi memiliki akses langsung ke data di Amazon Simple Storage Service (Amazon S3). Anda kemudian dapat mengelola akses data lake untuk prinsipal tersebut sepenuhnya melalui Lake Formation.