Untuk memastikan keamanan data dalam proyek MaxCompute, Pemilik Proyek atau pengguna yang berwenang harus mengelola izin anggota sesuai dengan prinsip hak istimewa minimal. Topik ini memberikan ikhtisar sistem izin MaxCompute.
Sistem izin
|
Category |
Description |
|
Principal |
MaxCompute mendukung jenis principal berikut:
|
|
Object |
MaxCompute menyediakan kontrol detail halus terhadap objek seperti project, table, model, resource, function, dan instance. Anda dapat menggunakan metode otorisasi untuk mengelola izin pengguna secara tepat. Untuk daftar lengkap izin untuk setiap objek, lihat Izin MaxCompute. |
|
Access control |
MaxCompute menyediakan metode otorisasi fleksibel berikut untuk memenuhi berbagai kebutuhan:
|
|
Role-based authorization |
Untuk memberikan izin yang sama kepada beberapa pengguna, Anda dapat menggunakan role guna menyederhanakan proses otorisasi. Untuk informasi lebih lanjut tentang operasi otorisasi berbasis role, lihat Otorisasi role tingkat proyek. |
|
User authorization |
Anda dapat memberikan izin kepada pengguna dengan cara berikut:
Untuk informasi lebih lanjut tentang operasi otorisasi pengguna, lihat Kelola izin pengguna menggunakan perintah. |
|
Query permission information |
Lihat izin anggota proyek untuk memverifikasi bahwa izin tersebut telah berlaku. Untuk informasi lebih lanjut tentang cara mengkueri izin, lihat Kueri informasi izin. |
DataWorks memiliki sistem izin sendiri. Jika Anda menggunakan DataWorks untuk mengelola proyek MaxCompute, Anda dapat memanfaatkan fitur manajemen pengguna dan role DataWorks untuk menetapkan role dan mengelola izin. Untuk informasi lebih lanjut tentang hubungan izin antara DataWorks dan MaxCompute, lihat Hubungan izin antara MaxCompute dan DataWorks.
Alur autentikasi
Ketika pengguna melakukan operasi pada objek MaxCompute, MaxCompute mengautentikasi permintaan dan memeriksa izin yang diperlukan. Pemilik resource (Akun Alibaba Cloud utama) memiliki tingkat izin tertinggi, dapat melakukan semua operasi, serta dapat memberikan izin manajemen kepada RAM user atau RAM role. Akun Alibaba Cloud utama dan pengguna dengan izin manajemen dapat memberikan izin kepada pengguna lain, menentukan siapa yang menerima izin, objek mana yang dapat diakses, serta operasi apa yang dapat dilakukan pada objek tersebut.
Bergantung pada objek dan operasi spesifik, proses autentikasi MaxCompute melibatkan autentikasi RAM dan autentikasi layanan MaxCompute. Gambar berikut menunjukkan alur autentikasi untuk berbagai operasi pengguna.
Autentikasi RAM
Ketika pengguna melakukan operasi seperti mengaktifkan layanan, membeli resource, atau mengelola kuota, proyek, atau tenant di Konsol MaxCompute, Alibaba Cloud menggunakan RAM untuk mengautentikasi permintaan dan memverifikasi izin pengguna. Jika autentikasi gagal, operasi akan diblokir.
-
Untuk daftar operasi yang memerlukan autentikasi RAM, lihat Izin RAM.
-
Untuk memberikan kebijakan izin sistem kepada RAM user atau RAM role, lihat Kelola izin RAM user.
Autentikasi layanan MaxCompute
-
Autentikasi operasi tingkat proyek
Operasi tingkat proyek MaxCompute mencakup operasi objek tingkat proyek dan operasi manajemen tingkat proyek.
-
Izin operasi objek tingkat proyek: Izin untuk operasi pada objek dalam proyek, seperti project, table, model, function, resource, dan instance. Contohnya termasuk CreateTable, CreateModel, CreateInstance, dan SelectTable. Untuk informasi lebih lanjut, lihat Daftar izin pada proyek dan objek di dalam proyek.
-
Izin manajemen tingkat proyek: Izin untuk mengonfigurasi keamanan proyek, mengelola izin pengguna dan role proyek, mengelola package, mengontrol akses berbasis label, dan membersihkan izin yang kedaluwarsa. Untuk informasi lebih lanjut, lihat Daftar izin manajemen proyek.
Alur autentikasi untuk operasi tingkat proyek MaxCompute adalah sebagai berikut:
-
Autentikasi pengguna. Untuk informasi lebih lanjut, lihat Autentikasi pengguna.
-
Anda dapat login ke Konsol MaxCompute menggunakan Akun Alibaba Cloud, baik akun utama maupun RAM user.
-
Ketika menghubungkan ke MaxCompute menggunakan tool seperti odpscmd atau JDBC, Anda harus menyediakan ID AccessKey dan AccessKey Secret.
-
Saat pengguna menghubungkan ke MaxCompute, sistem memeriksa apakah pengguna tersebut merupakan anggota proyek saat ini. Pengguna hanya dapat melakukan operasi dalam proyek setelah administrator menjalankan perintah
add user "xxx"untuk menambahkannya ke proyek.
-
-
Pemeriksaan sumber permintaan (pemeriksaan alamat IP): Sistem memeriksa Daftar putih alamat IP. Untuk informasi lebih lanjut, lihat Kelola Daftar putih alamat IP.
-
Pemeriksaan status proyek: Sistem memeriksa apakah proyek berada dalam kondisi normal.
-
Pemeriksaan izin MaxCompute: Setelah pengguna ditambahkan ke proyek, mereka harus diberikan izin yang diperlukan untuk melakukan operasi. Izin ini dapat diberikan melalui berbagai metode otorisasi, termasuk ACL-based access control, policy-based access control, Download permission control, label-based access control, dan cross-project resource access using packages. Untuk informasi tentang cara mengelola pengguna tingkat proyek, lihat Kelola izin pengguna menggunakan perintah.
-
-
Autentikasi operasi tingkat tenant
Izin operasi tingkat tenant MaxCompute mencakup izin operasi objek tingkat tenant dan izin manajemen tingkat tenant.
-
Izin operasi objek tingkat tenant mencakup operasi pada objek tingkat tenant seperti quota dan NetworkLink. Contohnya termasuk
use quotadanCreateNetworkLink. Untuk daftar operasi, lihat Daftar izin pada objek di dalam tenant.Operasi objek tingkat tenant juga memungkinkan satu akun mengelola beberapa objek proyek, yang menyederhanakan manajemen izin.
-
Izin manajemen tingkat tenant digunakan untuk mengelola pengguna dan role di tingkat tenant. Izin ini mencakup menambah atau menghapus pengguna tingkat tenant; membuat atau menghapus role tingkat tenant; melihat daftar pengguna dan role tingkat tenant beserta izin mereka; memberikan role tingkat tenant kepada pengguna; mencabut role tingkat tenant dari pengguna; menambahkan role tingkat tenant ke proyek; dan menghapus role tingkat tenant dari proyek.
Ketika pengguna mencoba melakukan operasi ini, MaxCompute mengautentikasi pengguna dan memverifikasi apakah pengguna memiliki izin yang diperlukan. Jika tidak, operasi akan diblokir.
-
Alur otorisasi
Berikut adalah alur otorisasi umum dalam MaxCompute.
-
Alur 1: Memberikan izin operasi langsung kepada pengguna pada suatu objek
Setelah Pemilik Proyek atau pengguna dengan role manajemen bawaan menambahkan pengguna target ke proyek MaxCompute, pengguna yang berwenang memberikan izin operasi kepada pengguna target pada objek tersebut menggunakan ACL-based access control.

-
Alur 2: Memberikan izin operasi kepada beberapa pengguna pada suatu objek menggunakan role
Setelah Pemilik Proyek atau pengguna dengan role manajemen bawaan menambahkan pengguna target dan role ke proyek MaxCompute, pengguna yang berwenang memberikan izin operasi kepada role target pada objek tersebut menggunakan ACL-based access control, policy-based access control, atau Download permission control. Kemudian, pengguna menetapkan role tersebut kepada pengguna target.

-
Alur 3: Memberikan izin langsung kepada pengguna untuk mengakses data yang sangat sensitif
Setelah Pemilik Proyek atau pengguna dengan role manajemen bawaan menambahkan pengguna target ke proyek MaxCompute, Pemilik Proyek atau pengguna dengan role Admin dapat menetapkan tingkat akses yang diizinkan untuk pengguna target. Jika pengguna perlu mengakses data sensitif tertentu, Anda dapat memberikan akses menggunakan label-based access control.

-
Alur 4: Memberikan izin kepada beberapa pengguna untuk mengakses data yang sangat sensitif menggunakan role
Setelah Pemilik Proyek atau pengguna dengan role manajemen bawaan menambahkan pengguna target ke proyek MaxCompute, Pemilik Proyek atau pengguna dengan role Admin dapat menetapkan tingkat akses yang diizinkan untuk pengguna target. Untuk memungkinkan beberapa pengguna mengakses data sensitif yang sama, Anda dapat membuat role, memberikan akses role tersebut ke data sensitif menggunakan label-based access control, lalu menetapkan role tersebut kepada pengguna.

-
Alur 5: Mengakses resource lintas proyek dan memberikan izin langsung kepada pengguna di proyek target untuk mengakses resource dalam package
Pemilik Proyek dari proyek sumber membuat package, menambahkan resource ke dalamnya, lalu memberikan izin kepada proyek target untuk menginstal package tersebut. Pemilik Proyek dari proyek target menginstal package dan memberikan izin kepada pengguna menggunakan ACL-based access control atau label-based access control.

-
Alur 6: Mengakses resource lintas proyek dan memberikan izin kepada pengguna untuk mengakses resource dalam package menggunakan role
Pemilik Proyek dari proyek sumber membuat package, menambahkan resource ke dalamnya, lalu memberikan izin kepada proyek target untuk menginstal package tersebut. Pemilik Proyek dari proyek target menginstal package, memberikan izin kepada role menggunakan ACL-based access control atau label-based access control, lalu menetapkan role tersebut kepada pengguna.

Hubungan izin antara MaxCompute dan DataWorks
Sebelum memahami hubungan izin antara kedua layanan ini, Anda harus terlebih dahulu memahami hubungan antara proyek MaxCompute dan ruang kerja DataWorks:
-
Saat Anda membuat proyek MaxCompute, jika ruang kerja DataWorks berada dalam Basic Mode, ruang kerja tersebut terikat pada satu proyek MaxCompute.
-
Jika ruang kerja DataWorks berada dalam Standard Mode, ruang kerja tersebut terikat pada proyek pengembangan MaxCompute (_dev) dan proyek produksi MaxCompute (Prod).
Anda juga perlu mengatur MaxCompute Visitor Identity, yang menentukan kebijakan izin tingkat akun untuk proyek MaxCompute.
Menggunakan sistem izin MaxCompute untuk kontrol akses tidak memengaruhi operasi pengguna di UI DataWorks. DataWorks menyediakan cara visual untuk mengelola izin proyek MaxCompute. Namun, menetapkan role kepada pengguna di DataWorks dapat memengaruhi izin mereka pada resource MaxCompute.
Baik DataWorks maupun MaxCompute menggunakan konsep pengguna dan role. Hubungan izin mereka adalah sebagai berikut:
-
Peran dan izin peran
Untuk memberikan anggota proyek izin resource MaxCompute yang mereka butuhkan selama pengembangan data, DataWorks telah menetapkan beberapa role MaxCompute sebelumnya. Tabel berikut menjelaskan hubungan izin antara role MaxCompute dan role yang telah ditetapkan di DataWorks.
Mapping
Permission details
DataWorks role or identity
MaxCompute role
Development environment permissions
Production environment permissions
Description
Workspace Administrator
Role_Project_Admin
Tingkat engine MaxCompute: Semua izin untuk project/table/function/resource/instance/job dalam proyek saat ini, dan izin
readpadapackage.Tingkat DataWorks: Dapat melakukan pengembangan data dan men-deploy tugas ke lingkungan produksi.
Secara default, role ini tidak memiliki izin. Izin memerlukan persetujuan di Security Center.
Pengguna dengan role ini dapat mengelola properti dasar ruang kerja, sumber data, konfigurasi engine komputasi, dan anggota. Mereka juga dapat menetapkan role Workspace Administrator, Development, O&M, Deploy, dan Visitor kepada anggota lain.
Development
Role_Project_Dev
Tingkat engine MaxCompute: semua izin pada project, table, function, resource, instance, dan job dalam proyek saat ini, dan izin
readpadapackage.Tingkat DataWorks: Dapat melakukan pengembangan data tetapi tidak dapat men-deploy tugas ke lingkungan produksi.
Secara default, role ini tidak memiliki izin. Izin memerlukan persetujuan di Security Center.
Pengguna dengan role ini dapat membuat workflow, file skrip, resource, UDF, dan paket penyebaran. Mereka juga dapat membuat dan menghapus tabel tetapi tidak dapat melakukan deployment.
O&M
Role_Project_Pe
Memiliki semua izin pada objek project, function, resource, instance, dan job dalam proyek saat ini, ditambah izin Read pada package dan izin Read/Describe pada tabel.
CatatanMeskipun role ini memiliki izin di tingkat engine MaxCompute, pengguna dengan role O&M tidak dapat langsung menjalankan node dari UI DataWorks.
Secara default, role ini tidak memiliki izin. Izin memerlukan persetujuan di Security Center.
Workspace Administrator memberikan role O&M. Pengguna dengan role ini dapat melakukan deployment dan O&M online, tetapi tidak dapat melakukan pengembangan data.
Deploy
Role_Project_Deploy
Tidak memiliki izin secara default.
Secara default, role ini tidak memiliki izin. Izin memerlukan persetujuan di Security Center.
Role ini mirip dengan role O&M tetapi tidak mencakup izin untuk O&M online.
Visitor
Role_Project_Guest
Tidak memiliki izin secara default.
Secara default, role ini tidak memiliki izin. Izin memerlukan persetujuan di Security Center.
Pengguna dengan role ini hanya memiliki akses baca. Mereka tidak dapat mengedit workflow, kode, atau item lainnya.
Security Manager
Role_Project_Security
Tidak memiliki izin secara default.
Secara default, role ini tidak memiliki izin. Izin memerlukan persetujuan di Security Center.
Security Manager hanya digunakan dalam modul Penjaga Keamanan Data untuk tugas seperti konfigurasi aturan sensitif dan audit risiko data.
Data Analyst
Role_Project_Data_Analyst
Tingkat engine MaxCompute: Memiliki izin
CreateInstancedanCreateTabledalam proyek saat ini.Tingkat DataWorks: Dapat melihat model di Data Modeling dan menggunakan fitur di Data Analysis.
Secara default, role ini tidak memiliki izin. Izin memerlukan persetujuan di Security Center.
Hanya memberikan izin untuk operasi dalam modul Data Analysis.
Model Designer
Role_Project_Erd
Tidak memiliki izin secara default.
Secara default, role ini tidak memiliki izin. Izin memerlukan persetujuan di Security Center.
Pengguna dengan role ini dapat melihat model di Data Modeling dan mengelola perencanaan gudang data, standar data, pemodelan dimensional, dan metrik data. Role ini tidak memberikan izin untuk menerbitkan model.
Data Governance Administrator
Role_Project_Data_Governance
Tidak memiliki izin secara default.
Secara default, role ini tidak memiliki izin. Izin memerlukan persetujuan di Security Center.
Role ini hanya berlaku untuk Data Governance Center. Role ini memungkinkan pengguna melihat isu tata kelola, menentukan rencana tata kelola, dan mengaktifkan item pemeriksaan di ruang kerja yang mereka kelola. Role ini tidak memberikan izin untuk pengembangan data atau O&M.
workspace owner (Akun Alibaba Cloud)
Project Owner
Sebagai pemilik proyek MaxCompute, role ini memiliki semua izin pada proyek.
Memiliki semua izin.
N/A
N/A
Super_Administrator
Sebagai super administrator proyek MaxCompute, role ini memiliki izin administratif dan semua izin pada semua jenis resource di dalamnya.
Memiliki semua izin.
N/A
N/A
Admin
Saat proyek dibuat, role Admin secara otomatis dibuat dengan serangkaian izin tetap. Role ini dapat mengakses semua objek dalam proyek dan mengelola serta mengotorisasi pengguna dan role. Berbeda dengan pemilik proyek, role Admin tidak dapat memberikan izin Admin kepada pengguna lain, mengonfigurasi pengaturan keamanan proyek, atau mengubah model autentikasi proyek. Pemilik proyek dapat menetapkan role Admin kepada pengguna untuk mendelegasikan manajemen keamanan.
Memiliki semua izin.
N/A
N/A
Role_Project_Scheduler
Tidak memiliki izin secara default.
Tingkat engine MaxCompute: Memiliki semua izin pada objek project, table, function, resource, instance, dan job dalam proyek saat ini, ditambah izin read pada package.
Tingkat DataWorks: Digunakan sebagai identitas eksekusi di lingkungan penjadwalan produksi.
CatatanKetika RAM user atau RAM role ditetapkan sebagai identitas akses penjadwalan untuk lingkungan produksi proyek MaxCompute (yaitu, dikonfigurasi sebagai Default Access Identity saat Anda membuat sumber data produksi), DataWorks memetakan pengguna atau role tersebut ke role Role_Project_Scheduler proyek MaxCompute. Untuk informasi lebih lanjut tentang cara mengonfigurasi identitas akses default, lihat Bind a MaxCompute compute engine.
Bertindak sebagai identitas terpadu untuk menjadwalkan dan menjalankan tugas MaxCompute di lingkungan produksi.
-
Pengguna dan izin pengguna
-
Dalam ruang kerja DataWorks, Pemilik Proyek harus berupa Akun Alibaba Cloud, dan anggota proyek hanya dapat berupa RAM user di bawah Akun Alibaba Cloud yang memiliki proyek tersebut. Anda dapat menggunakan Manajemen Ruang Kerja di DataWorks untuk menambahkan pengguna dan menetapkan role.
-
Dalam proyek MaxCompute, Akun Alibaba Cloud dapat berupa Pemilik Proyek atau anggota proyek. Anggota proyek juga dapat berupa RAM user di bawah Akun Alibaba Cloud. Anda dapat menambahkan pengguna dengan menjalankan perintah
add user xxx;. Anda dapat menambahkan role dan menetapkannya kepada pengguna dengan menjalankan perintahadd role xxx;dangrant role xxx to user xxx;.
Gambar berikut menggambarkan hubungan antara pengguna dan izin untuk berbagai mode ruang kerja dan identitas pengunjung yang didukung.
CatatanIzin MaxCompute yang sesuai dengan role DataWorks bersifat tetap. Jika pengguna memperoleh izin melalui role DataWorks lalu diberikan izin MaxCompute tambahan menggunakan perintah, izin aktual pengguna di MaxCompute mungkin berbeda dari yang ditampilkan di DataWorks.
-