Setelah menambahkan pengguna ke proyek MaxCompute, Anda harus memberikan izin kepada pengguna tersebut. Pengguna hanya dapat melakukan operasi dalam proyek setelah diberikan izin yang diperlukan. MaxCompute memungkinkan pemberian izin baik melalui penugasan peran maupun secara langsung. Topik ini menjelaskan sintaks perintah untuk otorisasi pengguna beserta contohnya.
Berikan izin kepada pengguna dengan menetapkan peran tingkat proyek kepada pengguna
Kami menyarankan agar Anda menetapkan peran kustom tingkat proyek atau peran administrator bawaan kepada pengguna. Setelah peran ditetapkan, pengguna tersebut akan memiliki izin yang sama seperti peran tersebut. Pendekatan ini memudahkan modifikasi atau pencabutan izin untuk beberapa pengguna sekaligus.
Untuk informasi lebih lanjut tentang cara menambahkan pengguna ke proyek MaxCompute, lihat Perencanaan dan manajemen pengguna.
Setelah pengguna dihapus dari proyek, Anda perlu mencabut izin sisa dari pengguna tersebut. Untuk informasi lebih lanjut, lihat Hapus sepenuhnya informasi izin sisa dari pengguna yang dihapus.
Menetapkan peran tingkat proyek kepada pengguna
Setelah Anda menetapkan peran bawaan tingkat proyek atau peran kustom kepada pengguna, pengguna tersebut akan menerima semua izin yang dimiliki oleh peran tersebut.
Sintaks
grant <role_name> to <user_name>;Perhatian
Beberapa pengguna dapat diberikan peran tingkat proyek yang sama, dan satu pengguna dapat diberikan beberapa peran tingkat proyek.
Parameter
Parameter
Wajib
Deskripsi
role_name
Ya
Nama peran yang ingin Anda tetapkan kepada pengguna.
Anda dapat menjalankan perintah
list roles;pada Klien MaxCompute untuk melihat informasi peran.user_name
Ya
Nama pengguna yang ingin Anda tetapkan perannya. Pengguna tersebut telah ditambahkan ke proyek MaxCompute. Nama pengguna dapat dalam salah satu format berikut:
Akun Alibaba Cloud: ALIYUN$<account_id>
Pengguna RAM: RAM$<account_id >:<RAM user ID>
Peran RAM: `RAM$<account_id>:role/<RAM role name>`
Anda dapat menjalankan perintah
list users;pada Klien MaxCompute untuk melihat informasi pengguna.Contoh
Tetapkan peran tingkat proyek Worker kepada akun Alibaba Cloud ALIYUN$5527xxxxxxxx5788, pengguna RAM RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1649, dan peran RAM RAM$5527xxxxxxxx5788:role/ram_role.
-- Masuk ke proyek test_project_a. use test_project_a; -- Tetapkan peran tingkat proyek Worker ke akun Alibaba Cloud ALIYUN$5527xxxxxxxx5788. grant Worker to ALIYUN$5527xxxxxxxx5788; -- Tetapkan peran tingkat proyek Worker ke pengguna RAM RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1649. grant Worker to RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1649; -- Tetapkan peran tingkat proyek Worker ke peran RAM `RAM$5527xxxxxxxx5788:role/ram_role`. grant Worker to `RAM$5527xxxxxxxx5788:role/ram_role`;
Mencabut peran tingkat proyek yang ditetapkan kepada pengguna dari pengguna tersebut
Setelah Anda mencabut peran dari pengguna, pengguna tersebut tidak lagi memiliki izin yang berasal dari peran tersebut.
Sintaks
revoke <role_name> from <user_name>;Parameter
Parameter
Wajib
Deskripsi
role_name
Ya
Nama peran yang ingin Anda cabut dari pengguna.
Anda dapat menjalankan perintah
list roles;pada Klien MaxCompute untuk mendapatkan nama peran.user_name
Ya
Nama pengguna dari siapa Anda ingin mencabut peran tersebut. Nama pengguna dapat dalam salah satu format berikut:
Akun Alibaba Cloud: ALIYUN$<account_id>
Pengguna RAM: RAM$<account_id >:<RAM user ID>
Peran RAM: `RAM$<account_id>:role/<RAM role name>`
Anda dapat menjalankan perintah
list users;pada Klien MaxCompute untuk mendapatkan nama pengguna.Contoh
Cabut peran Worker dari akun Alibaba Cloud ALIYUN$5527xxxxxxxx5788, pengguna RAM
RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1649, dan peran RAM RAM$5527xxxxxxxx5788:role/ram_role.-- Masuk ke proyek test_project_a. use test_project_a; -- Cabut peran tingkat proyek Worker dari akun Alibaba Cloud ALIYUN$5527xxxxxxxx5788. revoke Worker from ALIYUN$5527xxxxxxxx5788; -- Cabut peran tingkat proyek Worker dari pengguna RAM RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1649. revoke Worker from RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1649; -- Cabut peran tingkat proyek Worker dari peran RAM `RAM$5527xxxxxxxx5788:role/ram_role`. revoke Worker from `RAM$5527xxxxxxxx5788:role/ram_role`;
Skenario otorisasi umum
Skenario Otorisasi Pengguna | Metode | Diotorisasi oleh | Otorisasi |
Berikan izin operasi pada objek kepada pengguna dengan menetapkan peran kepada pengguna | Berikan izin kepada peran menggunakan kontrol akses berbasis ACL atau kontrol akses berbasis kebijakan, lalu tetapkan peran tersebut kepada pengguna. | Untuk informasi lebih lanjut, lihat konten kolom Diotorisasi oleh di bagian Daftar izin dalam Izin pada proyek dan objek dalam proyek. | |
Cabut izin operasi pada objek dari pengguna yang ditetapkan peran tertentu | |||
Berikan izin Unduh kepada pengguna dengan menetapkan peran kepada pengguna | Berikan izin kepada peran menggunakan kontrol unduh, lalu tetapkan peran tersebut kepada pengguna. | ||
Cabut izin Unduh yang diberikan dengan menetapkan peran kepada pengguna | |||
Berikan izin untuk mengakses data sangat sensitif kepada pengguna dengan menetapkan peran kepada pengguna | Berikan izin kepada peran menggunakan kontrol akses berbasis label, lalu tetapkan peran tersebut kepada pengguna. | ||
Cabut izin untuk mengakses data sangat sensitif dari pengguna dengan menetapkan peran kepada pengguna |
Berikan izin operasi pada objek kepada pengguna dengan menetapkan peran kepada pengguna
Anda dapat memberikan izin kepada peran menggunakan kontrol akses berbasis ACL atau kontrol akses berbasis kebijakan, lalu menetapkan peran tersebut kepada beberapa pengguna.
Untuk informasi lebih lanjut tentang cara memberikan izin kepada peran, lihat Berikan izin operasi pada objek kepada peran.
Asumsikan bahwa ALIYUN$5527xxxxxxxx5789 adalah pemilik proyek test_project_a. Allen, Alice, dan Tom adalah pengguna RAM yang termasuk dalam ALIYUN$5527xxxxxxxx5789. Anda perlu memberikan izin kepada ketiga pengguna RAM tersebut untuk membuat tabel, model, fungsi, dan instans, serta melihat daftar semua jenis objek dalam proyek. Perintah berikut adalah contohnya.
-- Masuk ke proyek test_project_a.
use test_project_a;
-- Tambahkan pengguna RAM Allen, Alice, dan Tom ke proyek test_project_a.
add user RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1649;
add user RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1650;
add user RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1651;
-- Buat peran bernama Worker.
create role Worker;
-- Berikan peran Worker izin yang diperlukan.
-- Metode 1: Berikan peran Worker izin menggunakan kontrol akses berbasis ACL.
grant CreateTable, CreateFunction, CreateInstance, List on project test_project_a to ROLE Worker;
-- Metode 2: Berikan peran Worker izin menggunakan kontrol akses berbasis kebijakan.
grant CreateTable, CreateFunction, CreateInstance, List
on project test_project_a
to ROLE Worker privilegeproperties("policy" = "true", "allow"="true");
-- Tetapkan peran Worker kepada pengguna RAM.
grant Worker to RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1649;
grant Worker to RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1650;
grant Worker to RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1651;Cabut izin operasi pada objek dari pengguna yang ditetapkan peran tertentu
Anda dapat mencabut izin dari pengguna dengan salah satu cara berikut:
Mencabut izin dari peran
Semua pengguna yang ditetapkan peran tersebut tidak lagi memiliki izin dari peran tersebut.
Mencabut peran yang ditetapkan kepada pengguna dari pengguna tersebut
Hanya pengguna yang dicabut perannya yang tidak lagi memiliki izin dari peran tersebut. Izin pengguna lain yang ditetapkan peran tersebut tidak terpengaruh.
Asumsikan bahwa ALIYUN$5527xxxxxxxx5789 adalah pemilik proyek test_project_a. Allen, Alice, dan Tom adalah pengguna RAM yang termasuk dalam ALIYUN$5527xxxxxxxx5789. Ketiga pengguna RAM tersebut telah diberikan izin untuk membuat tabel, model, fungsi, dan instans, serta melihat daftar semua jenis objek dalam proyek melalui peran Worker. Sekarang Anda perlu mencabut izin operasi objek tersebut. Perintah berikut adalah contohnya.
Metode 1: Cabut izin dari peran Worker.
-- Masuk ke proyek test_project_a. use test_project_a; -- Cabut izin dari peran Worker. Sekarang, Allen, Alice, dan Tom tidak lagi memiliki izin CreateTable, CreateFunction, CreateInstance, dan List. -- Cabut otorisasi ACL. revoke CreateTable, CreateModel, CreateFunction, CreateInstance, List on project test_project_a from ROLE Worker; -- Cabut otorisasi kebijakan. revoke CreateTable, CreateModel, CreateFunction, CreateInstance, List on project test_project_a from ROLE Worker privilegeproperties("policy" = "true", "allow"="true");Metode 2: Cabut peran Worker yang ditetapkan kepada pengguna RAM Allen.
-- Masuk ke proyek test_project_a. use test_project_a; -- Cabut peran Worker yang ditetapkan kepada pengguna RAM Allen. Dalam hal ini, hanya pengguna RAM Allen yang tidak lagi memiliki izin CreateTable, CreateFunction, CreateInstance, dan List pada proyek. revoke Worker from RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1649;
Berikan izin Unduh kepada pengguna dengan menetapkan peran kepada pengguna
Berikan izin Unduh kepada peran menggunakan mekanisme kontrol unduh, lalu tetapkan peran tersebut kepada pengguna.
Untuk informasi lebih lanjut tentang cara memberikan izin Unduh kepada peran, lihat Berikan izin Unduh kepada peran.
Sebagai contoh, akun Alibaba Cloud ALIYUN$5527xxxxxxxx5789 adalah pemilik proyek test_project_a. Pengguna Allen, Alice, dan Tom adalah pengguna RAM yang termasuk dalam akun Alibaba Cloud ALIYUN$5527xxxxxxxx5789. Untuk memberikan izin kepada pengguna RAM Allen, Alice, dan Tom untuk mengunduh data dari tabel tertentu, jalankan perintah berikut:
-- Masuk ke proyek test_project_a menggunakan akun Alibaba Cloud Bob@aliyun.com.
use test_project_a;
-- Tambahkan pengguna RAM Allen, Alice, dan Tom ke proyek test_project_a.
add user RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1649;
add user RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1650;
add user RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1651;
-- Buat peran bernama Worker.
create role Worker;
-- Berikan peran Worker izin yang diperlukan.
grant download on table sale_detail to ROLE Worker;
-- Tetapkan peran Worker kepada pengguna RAM.
grant Worker to RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1649;
grant Worker to RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1650;
grant Worker to RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1651;Cabut izin Unduh yang diberikan dengan menetapkan peran kepada pengguna
Anda dapat mencabut izin dari pengguna dengan salah satu cara berikut:
Mencabut izin dari peran
Semua pengguna yang ditetapkan peran tersebut tidak lagi memiliki izin dari peran tersebut.
Mencabut peran yang ditetapkan kepada pengguna dari pengguna tersebut
Hanya pengguna yang dicabut perannya yang tidak lagi memiliki izin dari peran tersebut. Izin pengguna lain yang ditetapkan peran tersebut tidak terpengaruh.
Sebagai contoh, akun Alibaba Cloud ALIYUN$5527xxxxxxxx5789 adalah pemilik proyek test_project_a. Pengguna Allen, Alice, dan Tom adalah pengguna RAM yang termasuk dalam akun Alibaba Cloud ALIYUN$5527xxxxxxxx5789. Anda telah memberikan izin kepada pengguna RAM untuk mengunduh semua data tabel dengan menetapkan peran Worker kepada pengguna RAM tersebut. Untuk mencabut izin Unduh dari pengguna RAM, Anda dapat menggunakan salah satu metode berikut:
Metode 1: Cabut izin dari peran Worker.
-- Masuk ke proyek test_project_a. use test_project_a; -- Cabut izin dari peran Worker. Dalam hal ini, pengguna RAM Allen, Alice, dan Tom tidak lagi memiliki izin Unduh. revoke Download on table sale_detail from ROLE Worker;Metode 2: Cabut peran Worker yang ditetapkan kepada pengguna RAM Allen.
-- Masuk ke proyek test_project_a. use test_project_a; -- Cabut peran Worker yang ditetapkan kepada pengguna RAM Allen. Dalam hal ini, hanya pengguna RAM Allen yang tidak lagi memiliki izin Unduh. revoke Worker from RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1649;
Berikan izin untuk mengakses data sangat sensitif kepada pengguna dengan menetapkan peran kepada pengguna
Berikan izin kepada peran menggunakan kontrol akses berbasis label atau kontrol akses berbasis kebijakan, lalu tetapkan peran tersebut kepada beberapa pengguna.
Untuk informasi lebih lanjut tentang cara memberikan izin kepada peran, lihat Berikan izin untuk mengakses data sensitivitas tinggi kepada peran.
Sebagai contoh, akun Alibaba Cloud ALIYUN$5527xxxxxxxx5789 adalah pemilik proyek test_project_a. Pengguna Allen, Alice, dan Tom adalah pengguna RAM yang termasuk dalam akun Alibaba Cloud ALIYUN$5527xxxxxxxx5789. Tingkat akses data pengguna RAM Allen, Alice, dan Tom adalah 2. Untuk memberikan izin untuk mengakses data yang tingkat sensitivitasnya adalah 4 di tabel tujuan dalam proyek kepada pengguna RAM tersebut, jalankan perintah berikut:
-- Masuk ke proyek test_project_a.
use test_project_a;
-- Buat peran bernama Worker.
create role Worker;
-- Berikan peran Worker izin yang diperlukan.
grant Label 4 on table <table_name> to ROLE Worker; -- table_name adalah nama tabel tujuan.
-- Tetapkan peran Worker kepada pengguna RAM.
grant Worker to RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1649;
grant Worker to RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1650;
grant Worker to RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1651;Cabut Izin Berbasis Peran Pengguna untuk Mengakses Data dengan Tingkat Sensitivitas Tinggi yang Sama
Anda dapat mencabut izin dari pengguna dengan salah satu cara berikut:
Mencabut izin dari peran
Semua pengguna yang ditetapkan peran tersebut tidak lagi memiliki izin dari peran tersebut.
Mencabut peran yang ditetapkan kepada pengguna dari pengguna tersebut
Hanya pengguna yang dicabut perannya yang tidak lagi memiliki izin dari peran tersebut. Izin pengguna lain yang ditetapkan peran tersebut tidak terpengaruh.
Sebagai contoh, akun Alibaba Cloud ALIYUN$5527xxxxxxxx5789 adalah pemilik proyek test_project_a. Pengguna Allen, Alice, dan Tom adalah pengguna RAM yang termasuk dalam akun Alibaba Cloud ALIYUN$5527xxxxxxxx5789. Anda telah memberikan izin kepada pengguna RAM untuk mengakses data yang tingkat sensitivitasnya adalah 4 di tabel target dalam proyek. Untuk mencabut izin untuk mengakses data sangat sensitif dari pengguna, Anda dapat menggunakan salah satu metode berikut:
Metode 1: Cabut izin dari peran Worker.
-- Masuk ke proyek test_project_a. use test_project_a; -- Cabut izin dari peran Worker. Dalam hal ini, pengguna RAM Allen, Alice, dan Tom hanya dapat mengakses data yang tingkat sensitivitasnya adalah 2. revoke Label on table <table_name> from ROLE Worker; --table_name adalah nama tabel target.Metode 2: Cabut peran Worker yang ditetapkan kepada pengguna RAM Allen.
-- Masuk ke proyek test_project_a. use test_project_a; -- Cabut peran Worker yang ditetapkan kepada pengguna RAM Allen. Dalam hal ini, pengguna RAM Allen hanya dapat mengakses data yang tingkat sensitivitasnya adalah 2 dan pengguna RAM Alice dan Tom masih dapat mengakses data yang tingkat sensitivitasnya adalah 4. revoke Worker from RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1649;
Berikan izin langsung kepada pengguna
MaxCompute memungkinkan Anda memberikan izin langsung kepada pengguna. Tabel berikut menjelaskan skenario otorisasi umum.
Untuk informasi lebih lanjut tentang cara menambahkan pengguna ke proyek MaxCompute, lihat Perencanaan dan manajemen pengguna.
Setelah pengguna dihapus dari proyek, Anda perlu mencabut izin sisa dari pengguna tersebut. Untuk informasi lebih lanjut, lihat Hapus sepenuhnya informasi izin sisa dari pengguna yang dihapus.
Skenario Otorisasi Pengguna | Metode Otorisasi | Diotorisasi oleh | Otorisasi |
Berikan izin operasi pada objek kepada pengguna | Untuk informasi lebih lanjut, lihat konten kolom Diotorisasi oleh di bagian Daftar izin dalam Izin pada proyek dan objek dalam proyek. | ||
Cabut izin operasi pada objek dari pengguna | |||
Berikan izin Unduh kepada pengguna | |||
Cabut izin Unduh dari pengguna | |||
Berikan izin untuk mengakses data sangat sensitif kepada pengguna | |||
Cabut izin untuk mengakses data sangat sensitif dari pengguna |
Berikan izin operasi pada objek kepada pengguna
Anda dapat memberikan izin operasi pengguna pada proyek, tabel, model, sumber daya, fungsi, atau instans menggunakan mekanisme otorisasi ACL.
Berikan izin pada proyek tertentu kepada pengguna
Sintaks
grant Read|Write|List|CreateTable|CreateInstance|CreateFunction|CreateResource|All on project <project_name> to USER <user_name> [privilegeproperties("conditions" = "<conditions>", "expires"="<days>")];Parameter
Parameter
Wajib
Deskripsi
project_name
Ya
Nama proyek. Untuk melihat nama proyek MaxCompute, masuk ke Konsol MaxCompute. Di bilah navigasi atas, pilih wilayah. Lalu, lihat nama proyek MaxCompute di tab Manajemen proyek.
user_name
Ya
Nama pengguna yang ingin Anda tetapkan perannya. Pengguna tersebut telah ditambahkan ke proyek MaxCompute. Nama pengguna dapat dalam salah satu format berikut:
Akun Alibaba Cloud: ALIYUN$<account_id>
Pengguna RAM: RAM$<account_id >:<RAM user ID>
Peran RAM: `RAM$<account_id>:role/<RAM role name>`
Anda dapat menjalankan perintah
list users;pada Klien MaxCompute untuk melihat informasi pengguna.privilegeproperties
conditions
Tidak
Mengontrol izin berdasarkan dimensi seperti sumber permintaan dan metode akses. Formatnya adalah
"<var_name> <Operation> constant" and "<var_name> <Operation> constant" and .... Untuk daftar nilai var_name dan Operation yang didukung, lihat Kondisi.days
Tidak
Durasi berlakunya izin. Satuan: hari. Jika Anda tidak mengonfigurasi parameter ini, izin berlaku selamanya. Jika Anda mengonfigurasi parameter ini, MaxCompute akan menghapus informasi izin setelah durasi yang ditentukan oleh parameter ini berakhir.
Berikan izin pada tabel kepada pengguna
Sintaks
grant Describe|Select|Alter|Update|Drop|ShowHistory|All on table <table_name> [(<column_list>)] to USER <user_name> [privilegeproperties("conditions" = "<conditions>", "expires"="<days>")];Parameter
Parameter
Wajib
Deskripsi
table_name
Ya
Nama tabel. Anda dapat menjalankan perintah
show tables;pada Klien MaxCompute untuk mendapatkan nama tabel atau tampilan.user_name
Ya
Nama pengguna yang ingin Anda tetapkan perannya. Pengguna tersebut telah ditambahkan ke proyek MaxCompute. Nama pengguna dapat dalam salah satu format berikut:
Akun Alibaba Cloud: ALIYUN$<account_id>
Pengguna RAM: RAM$<account_id >:<RAM user ID>
Peran RAM: `RAM$<account_id>:role/<RAM role name>`
Anda dapat menjalankan perintah
list users;pada Klien MaxCompute untuk melihat informasi pengguna.privilegeproperties
conditions
Tidak
Mengontrol izin berdasarkan dimensi seperti sumber permintaan dan metode akses. Formatnya adalah
"<var_name> <Operation> constant" and "<var_name> <Operation> constant" and .... Untuk daftar nilai var_name dan Operation yang didukung, lihat Kondisi.days
Tidak
Durasi berlakunya izin. Satuan: hari. Jika Anda tidak mengonfigurasi parameter ini, izin berlaku selamanya. Jika Anda mengonfigurasi parameter ini, MaxCompute akan menghapus informasi izin setelah durasi yang ditentukan oleh parameter ini berakhir.
Berikan izin operasi pengguna pada model
Sintaks
grant Describe|Execute|Alter|Drop|All on MODEL <model_name> to USER <user_name> [privilegeproperties("conditions" = "<conditions>", "expires"="<days>")];Parameter
model_name: Wajib. Nama model. Anda dapat menjalankan perintah
list models;pada Klien MaxCompute untuk mendapatkan nama model.
Berikan izin pada sumber daya kepada pengguna
Sintaks
grant Read|Write|Delete|All on resource <resource_name> to USER <user_name> [privilegeproperties("conditions" = "<conditions>", "expires"="<days>")];Parameter
Parameter
Wajib
Deskripsi
resource_name
Ya
Nama sumber daya. Anda dapat menjalankan perintah
list resources;pada Klien MaxCompute untuk mendapatkan nama sumber daya.user_name
Ya
Nama pengguna yang ingin Anda tetapkan perannya. Pengguna tersebut telah ditambahkan ke proyek MaxCompute. Nama pengguna dapat dalam salah satu format berikut:
Akun Alibaba Cloud: ALIYUN$<account_id>
Pengguna RAM: RAM$<account_id >:<RAM user ID>
Peran RAM: `RAM$<account_id>:role/<RAM role name>`
Anda dapat menjalankan perintah
list users;pada Klien MaxCompute untuk melihat informasi pengguna.privilegeproperties
conditions
Tidak
Mengontrol izin berdasarkan dimensi seperti sumber permintaan dan metode akses. Formatnya adalah
"<var_name> <Operation> constant" and "<var_name> <Operation> constant" and .... Untuk daftar nilai var_name dan Operation yang didukung, lihat Kondisi.days
Tidak
Durasi berlakunya izin. Satuan: hari. Jika Anda tidak mengonfigurasi parameter ini, izin berlaku selamanya. Jika Anda mengonfigurasi parameter ini, MaxCompute akan menghapus informasi izin setelah durasi yang ditentukan oleh parameter ini berakhir.
Berikan izin pada fungsi kepada pengguna
Sintaks
grant Read|Write|Delete|Execute|All on function <function_name> to USER <user_name> [privilegeproperties("conditions" = "<conditions>", "expires"="<days>")];Parameter
Parameter
Wajib
Deskripsi
function_name
Ya
Nama fungsi. Anda dapat menjalankan perintah
list functions;pada Klien MaxCompute untuk mendapatkan nama fungsi.user_name
Ya
Nama pengguna yang ingin Anda tetapkan perannya. Pengguna tersebut telah ditambahkan ke proyek MaxCompute. Nama pengguna dapat dalam salah satu format berikut:
Akun Alibaba Cloud: ALIYUN$<account_id>
Pengguna RAM: RAM$<account_id >:<RAM user ID>
Peran RAM: `RAM$<account_id>:role/<RAM role name>`
Anda dapat menjalankan perintah
list users;pada Klien MaxCompute untuk melihat informasi pengguna.privilegeproperties
conditions
Tidak
Mengontrol izin berdasarkan dimensi seperti sumber permintaan dan metode akses. Formatnya adalah
"<var_name> <Operation> constant" and "<var_name> <Operation> constant" and .... Untuk daftar nilai var_name dan Operation yang didukung, lihat Kondisi.days
Tidak
Durasi berlakunya izin. Satuan: hari. Jika Anda tidak mengonfigurasi parameter ini, izin berlaku selamanya. Jika Anda mengonfigurasi parameter ini, MaxCompute akan menghapus informasi izin setelah durasi yang ditentukan oleh parameter ini berakhir.
Berikan izin pada instans kepada pengguna
Sintaks
grant Read|Write|All on instance <instance_id> to USER <user_name> [privilegeproperties("conditions" = "<conditions>", "expires"="<days>")];Parameter
Parameter
Wajib
Deskripsi
instance_id
Ya
ID instans. Anda dapat menjalankan perintah
show instances;pada Klien MaxCompute untuk mendapatkan ID instans.user_name
Ya
Nama pengguna yang ingin Anda tetapkan perannya. Pengguna tersebut telah ditambahkan ke proyek MaxCompute. Nama pengguna dapat dalam salah satu format berikut:
Akun Alibaba Cloud: ALIYUN$<account_id>
Pengguna RAM: RAM$<account_id >:<RAM user ID>
Peran RAM: `RAM$<account_id>:role/<RAM role name>`
Anda dapat menjalankan perintah
list users;pada Klien MaxCompute untuk melihat informasi pengguna.privilegeproperties
conditions
Tidak
Mengontrol izin berdasarkan dimensi seperti sumber permintaan dan metode akses. Formatnya adalah
"<var_name> <Operation> constant" and "<var_name> <Operation> constant" and .... Untuk daftar nilai var_name dan Operation yang didukung, lihat Kondisi.days
Tidak
Durasi berlakunya izin. Satuan: hari. Jika Anda tidak mengonfigurasi parameter ini, izin berlaku selamanya. Jika Anda mengonfigurasi parameter ini, MaxCompute akan menghapus informasi izin setelah durasi yang ditentukan oleh parameter ini berakhir.
Contoh
Sebagai contoh, akun Alibaba Cloud ALIYUN$5527xxxxxxxx5789 adalah pemilik proyek test_project_a. Pengguna Allen, Alice, dan Tom adalah pengguna RAM yang termasuk dalam akun Alibaba Cloud ALIYUN$5527xxxxxxxx5789. RAM$5527xxxxxxxx5789:role/ram_role adalah peran RAM yang termasuk dalam akun Alibaba Cloud ALIYUN$5527xxxxxxxx5789. Akun Alibaba Cloud ALIYUN$5527xxxxxxxx5788 perlu ditambahkan ke proyek test_project_a.
Contoh 1: Berikan izin kepada akun Alibaba Cloud Kate@aliyun.com untuk membuat tabel, fungsi, dan instans serta mengkueri daftar semua jenis objek dalam proyek. Perintah contoh:
-- Masuk ke proyek test_project_a menggunakan akun Alibaba Cloud ALIYUN$5527xxxxxxxx5789. use test_project_a; -- Tambahkan akun Alibaba Cloud ALIYUN$5527xxxxxxxx5788 ke proyek test_project_a. add user ALIYUN$5527xxxxxxxx5788; -- Gunakan akun Alibaba Cloud ALIYUN$5527xxxxxxxx5789 untuk memberikan izin yang diperlukan kepada akun Alibaba Cloud ALIYUN$5527xxxxxxxx5788 pada proyek. grant CreateTable, CreateFunction, CreateInstance, List on project test_project_a to user ALIYUN$5527xxxxxxxx5788;Contoh 2: Berikan izin kepada pengguna RAM Allen dan peran RAM BI_Analyst untuk membuat tabel, mengkueri daftar semua jenis objek dalam proyek, serta membaca metadata dan data tabel pada tabel. Perintah contoh:
-- Masuk ke proyek test_project_a. use test_project_a; -- Tambahkan pengguna RAM Allen ke proyek test_project_a. add user RAM$5527xxxxxxxx5789:2763xxxxxxxxxx1649; -- Tambahkan peran RAM BI_Analyst ke proyek test_project_a. add user `RAM$5527xxxxxxxx5789:role/ram_role`; -- Berikan pengguna RAM Allen izin yang diperlukan. grant CreateTable, List on project test_project_a to USER RAM$5527xxxxxxxx5789:2763xxxxxxxxxx1649; grant Describe, Select on table sale_detail to USER RAM$5527xxxxxxxx5789:2763xxxxxxxxxx1649; -- Berikan peran RAM RAM$5527xxxxxxxx5789:role/ram_role izin yang diperlukan. grant CreateTable, List on project test_project_a to USER `RAM$5527xxxxxxxx5789:role/ram_role`; grant Describe, Select on table sale_detail to USER `RAM$5527xxxxxxxx5789:role/ram_role`;Contoh 3: Berikan izin kepada pengguna RAM Alice untuk membaca data dari sumber daya dan memperbarui sumber daya. Perintah contoh:
-- Masuk ke proyek test_project_a. use test_project_a; -- Tambahkan pengguna RAM Alice ke proyek test_project_a. add user RAM$5527xxxxxxxx5789:2763xxxxxxxxxx1650; -- Berikan pengguna RAM Alice izin yang diperlukan pada sumber daya. grant Read, Write on resource udtf.jar to USER RAM$5527xxxxxxxx5789:2763xxxxxxxxxx1650;Contoh 4: Berikan izin kepada pengguna RAM Tom untuk membaca data dari fungsi dan memperbarui fungsi. Perintah contoh:
-- Masuk ke proyek test_project_a. use test_project_a; -- Tambahkan pengguna RAM Tom ke proyek test_project_a. add user RAM$5527xxxxxxxx5789:2763xxxxxxxxxx1651; -- Berikan pengguna RAM Tom izin yang diperlukan pada fungsi. grant Read, Write on function udf_test to USER RAM$5527xxxxxxxx5789:2763xxxxxxxxxx1651;Contoh 5: Berikan semua izin pada instans kepada pengguna RAM Tom. Perintah contoh:
-- Masuk ke proyek test_project_a. use test_project_a; -- Tambahkan pengguna RAM Tom ke proyek test_project_a. add user RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1651; -- Berikan pengguna RAM Tom izin yang diperlukan pada fungsi. grant All on instance 202112300224**** to USER RAM$5527xxxxxxxx5789:2763xxxxxxxxxx1651;
Cabut izin operasi pada objek dari pengguna
Anda dapat mencabut izin operasi pengguna pada proyek, tabel, model, sumber daya, fungsi, atau instans.
Cabut izin pada proyek dari pengguna
Sintaks
revoke Read|Write|List|CreateTable|CreateInstance|CreateFunction|CreateResource|All on project <project_name> from USER <user_name>;Parameter
Parameter
Wajib
Deskripsi
project_name
Ya
Nama proyek. Untuk melihat nama proyek MaxCompute, masuk ke Konsol MaxCompute. Di bilah navigasi atas, pilih wilayah. Lalu, lihat nama proyek MaxCompute di tab Manajemen proyek.
user_name
Ya
Nama pengguna dari siapa Anda ingin mencabut peran tersebut. Pengguna tersebut telah ditambahkan ke proyek MaxCompute. Nama pengguna dapat dalam salah satu format berikut:
Akun Alibaba Cloud: ALIYUN$<account_id>
Pengguna RAM: RAM$<account_id >:<RAM user ID>
Peran RAM: `RAM$<account_id>:role/<RAM role name>`
Anda dapat menjalankan perintah
list users;pada Klien MaxCompute untuk melihat informasi pengguna.privilegeproperties
conditions
Tidak
Mengontrol izin berdasarkan dimensi seperti sumber permintaan dan metode akses. Formatnya adalah
"<var_name> <Operation> constant" and "<var_name> <Operation> constant" and .... Untuk daftar nilai var_name dan Operation yang didukung, lihat Kondisi.days
Tidak
Durasi berlakunya izin. Satuan: hari. Jika Anda tidak mengonfigurasi parameter ini, izin berlaku selamanya. Jika Anda mengonfigurasi parameter ini, MaxCompute akan menghapus informasi izin setelah durasi yang ditentukan oleh parameter ini berakhir.
Cabut izin pada tabel dari pengguna
Sintaks
revoke Describe|Select|Alter|Update|Drop|ShowHistory|All on table <table_name> [(<column_list>)] from USER <user_name>;Parameter
Parameter
Wajib
Deskripsi
table_name
Ya
Nama tabel. Anda dapat menjalankan perintah
show tables;pada Klien MaxCompute untuk mendapatkan nama tabel atau tampilan.user_name
Ya
Nama pengguna dari siapa Anda ingin mencabut peran tersebut. Pengguna tersebut telah ditambahkan ke proyek MaxCompute. Nama pengguna dapat dalam salah satu format berikut:
Akun Alibaba Cloud: ALIYUN$<account_id>
Pengguna RAM: RAM$<account_id >:<RAM user ID>
Peran RAM: `RAM$<account_id>:role/<RAM role name>`
Anda dapat menjalankan perintah
list users;pada Klien MaxCompute untuk melihat informasi pengguna.privilegeproperties
conditions
Tidak
Mengontrol izin berdasarkan dimensi seperti sumber permintaan dan metode akses. Formatnya adalah
"<var_name> <Operation> constant" and "<var_name> <Operation> constant" and .... Untuk daftar nilai var_name dan Operation yang didukung, lihat Kondisi.days
Tidak
Durasi berlakunya izin. Satuan: hari. Jika Anda tidak mengonfigurasi parameter ini, izin berlaku selamanya. Jika Anda mengonfigurasi parameter ini, MaxCompute akan menghapus informasi izin setelah durasi yang ditentukan oleh parameter ini berakhir.
Cabut izin operasi pengguna pada model
Sintaks
revoke Describe|Execute|Alter|Drop|All on MODEL <model_name> from USER <user_name>;Parameter
model_name: Wajib. Nama model. Anda dapat menjalankan perintah
list models;pada Klien MaxCompute untuk mendapatkan nama model.
Cabut izin pada sumber daya dari pengguna
Sintaks
revoke Read|Write|Delete|All on resource <resource_name> from USER <user_name>;Parameter
Parameter
Wajib
Deskripsi
resource_name
Ya
Nama sumber daya. Anda dapat menjalankan perintah
list resources;pada Klien MaxCompute untuk mendapatkan nama sumber daya.user_name
Ya
Nama pengguna dari siapa Anda ingin mencabut peran tersebut. Pengguna tersebut telah ditambahkan ke proyek MaxCompute. Nama pengguna dapat dalam salah satu format berikut:
Akun Alibaba Cloud: ALIYUN$<account_id>
Pengguna RAM: RAM$<account_id >:<RAM user ID>
Peran RAM: `RAM$<account_id>:role/<RAM role name>`
Anda dapat menjalankan perintah
list users;pada Klien MaxCompute untuk melihat informasi pengguna.privilegeproperties
conditions
Tidak
Mengontrol izin berdasarkan dimensi seperti sumber permintaan dan metode akses. Formatnya adalah
"<var_name> <Operation> constant" and "<var_name> <Operation> constant" and .... Untuk daftar nilai var_name dan Operation yang didukung, lihat Kondisi.days
Tidak
Durasi berlakunya izin. Satuan: hari. Jika Anda tidak mengonfigurasi parameter ini, izin berlaku selamanya. Jika Anda mengonfigurasi parameter ini, MaxCompute akan menghapus informasi izin setelah durasi yang ditentukan oleh parameter ini berakhir.
Cabut izin pada fungsi tertentu dari pengguna
Sintaks
revoke Read|Write|Delete|Execute|All on function <function_name> from USER <user_name>;Parameter
Parameter
Wajib
Deskripsi
function_name
Ya
Nama fungsi. Anda dapat menjalankan perintah
list functions;pada Klien MaxCompute untuk mendapatkan nama fungsi.user_name
Ya
Nama pengguna dari siapa Anda ingin mencabut peran tersebut. Pengguna tersebut telah ditambahkan ke proyek MaxCompute. Nama pengguna dapat dalam salah satu format berikut:
Akun Alibaba Cloud: ALIYUN$<account_id>
Pengguna RAM: RAM$<account_id >:<RAM user ID>
Peran RAM: `RAM$<account_id>:role/<RAM role name>`
Anda dapat menjalankan perintah
list users;pada Klien MaxCompute untuk melihat informasi pengguna.privilegeproperties
conditions
Tidak
Mengontrol izin berdasarkan dimensi seperti sumber permintaan dan metode akses. Formatnya adalah
"<var_name> <Operation> constant" and "<var_name> <Operation> constant" and .... Untuk daftar nilai var_name dan Operation yang didukung, lihat Kondisi.days
Tidak
Durasi berlakunya izin. Satuan: hari. Jika Anda tidak mengonfigurasi parameter ini, izin berlaku selamanya. Jika Anda mengonfigurasi parameter ini, MaxCompute akan menghapus informasi izin setelah durasi yang ditentukan oleh parameter ini berakhir.
Cabut izin pada instans dari pengguna
Sintaks
revoke Read|Write|All on instance <instance_id> from USER <user_name>;Parameter
Parameter
Wajib
Deskripsi
instance_id
Ya
ID instans. Anda dapat menjalankan perintah
show instances;pada Klien MaxCompute untuk mendapatkan ID instans.user_name
Ya
Nama pengguna dari siapa Anda ingin mencabut peran tersebut. Pengguna tersebut telah ditambahkan ke proyek MaxCompute. Nama pengguna dapat dalam salah satu format berikut:
Akun Alibaba Cloud: ALIYUN$<account_id>
Pengguna RAM: RAM$<account_id >:<RAM user ID>
Peran RAM: `RAM$<account_id>:role/<RAM role name>`
Anda dapat menjalankan perintah
list users;pada Klien MaxCompute untuk melihat informasi pengguna.privilegeproperties
conditions
Tidak
Mengontrol izin berdasarkan dimensi seperti sumber permintaan dan metode akses. Formatnya adalah
"<var_name> <Operation> constant" and "<var_name> <Operation> constant" and .... Untuk daftar nilai var_name dan Operation yang didukung, lihat Kondisi.days
Tidak
Durasi berlakunya izin. Satuan: hari. Jika Anda tidak mengonfigurasi parameter ini, izin berlaku selamanya. Jika Anda mengonfigurasi parameter ini, MaxCompute akan menghapus informasi izin setelah durasi yang ditentukan oleh parameter ini berakhir.
Contoh
Cabut izin operasi pada objek dari akun Alibaba Cloud dan pengguna RAM. Perintah contoh:
Contoh 1: Cabut izin untuk membuat tabel, fungsi, dan instans serta mengkueri daftar semua jenis objek dalam proyek dari akun Alibaba Cloud Kate@aliyun.com. Perintah contoh:
--Masuk ke proyek test_project_a. use test_project_a; --Cabut otorisasi untuk pengguna Alibaba Cloud. revoke CreateTable, CreateFunction, CreateInstance, List on project test_project_a from user ALIYUN$5527xxxxxxxx5788;Contoh 2: Cabut izin untuk membaca metadata dan data tabel pada tabel dari pengguna RAM Allen. Perintah contoh:
-- Masuk ke proyek test_project_a. use test_project_a; -- Cabut izin pada tabel dari pengguna RAM Allen. revoke Describe, Select on table sale_detail from USER RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1649;Contoh 3: Mencabut izin membaca data dari sumber daya dan memperbarui sumber daya untuk Pengguna RAM Alice. Contoh perintah:
-- Masuk ke proyek test_project_a. use test_project_a; -- Cabut izin pada sumber daya dari pengguna RAM Alice. revoke Read, Write on resource udtf.jar from USER RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1650;Contoh 4: Cabut izin untuk membaca data dari fungsi dan memperbarui fungsi dari pengguna RAM Tom. Perintah contoh:
-- Masuk ke proyek test_project_a. use test_project_a; -- Cabut izin pada instans dari pengguna RAM Tom. revoke Read, Write on function udf_test from USER RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1651;Contoh 5: Cabut semua izin pada instans dari pengguna RAM Tom. Perintah contoh:
-- Masuk ke proyek test_project_a. use test_project_a; -- Cabut izin pada instans dari pengguna RAM Tom. revoke All on instance 202112300224**** from USER RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1651;
Berikan izin Unduh kepada pengguna
Berikan izin kepada pengguna untuk mengunduh data tabel, sumber daya, fungsi, atau instans.
Sintaks
grant Download on {Table|Resource|Function|Instance} <object_name> to USER <user_name>;Parameter
Parameter
Wajib
Deskripsi
object_name
Ya
Nama objek yang izinnya diberikan. Anda dapat memperoleh nama objek dengan salah satu metode berikut:
Nama tabel: Anda dapat menjalankan perintah
show tables;pada Klien MaxCompute untuk mendapatkan nama tabel atau tampilan.Nama sumber daya: Anda dapat menjalankan perintah
list resources;pada Klien MaxCompute untuk mendapatkan nama sumber daya.Nama fungsi: Anda dapat menjalankan perintah
list functions;pada Klien MaxCompute untuk mendapatkan nama fungsi.Nama instans: Anda dapat menjalankan perintah
show instances;pada Klien MaxCompute untuk mendapatkan ID instans.
user_name
Ya
Nama pengguna yang ingin Anda tetapkan perannya. Pengguna tersebut telah ditambahkan ke proyek MaxCompute. Nama pengguna dapat dalam salah satu format berikut:
Akun Alibaba Cloud: ALIYUN$<account_id>
Pengguna RAM: RAM$<account_id >:<RAM user ID>
Peran RAM: `RAM$<account_id>:role/<RAM role name>`
Anda dapat menjalankan perintah
list users;pada Klien MaxCompute untuk melihat informasi pengguna.Contoh
Kontrol unduh diaktifkan untuk proyek test_project_a. Untuk memberikan izin kepada pengguna RAM Allen untuk mengunduh data dari tabel tertentu, jalankan perintah berikut:
-- Masuk ke proyek test_project_a. use test_project_a; -- Berikan izin Unduh kepada pengguna RAM Allen. grant Download on table sale_detail to USER RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1649;
Cabut izin Unduh dari pengguna
Cabut izin untuk mengunduh data tabel, sumber daya, fungsi, atau instans dari pengguna.
Sintaks
revoke Download on {Table|Resource|Function|Instance} <object_name> from USER <user_name>;Parameter
Parameter
Wajib
Deskripsi
object_name
Ya
Nama objek yang izinnya ingin Anda cabut dari pengguna. Anda dapat memperoleh nama objek dengan salah satu metode berikut:
Nama tabel: Anda dapat menjalankan perintah
show tables;pada Klien MaxCompute untuk mendapatkan nama tabel atau tampilan.Nama sumber daya: Anda dapat menjalankan perintah
list resources;pada Klien MaxCompute untuk mendapatkan nama sumber daya.Nama fungsi: Anda dapat menjalankan perintah
list functions;pada Klien MaxCompute untuk mendapatkan nama fungsi.Nama instans: Anda dapat menjalankan perintah
show instances;pada Klien MaxCompute untuk mendapatkan ID instans.
user_name
Ya
Nama pengguna dari siapa Anda ingin mencabut peran tersebut. Pengguna tersebut telah ditambahkan ke proyek MaxCompute. Nama pengguna dapat dalam salah satu format berikut:
Akun Alibaba Cloud: ALIYUN$<account_id>
Pengguna RAM: RAM$<account_id >:<RAM user ID>
Peran RAM: `RAM$<account_id>:role/<RAM role name>`
Anda dapat menjalankan perintah
list users;pada Klien MaxCompute untuk melihat informasi pengguna.Contoh
Cabut izin untuk mengunduh data dari tabel tertentu dari pengguna RAM Allen. Perintah contoh:
-- Masuk ke proyek test_project_a. use test_project_a; -- Cabut izin pada tabel dari pengguna RAM Allen. revoke Download on table sale_detail from USER RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1649;
Berikan izin untuk mengakses data sangat sensitif kepada pengguna
Berikan izin untuk mengakses data sangat sensitif kepada pengguna menggunakan kontrol akses berbasis label.
Sintaks
grant Label <number> on table <table_name> [(<column_list>)] to USER <user_name> [with exp <days>];Parameter
Parameter
Wajib
Deskripsi
number
Ya
Tingkat sensitivitas tertinggi data yang dapat diakses oleh pengguna atau peran.
Nilai yang valid berkisar dari 0 hingga 9 dan sesuai dengan label tingkat sensitivitas data.
table_name
Ya
Nama tabel atau tampilan.
Anda dapat menjalankan perintah
show tables;pada Klien MaxCompute untuk mendapatkan nama tabel atau tampilan.column_list
Tidak
Parameter ini wajib jika Anda ingin memberikan atau mencabut izin pada kolom tertentu dalam tabel atau tampilan. Anda dapat menentukan beberapa nama kolom untuk satu operasi otorisasi. Pisahkan nama kolom dengan koma (,).
user_name
Ya
Nama pengguna yang ingin Anda tetapkan perannya. Pengguna tersebut telah ditambahkan ke proyek MaxCompute. Nama pengguna dapat dalam salah satu format berikut:
Akun Alibaba Cloud: ALIYUN$<account_id>
Pengguna RAM: RAM$<account_id >:<RAM user ID>
Peran RAM: `RAM$<account_id>:role/<RAM role name>`
Anda dapat menjalankan perintah
list users;pada Klien MaxCompute untuk melihat informasi pengguna.days
Tidak
Durasi berlakunya izin. Satuan: hari. Nilai yang valid: 0 hingga 263 - 1. Jika Anda tidak menentukan parameter ini, waktu kedaluwarsa default adalah 180 hari.
Contoh
Tingkat akses data pengguna RAM Allen adalah 2 dalam proyek test_project_a. Untuk memberikan izin untuk mengakses data yang tingkat sensitivitasnya adalah 4 di tabel sale_detail kepada pengguna RAM Allen, jalankan perintah berikut:
-- Masuk ke proyek test_project_a. use test_project_a; -- Berikan pengguna RAM Allen izin yang diperlukan. grant Label 4 on table sale_detail to USER RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1649;
Cabut izin untuk mengakses data sangat sensitif dari pengguna
Sintaks
revoke Label <number> on table <table_name> [(<column_list>)] from USER <user_name>;Parameter
Parameter
Wajib
Deskripsi
number
Ya
Tingkat sensitivitas tertinggi data yang izin aksesnya ingin Anda cabut dari pengguna atau peran.
Nilai yang valid berkisar dari 0 hingga 9 dan sesuai dengan label tingkat sensitivitas data.
table_name
Ya
Nama tabel atau tampilan yang izin aksesnya ingin Anda cabut dari pengguna.
Anda dapat menjalankan perintah
show tables;pada Klien MaxCompute untuk mendapatkan nama tabel atau tampilan.column_list
Tidak
Parameter ini wajib jika Anda ingin mencabut izin akses pada kolom tertentu dalam tabel atau tampilan dari pengguna atau peran. Anda dapat menentukan beberapa nama kolom untuk satu operasi otorisasi. Pisahkan nama kolom dengan koma (,).
user_name
Ya
Nama pengguna dari siapa Anda ingin mencabut peran tersebut. Pengguna tersebut telah ditambahkan ke proyek MaxCompute. Nama pengguna dapat dalam salah satu format berikut:
Akun Alibaba Cloud: ALIYUN$<account_id>
Pengguna RAM: RAM$<account_id >:<RAM user ID>
Peran RAM: `RAM$<account_id>:role/<RAM role name>`
Anda dapat menjalankan perintah
list users;pada Klien MaxCompute untuk melihat informasi pengguna.Contoh
Untuk mencabut izin untuk mengakses data yang tingkat sensitivitasnya adalah 4 di tabel sale_detail dari pengguna RAM Allen, jalankan perintah berikut:
-- Masuk ke proyek test_project_a. use test_project_a; -- Cabut izin dari pengguna RAM Allen. revoke Label 4 on table sale_detail from USER RAM$5527xxxxxxxx5788:2763xxxxxxxxxx1649;
Hapus sepenuhnya informasi izin sisa pengguna yang dihapus
Setelah pengguna dihapus dari proyek, izin-izin seperti berbasis ACL, berbasis label, dan berbasis kebijakan tetap disimpan dalam proyek. Jika pengguna yang dihapus tersebut ditambahkan kembali ke proyek, pengguna tersebut akan memiliki izin ACL, label, dan kebijakan aslinya. Jika pengguna dihapus secara tidak sengaja dan ditambahkan kembali ke proyek, pengguna tersebut tetap memiliki izin aslinya. Namun, jika pengguna ditambahkan kembali ke proyek asal dengan peran yang berbeda, risiko potensial terhadap keamanan data dapat terjadi.
Untuk mencegah risiko potensial tersebut, MaxCompute memungkinkan Anda menghapus semua izin yang diberikan kepada pengguna. Jika pengguna tidak lagi berada dalam proyek tetapi masih memiliki izin berbasis ACL, label, dan kebijakan, pemilik proyek atau pengguna yang ditetapkan peran Admin atau Super_Administrator dapat menghapus informasi izin sisa pengguna yang dihapus tersebut. Perintah contoh:
Sintaks
purge privs from user <user_name>;Parameter
Parameter
Wajib
Deskripsi
user_name
Ya
Nama pengguna yang ingin Anda hapus sepenuhnya informasi izin sisanya. Pengguna tersebut telah dihapus dari proyek MaxCompute. Nama pengguna dapat dalam salah satu format berikut:
Akun Alibaba Cloud: ALIYUN$<account_id>
Pengguna RAM: RAM$<account_id >:<RAM user ID>
Peran RAM: `RAM$<account_id>:role/<RAM role name>`
Jika Anda menjalankan perintah ini untuk pengguna yang masih berada dalam proyek, kesalahan "Principal <username> still exist in the project" akan dikembalikan. Anda harus terlebih dahulu menjalankan perintah remove user <user_name> untuk menghapus pengguna dari proyek.
Langkah selanjutnya
Setelah otorisasi pengguna selesai, Anda dapat mengkueri izin yang diberikan kepada pengguna. Untuk informasi lebih lanjut, lihat Kueri izin.