全部产品
Search
文档中心

MaxCompute:FAQ tentang manajemen perizinan

更新时间:Dec 07, 2025

Topik ini menjawab pertanyaan yang sering diajukan (FAQ) mengenai pengelolaan izin MaxCompute.

Kategori

FAQ

Authorization solutions

Granting permissions to users

Permission errors

Bagaimana cara membaca data lintas proyek?

Anda dapat menggunakan packages untuk membaca data lintas proyek. Package adalah mekanisme berbagi data dan resource lintas proyek, terutama digunakan untuk otorisasi pengguna lintas proyek. Administrator proyek dapat mengemas objek yang diperlukan dan memberikan izin atasnya. Proyek lain kemudian dapat menginstal package tersebut. Setelah instalasi, administrator proyek tersebut dapat mengelola package dan memberikan izin kepada pengguna dalam proyek mereka sendiri.

Untuk informasi selengkapnya, lihat Mengakses resource lintas proyek berdasarkan packages dan Kontrol izin untuk packages.

Dapatkah pemilik proyek MaxCompute diubah menjadi RAM user?

Tidak. Pemilik proyek tidak dapat diubah. Orang yang membuat proyek adalah pemilik proyek tersebut. Pemilik proyek dapat memberikan peran Admin kepada Resource Access Management (RAM) user.

Apa saja keterbatasan peran Admin dibandingkan dengan pemilik proyek?

Dibandingkan dengan pemilik proyek, pengguna dengan peran Admin tidak dapat melakukan operasi berikut:

  • Pengguna dengan peran Admin tidak dapat memberikan izin Admin kepada pengguna lain.

  • Anda tidak dapat mengubah konfigurasi keamanan proyek.

  • Model otorisasi proyek tidak dapat diubah.

  • Izin peran Admin tidak dapat diubah.

Saat saya meminta izin pada tabel lingkungan produksi untuk RAM user, otorisasi gagal. Bagaimana cara mengatasi masalah ini?

  • Symptom

    Saat Anda menggunakan Akun Alibaba Cloud untuk memberikan izin pada tabel di lingkungan produksi kepada RAM user, error berikut dikembalikan.

    class java.lang.IllegalArgumentException: AccessId should not be empty.
  • Penyebab

    ID AccessKey dan Rahasia AccessKey dari Akun Alibaba Cloud atau RAM user belum dikonfigurasi.

  • Solusi

    Login ke RAM console menggunakan Akun Alibaba Cloud atau sebagai RAM user. Pastikan AccessKey ID dan AccessKey Secret telah dikonfigurasi.

Bagaimana cara memberikan izin kepada pengguna untuk mengoperasikan tabel?

Pemilik proyek atau pengguna dengan peran Super_Administrator atau Admin harus melakukan otorisasi. Anda dapat menggunakan metode otorisasi daftar kontrol akses (ACL) (grant) untuk memberikan izin yang diperlukan kepada pengguna agar dapat mengoperasikan tabel. Perintah berikut merupakan contohnya.

GRANT UPDATE ON TABLE project_name TO ram$bob@aliyun.com:Allen;

Untuk informasi lebih lanjut tentang otorisasi, lihat Izin MaxCompute.

Bagaimana cara memberikan izin kepada pengguna RAM?

Otorisasi harus dilakukan oleh Akun Alibaba Cloud atau pengguna dengan peran Super_Administrator atau Admin. Untuk informasi selengkapnya mengenai otorisasi, lihat Izin MaxCompute.

Apa itu objek dan aksi dalam pengelolaan izin?

Otorisasi MaxCompute melibatkan tiga elemen:

  • Subject: Pengguna atau role yang diberikan izin.

  • Object: Objek target tempat izin diberikan kepada pengguna atau role, seperti proyek, tabel, model, fungsi, resource, atau instans.

  • Action: Operasi yang diizinkan untuk dilakukan pengguna atau role pada objek target, seperti membaca, menulis, atau melakukan kueri terhadap tabel.

Untuk informasi lebih lanjut, lihat Kontrol Akses Berbasis ACL.

Bagaimana RAM user dapat mengakses proyek yang dibuat oleh Akun Alibaba Cloud lain?

Asumsikan terdapat dua Akun Alibaba Cloud: Akun A dan Akun B. Akun A memiliki RAM user bernama C (ram_user_1). Pengguna C perlu mengakses proyek MaxCompute yang dibuat oleh Akun B.

Akun B harus menambahkan Akun A ke proyeknya dan memberikan peran Super_Administrator MaxCompute kepada Akun A. Kemudian, Akun A dapat login ke proyek Akun B dan menjalankan perintah add user ram$A:ram_user_1; untuk menambahkan Pengguna C ke proyek tersebut.

Bagaimana cara mendapatkan tenant ID (tenant_id)?

Untuk menentukan cakupan resource yang diotorisasi pada tingkat tenant, Anda dapat menentukan tenant dalam kebijakan akses. Untuk melakukannya, Anda harus terlebih dahulu mendapatkan ID tenant. Ikuti langkah-langkah berikut:

  1. Login ke MaxCompute console dan pilih wilayah di pojok kiri atas.

  2. Pada panel navigasi di sebelah kiri, pilih Manage Configurations > Tenants .

  3. Pada halaman Tenants, klik tab Tenant Property.

  4. Pada tab Tenant Property, dapatkan Tenant ID:.

Muncul error "FAILED: Invalid account Name xxxxxx" saat saya memberikan izin kepada pengguna. Bagaimana cara mengatasi masalah ini?

  • Symptom

    Saat Anda memberikan izin kepada pengguna, error berikut dikembalikan.

    FAILED: Invalid account Name xxxxxx
  • Penyebab

    Nama pengguna dalam pernyataan otorisasi tidak valid.

  • Solusi

    Pastikan username tersebut benar. Anda dapat menjalankan perintah list users; untuk mengambil daftar pengguna untuk proyek saat ini. Saat memberikan izin, salin username langsung dari daftar tersebut untuk menghindari kesalahan penulisan yang menyebabkan username tidak valid.

Muncul error "FAILED: lack of account provider, principalName xxxxxx" saat saya memberikan izin kepada pengguna. Bagaimana cara mengatasi masalah ini?

  • Symptom

    Saat Anda memberikan izin kepada pengguna, error berikut dikembalikan.

    FAILED: lack of account provider, principalName xxxxxx
  • Penyebab

    Username dalam pernyataan otorisasi tidak valid, atau sistem akun proyek saat ini tidak mendukung RAM.

  • Solusi

    Login ke client MaxCompute. Jalankan perintah list accountproviders; untuk memeriksa apakah sistem akun proyek MaxCompute mendukung RAM. Jika RAM tidak ada dalam hasil yang dikembalikan, jalankan perintah add accountprovider ram; untuk menambahkan dukungan terhadap sistem akun RAM. Jalankan kembali perintah list accountproviders; untuk memastikan dukungan RAM telah ditambahkan. Jika error tetap muncul meskipun proyek sudah mendukung RAM, pastikan username tersebut benar. Anda dapat menjalankan perintah list users; untuk mengambil daftar pengguna untuk proyek saat ini. Saat memberikan izin, salin username langsung dari daftar tersebut untuk menghindari kesalahan penulisan yang menyebabkan username tidak valid.

Saya memiliki izin untuk melakukan kueri terhadap view di MaxCompute. Mengapa muncul error yang menyatakan bahwa pengguna lain tidak memiliki izin saat saya melakukan kueri terhadap view tersebut?

  • Symptom

    Di MaxCompute, ViewA mereferensikan Tabel B. Pengguna A memiliki izin untuk melakukan kueri terhadap ViewA. Saat Pengguna A melakukan kueri terhadap ViewA, muncul error yang menyatakan bahwa Pengguna B (pemilik view) tidak memiliki izin untuk melakukan kueri terhadap Tabel B.

  • Penyebab

    Jika pemilik view kehilangan izin SELECT pada tabel yang direferensikan oleh view tersebut, view menjadi tidak tersedia. Hal ini biasanya terjadi jika pemilik view diubah dan pemilik baru tidak segera diberikan izin SELECT pada tabel yang direferensikan. Hal ini juga dapat terjadi jika pemilik tabel yang direferensikan mencabut izin SELECT dari pemilik view. Oleh karena itu, meskipun Pengguna A memiliki izin untuk melakukan kueri terhadap ViewA, kueri tersebut gagal.

  • Solusi

    Periksa apakah pemilik view kehilangan izin SELECT pada tabel yang direferensikan. Perintahnya sebagai berikut.

    show grants for <user_name>;  -- user_name adalah username pemilik view

    Jika izin tersebut hilang, berikan kembali izin SELECT pada tabel yang direferensikan kepada pemilik view. View tersebut kemudian dapat digunakan.

Muncul error "You have NO privilege to do the restricted operation on xxx Access Mode is AllDenied" saat saya menjalankan pekerjaan. Bagaimana cara mengatasi masalah ini?

  • Penyebab

    Proyek dinonaktifkan.

  • Solusi

    • Periksa apakah akun Anda memiliki pembayaran tertunda atau pesanan langganan untuk kuota langganan yang terkait dengan proyek telah kedaluwarsa. Jika akun Anda memiliki pembayaran tertunda atau pesanan telah kedaluwarsa, proyek akan secara otomatis dikembalikan ke status Normal setelah Anda menambahkan dana ke akun atau memperpanjang langganan. Pemulihan ini dapat memakan waktu 2 hingga 30 menit, tergantung pada jumlah pesanan dan proyek Anda.

    • Jika proyek tidak dinonaktifkan karena pembayaran tertunda atau pesanan kedaluwarsa, proyek tersebut mungkin telah dinonaktifkan secara manual. Anda dapat melanjutkan proyek tersebut di halaman Projects di MaxCompute console. Untuk menuju halaman tersebut, pilih Manage Configurations pada panel navigasi di sebelah kiri. .

Muncul error "failed to check policy format: invalid Action value - odps:<Action>" saat saya membuat peran kustom untuk tipe resource Resource. Bagaimana cara mengatasi masalah ini?

  • Symptom

    Saat Anda menggunakan fitur otorisasi kebijakan untuk membuat peran bernama test_role untuk tipe resource Resource dan memberikan izin CreatePackage kepada peran tersebut, Anda menulis kebijakan berikut:

    {
        "Statement":[
            {
                "Action":[
                    "odps:CreatePackage"
                    ],
                    "Effect":"Allow",
                    "Resource":[
                        "acs:odps:*:projects/test_project/authorization",
                        "acs:odps:*:projects/test_project/authorization/packages/*",
                        "acs:odps:*:projects/test_project/authorization/packages/*/*/*" 
                        ]
            }
        ],
        "Version":"1"
    }

    Error berikut dikembalikan.

    Create role test_role error: [400] com.aliyun.odps.OdpsException: failed to check policy format: invalid Action value - odps:CreatePackage
  • Penyebab

    MaxCompute tidak mendukung pemberian izin manajemen proyek kepada peran dengan tipe sumber daya Resource. Izin CreatePackage adalah izin manajemen proyek. Untuk informasi lebih lanjut tentang izin manajemen proyek, lihat Daftar izin manajemen proyek.

  • Solusi

    Saat Anda membuat peran kustom yang memiliki izin manajemen proyek, alihkan jenis peran ke Admin (jenis manajemen). Kemudian, peran tersebut dapat dibuat. Untuk informasi selengkapnya tentang perencanaan peran, lihat Perencanaan Peran.