Untuk memastikan keamanan data dalam proyek MaxCompute, pemilik proyek atau pengguna dengan izin otorisasi harus mengelola izin anggota proyek agar tidak terlalu luas maupun terlalu sempit. Topik ini menjelaskan sistem manajemen izin MaxCompute.
Sistem izin
Kategori | Deskripsi |
Principals | MaxCompute mendukung principal berikut:
|
Objek | MaxCompute mendukung kontrol akses detail halus pada objek seperti project, tabel, model, resource, fungsi, dan instance. Anda dapat mengelola izin operasi pengguna secara detail halus berdasarkan solusi otorisasi yang disediakan MaxCompute. Untuk informasi selengkapnya tentang izin pada setiap objek, lihat Izin MaxCompute. |
Kontrol akses | MaxCompute menyediakan solusi otorisasi berikut untuk memenuhi berbagai kebutuhan otorisasi:
|
Otorisasi berbasis role | Untuk memberikan izin operasi yang sama kepada beberapa pengguna, Anda dapat menggunakan otorisasi berbasis role guna menyederhanakan proses tersebut. Untuk informasi selengkapnya tentang operasi otorisasi berbasis role, lihat Otorisasi role tingkat project. |
Otorisasi pengguna | Anda dapat memberikan izin kepada pengguna dengan cara berikut:
Untuk informasi selengkapnya tentang operasi otorisasi pengguna, lihat Kelola izin pengguna menggunakan perintah. |
Dapatkan informasi izin | Lihat informasi izin anggota project untuk memeriksa apakah izin yang diberikan telah berlaku. Untuk informasi selengkapnya tentang cara melihat informasi izin, lihat Kueri informasi izin. |
DataWorks juga memiliki sistem izin sendiri. Jika Anda mengelola proyek MaxCompute menggunakan DataWorks, Anda dapat menggunakan fitur manajemen pengguna dan role DataWorks untuk menetapkan role guna pengelolaan izin. Untuk informasi selengkapnya tentang hubungan antara izin DataWorks dan MaxCompute, lihat Hubungan izin antara MaxCompute dan DataWorks.
Proses autentikasi
Ketika pengguna MaxCompute melakukan operasi pada objek MaxCompute, pengguna tersebut harus diautentikasi. Pemilik resource—yaitu Akun Alibaba Cloud—memiliki tingkat izin tertinggi, berhak melakukan semua operasi, serta memberikan izin manajemen kepada RAM user atau RAM role. Akun Alibaba Cloud dan pengguna dengan izin manajemen kemudian dapat memberikan izin kepada pengguna lain. Proses ini menentukan pengguna mana yang menerima izin, pada objek apa, dan untuk operasi spesifik apa.
Berdasarkan objek dan operasi spesifiknya, proses autentikasi MaxCompute dibagi menjadi autentikasi RAM dan autentikasi layanan MaxCompute. Gambar berikut menunjukkan alur autentikasi untuk berbagai operasi pengguna.
Autentikasi RAM
Ketika pengguna perlu mengaktifkan layanan, membeli resource, atau mengelola kuota, project, atau tenant di Konsol MaxCompute, Alibaba Cloud melakukan autentikasi RAM untuk memverifikasi bahwa pengguna memiliki izin yang diperlukan. Jika pengguna tidak memiliki izin tersebut, operasi tidak dapat dilakukan.
Untuk daftar operasi yang memerlukan autentikasi RAM, lihat Izin RAM.
Untuk informasi selengkapnya tentang cara memberikan kebijakan sistem kepada RAM user atau RAM role, lihat Kelola izin RAM user.
Autentikasi layanan MaxCompute
Autentikasi untuk operasi tingkat project MaxCompute
Izin operasi tingkat project MaxCompute mencakup izin untuk operasi objek tingkat project dan operasi manajemen tingkat project.
Izin operasi objek tingkat project: Termasuk izin untuk melakukan operasi pada project dan objek di dalam project, seperti project (Project), tabel (Table), model (Model), fungsi (Function), dan resource (Resource). Contoh operasi tersebut antara lain CreateTable, CreateModel, CreateInstance, dan SelectTable. Untuk informasi selengkapnya, lihat Daftar izin pada project dan objek di dalam project.
Izin manajemen tingkat project: Termasuk izin untuk mengonfigurasi keamanan project, mengelola izin pengguna dan role tingkat project, mengelola paket, mengontrol izin berbasis label, dan membersihkan izin yang kedaluwarsa. Untuk informasi selengkapnya, lihat Daftar izin manajemen project.
Proses autentikasi untuk operasi tingkat project MaxCompute adalah sebagai berikut:
Autentikasi pengguna. Untuk informasi selengkapnya tentang autentikasi pengguna, lihat Autentikasi pengguna.
Anda dapat login ke Konsol MaxCompute menggunakan Akun Alibaba Cloud, yang bisa berupa akun utama atau RAM user.
Ketika Anda menggunakan tool seperti odpscmd atau JDBC untuk menghubungkan ke MaxCompute, diperlukan ID AccessKey dan Rahasia AccessKey.
Ketika pengguna menghubungkan ke MaxCompute, sistem menentukan apakah akun tersebut merupakan pengguna project saat ini. Pengguna hanya dapat memulai operasi dalam project setelah administrator menambahkan pengguna tersebut ke project dengan menjalankan perintah
add user "xxx".
Pemeriksaan sumber permintaan (pemeriksaan IP): Sistem memeriksa Daftar putih alamat IP. Untuk informasi selengkapnya, lihat Kelola Daftar putih alamat IP.
Pemeriksaan status project: Sistem memeriksa apakah project berada dalam status Normal.
Pemeriksaan izin MaxCompute: Setelah pengguna ditambahkan ke project, pengguna tersebut harus diberikan izin operasi yang diperlukan untuk melakukan operasi dalam cakupan yang diizinkan. Izin ini dapat diberikan menggunakan berbagai solusi otorisasi, seperti kontrol akses berbasis ACL, kontrol akses berbasis kebijakan, kontrol izin unduh, kontrol akses berbasis label, dan mengakses resource lintas project menggunakan paket. Untuk informasi selengkapnya tentang cara mengelola pengguna tingkat project, lihat Kelola izin pengguna menggunakan perintah.
Autentikasi untuk operasi tingkat tenant MaxCompute
Izin operasi tingkat tenant MaxCompute mencakup izin untuk operasi objek tingkat tenant dan operasi manajemen tingkat tenant.
Izin operasi objek tingkat tenant mencakup izin pada objek tingkat tenant seperti kuota dan koneksi jaringan (NetworkLink). Contoh operasi tersebut antara lain `use quota` dan `CreateNetworkLink`. Untuk daftar operasi, lihat Daftar izin pada objek dalam tenant.
Operasi objek tingkat tenant juga memungkinkan satu akun mengelola beberapa objek Project, yang menyederhanakan manajemen izin.
Izin manajemen tingkat tenant digunakan untuk mengelola pengguna dan role tingkat tenant. Ini mencakup menambah atau menghapus pengguna tingkat tenant, membuat atau menghapus role tingkat tenant, melihat daftar pengguna atau role tingkat tenant beserta izinnya, memberikan role tingkat tenant kepada pengguna, mencabut role tingkat tenant dari pengguna, menambahkan role tingkat tenant ke project, dan menghapus role tingkat tenant dari project.
Ketika pengguna perlu melakukan operasi ini, MaxCompute mengautentikasi pengguna untuk memverifikasi bahwa pengguna memiliki izin yang diperlukan. Jika pengguna tidak memiliki izin tersebut, operasi tidak dapat dilakukan.
Alur otorisasi
Alur otorisasi umum dalam MaxCompute adalah sebagai berikut.
Alur 1: Langsung memberikan izin operasi pada objek kepada pengguna
Setelah pemilik project atau pengguna dengan role administrator bawaan menambahkan pengguna target ke project MaxCompute, pengguna dengan izin otorisasi memberikan izin operasi pada objek kepada pengguna target menggunakan solusi kontrol akses berbasis ACL.

Alur 2: Memberikan izin operasi pada objek kepada beberapa pengguna berdasarkan role
Setelah pemilik project atau pengguna dengan role administrator bawaan menambahkan pengguna target dan role ke project MaxCompute, pengguna dengan izin otorisasi memberikan izin operasi pada objek kepada role target menggunakan solusi kontrol akses berbasis ACL, kebijakan, atau kontrol izin unduh. Kemudian, role tersebut ditetapkan ke pengguna target.

Alur 3: Langsung memberikan izin kepada pengguna untuk mengakses data yang sangat sensitif
Setelah pemilik project atau pengguna dengan role administrator bawaan menambahkan pengguna target ke project MaxCompute, pemilik project atau pengguna dengan role Admin dapat menetapkan tingkat akses yang diizinkan untuk pengguna target. Selain itu, ketika pengguna perlu mengakses data yang sangat sensitif tertentu, pemilik project atau pengguna Admin juga dapat memberikan izin kepada pengguna target untuk mengakses data yang sangat sensitif tersebut menggunakan solusi kontrol akses berbasis label.

Alur 4: Memberikan izin kepada beberapa pengguna untuk mengakses data yang sangat sensitif berdasarkan role
Setelah pemilik project atau pengguna dengan role administrator bawaan menambahkan pengguna target ke project MaxCompute, pemilik project atau pengguna dengan role Admin dapat menetapkan tingkat akses yang diizinkan untuk pengguna target. Ketika beberapa pengguna perlu mengakses data yang sangat sensitif yang sama, Anda dapat membuat role target. Pemilik project atau pengguna dengan role Admin dapat memberikan izin kepada role tersebut untuk mengakses data yang sangat sensitif menggunakan solusi kontrol akses berbasis label. Kemudian, role tersebut ditetapkan ke pengguna.

Alur 5: Mengakses resource lintas project dan langsung memberikan izin kepada pengguna di project target untuk mengakses resource dalam paket
Pemilik project tempat resource berada membuat paket dan menambahkan resource tersebut. Kemudian, pemilik tersebut mengizinkan project target menginstal paket tersebut. Pemilik project target menginstal paket dan memberikan izin kepada pengguna menggunakan solusi kontrol akses berbasis ACL atau berbasis label.

Alur 6: Mengakses resource lintas project dan memberikan izin kepada pengguna untuk mengakses resource dalam paket berdasarkan role
Pemilik project tempat resource berada membuat paket dan menambahkan resource tersebut. Kemudian, pemilik tersebut mengizinkan project target menginstal paket tersebut. Pemilik project target menginstal paket, memberikan izin kepada role menggunakan solusi kontrol akses berbasis ACL atau berbasis label, lalu menetapkan role tersebut ke pengguna.

Hubungan izin antara MaxCompute dan DataWorks
Sebelum memahami hubungan izin antara MaxCompute dan DataWorks, Anda harus memahami hubungan antara project MaxCompute dan ruang kerja DataWorks:
Ketika Anda membuat ruang kerja DataWorks dalam Basic Mode, sebuah project MaxCompute dilampirkan.
Ketika Anda membuat ruang kerja DataWorks dalam Standard Mode, sebuah project MaxCompute development (_dev) dan sebuah project MaxCompute production (Prod) dilampirkan.
Anda juga perlu mengatur MaxCompute visitor identity, yang menentukan kebijakan akses tingkat akun untuk project MaxCompute.
Mengelola izin menggunakan sistem izin MaxCompute tidak memengaruhi operasi pengguna di UI DataWorks. DataWorks menyediakan antarmuka visual untuk mengelola izin project MaxCompute. Namun, menetapkan role kepada pengguna di DataWorks dapat memengaruhi izin mereka untuk melakukan operasi pada resource MaxCompute.
Baik DataWorks maupun MaxCompute menggunakan konsep pengguna dan role. Hubungan antara izin mereka adalah sebagai berikut:
Peran dan izin peran
DataWorks menyediakan role MaxCompute prasetel untuk memberikan izin yang diperlukan kepada anggota project pada resource MaxCompute selama pengembangan data. Tabel berikut menjelaskan hubungan antara role MaxCompute dan role DataWorks prasetel.
Pemetaan
Deskripsi izin
Role atau identitas DataWorks
peran MaxCompute
Izin pada data di lingkungan development DataWorks dan project MaxCompute terkait
Izin pada data di lingkungan produksi DataWorks dan project MaxCompute terkait
Deskripsi izin di DataWorks
Administrator Ruang Kerja
Role_Project_Admin
MaxCompute: Role ini memiliki semua izin pada project dan tabel, fungsi, resource, instance, serta job di dalam project, serta memiliki izin
Readpadapackagesdi dalam project.DataWorks: Role ini memiliki izin untuk melakukan operasi pengembangan data dan men-deploy tugas ke lingkungan produksi.
Tidak ada izin secara default. Anda harus meminta izin yang diperlukan di Security Center.
Pengguna dengan role Administrator Ruang Kerja adalah administrator ruang kerja. Administrator memiliki izin untuk mengelola properti dasar, sumber data, konfigurasi mesin komputasi, dan anggota ruang kerja, serta dapat menetapkan role Administrator Ruang Kerja, Development, O&M, Deploy, atau Visitor kepada anggota ruang kerja.
Development
Role_Project_Dev
MaxCompute: Role ini memiliki semua izin pada project dan tabel, fungsi, resource, instance, serta job di dalam project, serta memiliki izin
Readpadapackagesdi dalam project.DataWorks: Role ini memiliki izin untuk melakukan operasi pengembangan data tetapi tidak memiliki izin untuk men-deploy tugas ke lingkungan produksi.
Tidak ada izin secara default. Anda harus meminta izin yang diperlukan di Security Center.
Pengguna dengan role Development memiliki izin untuk membuat workflow, file skrip, resource, user-defined function (UDF), tabel, dan tugas deployment, serta menghapus tabel, tetapi tidak memiliki izin untuk melakukan operasi deployment.
O&M
Role_Project_Pe
Role ini memiliki semua izin pada project dan fungsi, resource, instance, serta job di dalam project, izin Read pada packages di dalam project, serta izin Read dan Describe pada tabel di dalam project.
CatatanRole O&M memiliki izin pada mesin komputasi MaxCompute tetapi tidak memiliki izin untuk menjalankan node di konsol DataWorks.
Tidak ada izin secara default. Anda harus meminta izin yang diperlukan di Security Center.
Role O&M memiliki izin deployment dan O&M online yang diberikan oleh role Administrator Ruang Kerja tetapi tidak memiliki izin untuk melakukan operasi pengembangan data.
Deploy
Role_Project_Deploy
Tidak ada izin secara default.
Tidak ada izin secara default. Anda harus meminta izin yang diperlukan di Security Center.
Role Deploy memiliki izin yang mirip dengan role O&M, kecuali izin O&M online.
Visitor
Role_Project_Guest
Tidak ada izin secara default.
Tidak ada izin secara default. Anda harus meminta izin yang diperlukan di Security Center.
Pengguna dengan role Visitor memiliki izin untuk melihat data tetapi tidak memiliki izin untuk memodifikasi workflow atau kode.
Security Manager
Role_Project_Security
Tidak ada izin secara default.
Tidak ada izin secara default. Anda harus meminta izin yang diperlukan di Security Center.
Role Security Manager hanya dapat digunakan di Data Security Guard dan memiliki izin untuk mengonfigurasi aturan identifikasi data sensitif serta mengaudit risiko data di Data Security Guard.
Data Analyst
Role_Project_Data_Analyst
MaxCompute: Role ini memiliki izin
CreateInstancedanCreateTabledi dalam project.DataWorks: Role ini memiliki izin untuk melihat model di Data Modeling dan izin untuk melihat serta menggunakan fitur di DataAnalysis.
Tidak ada izin secara default. Anda harus meminta izin yang diperlukan di Security Center.
Role ini hanya memiliki izin pada DataAnalysis.
Model Designer
Pole_Project_Erd
Tidak ada izin secara default.
Tidak ada izin secara default. Anda harus meminta izin yang diperlukan di Security Center.
Role ini memiliki izin untuk melihat model di Data Modeling dan memodifikasi konfigurasi parameter di Perencanaan Gudang Data, Data Standard, Dimensional Modeling, dan Metrik Data. Role ini tidak memiliki izin untuk mempublikasikan model.
Data Governance Administrator
Role_Project_Data_Governance
Tidak ada izin secara default.
Tidak ada izin secara default. Anda harus meminta izin yang diperlukan di Security Center.
Role ini hanya memiliki izin pada Data Governance Center. Role ini dapat digunakan untuk melihat dan mengelola isu tata kelola data yang terdeteksi, mengonfigurasi rencana tata kelola data, serta mengaktifkan item pemeriksaan. Role ini tidak memiliki izin pada operasi seperti pengembangan data dan O&M.
Pemilik ruang kerja (Akun Alibaba Cloud)
Project Owner
Identitas ini adalah pemilik project dan memiliki semua izin pada project tersebut.
Izin yang sama seperti di lingkungan development.
Tidak ada.
Tidak ada
Super_Administrator
Role ini adalah super administrator project dan memiliki izin manajemen pada project serta semua izin pada semua jenis resource di dalam project.
Izin yang sama seperti di lingkungan development.
Tidak ada.
Tidak ada
Admin
Ketika Anda membuat project, sistem membuat role Admin untuk project ini dan memberikan role tersebut izin untuk mengakses semua objek di dalam project, mengelola pengguna atau role, serta memberikan izin kepada pengguna atau role. Dibandingkan dengan role Project Owner, role Admin tidak memiliki izin untuk melakukan operasi berikut: menetapkan role Admin kepada pengguna, mengonfigurasi kebijakan keamanan untuk project, memodifikasi model autentikasi untuk project, dan memodifikasi izin role Admin. Role Project Owner dapat menetapkan role Admin kepada pengguna dan mengotorisasi pengguna tersebut untuk mengelola konfigurasi keamanan.
Izin yang sama seperti di lingkungan development.
Tidak ada.
Tidak ada
Role_Project_Scheduler
Tidak ada izin secara default.
MaxCompute: Role ini memiliki semua izin pada project dan tabel, fungsi, resource, instance, serta job di dalam project, serta memiliki izin Read pada packages di dalam project.
DataWorks: Role ini digunakan sebagai identitas untuk menyerahkan tugas ke lingkungan produksi guna penjadwalan.
CatatanJika Anda menetapkan RAM user atau RAM role sebagai default access identity ketika menambahkan project MaxCompute ke ruang kerja di lingkungan produksi sebagai sumber data, RAM user atau RAM role tersebut akan diberikan izin yang sama dengan role Role_Project_Scheduler dari project MaxCompute. Untuk informasi tentang cara menetapkan identitas akses default, lihat bagian Tambahkan sumber data di Tambahkan sumber data MaxCompute baru.
Identitas ini digunakan untuk menjadwalkan dan menjalankan tugas MaxCompute di lingkungan produksi.
Pengguna dan izin pengguna
Di ruang kerja DataWorks, pemilik ruang kerja harus berupa Akun Alibaba Cloud, dan anggota ruang kerja harus berupa RAM user yang termasuk dalam Akun Alibaba Cloud yang sama dengan ruang kerja tersebut. Anda dapat menggunakan fitur Manajemen Ruang Kerja di DataWorks untuk menambahkan pengguna dan menetapkan role kepada mereka.
Di project MaxCompute, Akun Alibaba Cloud dapat menjadi pemilik project atau anggota project. RAM user dari Akun Alibaba Cloud juga dapat menjadi anggota project. Anda dapat menjalankan perintah
add user xxx;untuk menambahkan pengguna. Anda juga dapat menjalankan perintahadd role xxx;dangrant role xxx to user xxx;untuk menambahkan role dan menyambungkannya ke pengguna.
Gambar berikut menunjukkan hubungan antara pengguna dan izin dalam berbagai mode ruang kerja serta identitas pengunjung yang didukung.
CatatanIzin MaxCompute yang sesuai dengan role DataWorks bersifat tetap. Jika pengguna diberikan izin role MaxCompute melalui role DataWorks lalu diberikan izin MaxCompute lain menggunakan command line, izin pengguna tersebut di MaxCompute akan tidak konsisten dengan izin yang ditampilkan di DataWorks.