All Products
Search
Document Center

Platform For AI:Konfigurasikan peran RAM untuk DLC

Last Updated:Sep 11, 2026

Saat pekerjaan DLC Anda mengakses sumber daya cloud lainnya, Anda harus mengonfigurasi pasangan AccessKey untuk autentikasi. Dengan mengasosiasikan peran RAM, pekerjaan DLC dapat menggunakan kredensial sementara dari Security Token Service (STS) untuk mengakses layanan cloud lainnya, sehingga menghilangkan kebutuhan akan pasangan AccessKey jangka panjang dan mengurangi risiko kebocoran kunci. Topik ini menjelaskan cara membuat peran RAM, memberikan izin kepada DLC, dan memperoleh kredensial akses sementara menggunakan peran RAM tersebut.

Manfaat

Peran RAM adalah entitas tepercaya yang dapat diasumsikan oleh layanan cloud untuk menangani akses lintas layanan. Penggunaan peran RAM untuk autentikasi dan kontrol akses memberikan manfaat berikut:

  • Keamanan: Kredensial STS sementara menggantikan pasangan AccessKey jangka panjang, sehingga mengurangi risiko kebocoran kunci.

  • Kontrol dan kemudahan: Anda dapat mengontrol secara tepat akses pengembang terhadap sumber daya cloud dengan memodifikasi kebijakan izin peran RAM.

Batasan

Anda hanya dapat mengasosiasikan satu peran RAM dengan satu pekerjaan DLC.

Metode konfigurasi

Saat membuat pekerjaan DLC, konfigurasikan peran RAM dan peroleh kredensial STS sementara.

Konfigurasikan peran RAM untuk DLC

Peran default PAI

Peran default PAI didasarkan pada peran layanan AliyunPAIDLCDefaultRole. Peran ini memiliki izin detail halus hanya untuk mengakses MaxCompute dan Object Storage Service (OSS). Kredensial sementara yang dikeluarkan dari peran ini memiliki izin yang sama dengan Akun Alibaba Cloud saat mengakses tabel MaxCompute. Saat mengakses OSS, peran ini hanya dapat mengakses bucket OSS default yang dikonfigurasi untuk ruang kerja saat ini.

Setelah memberikan peran default PAI, Anda dapat memperoleh kredensial sementara dalam pekerjaan untuk mengakses sumber daya pengembangan dasar tanpa memberikan izin berlebihan atau membuat peran RAM tambahan.

  • Kasus penggunaan

    Dengan peran default PAI yang telah diberikan, Anda tidak perlu mengonfigurasi pasangan AccessKey dalam skenario berikut:

    • Mengirimkan pekerjaan menggunakan SDK PyODPS ke proyek MaxCompute tempat pemilik pekerjaan memiliki izin eksekusi.

    • Mengakses data di bucket OSS default yang dikonfigurasi untuk ruang kerja saat ini menggunakan SDK OSS.

  • Metode konfigurasi

    Saat Anda membuat pekerjaan DLC, pada bagian Roles and Permissions, pilih Default Roles of PAI sebagai Instance RAM Role. Di bagian Roles and Permissions, atur Visibility menjadi Visible within the workspace dan Instance RAM Role menjadi default role of PAI.

Setelah mengonfigurasi peran RAM, Anda harus memperoleh kredensial akses sementara dengan menggunakan peran RAM yang diasosiasikan.

Peran kustom

Jika izin kredensial sementara dari peran default PAI tidak memenuhi kebutuhan Anda, Anda dapat membuat peran RAM dan menyesuaikan kebijakan izinnya. Ikuti langkah-langkah berikut:

  1. Login ke RAM console dan buat peran RAM.

    Konfigurasikan parameter kunci berikut:

    • Principal Type: Pilih Cloud Services.

    • Principal Name: Pilih PAI.

  2. Berikan izin kepada peran RAM yang telah dibuat.

    Lampirkan kebijakan sistem atau kustom ke peran RAM untuk menentukan izinnya. Misalnya, berikan kebijakan AliyunOSSReadOnlyAccess ke peran RAM untuk memberikan akses read-only ke OSS.

    Jika Anda adalah Pengguna RAM, hubungi administrator Akun Alibaba Cloud Anda untuk memberikan izin kepada Pengguna RAM Anda agar dapat menggunakan peran RAM tersebut. Untuk informasi lebih lanjut, lihat Manage RAM user permissions. Kode berikut memberikan contoh kebijakan izin kustom:

    {
      "Version": "1",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": "ram:PassRole",
          "Resource": "acs:ram::*:role/${RoleName}"
        }
      ]
    }

    Ganti ${RoleName} dengan nama peran RAM yang diasosiasikan dengan pekerjaan DLC.

  3. Kirimkan pekerjaan DLC dan asosiasikan peran RAM tersebut. Di bagian Roles and Permissions, konfigurasikan parameter kunci berikut. Untuk informasi tentang parameter lainnya, lihat Create a training job.

    Parameter

    Description

    Instance RAM Role

    Pilih Custom Role.

    RAM Role

    Pilih peran RAM yang telah Anda buat pada langkah sebelumnya. Kredensial sementara mewarisi izin dari peran kustom ini saat mengakses layanan cloud.

Setelah mengonfigurasi peran RAM, Anda harus memperoleh kredensial akses sementara dengan menggunakan peran RAM yang diasosiasikan.

Tidak ada peran yang diasosiasikan

Jika Anda tidak perlu menggunakan pasangan AccessKey untuk mengakses data, kami merekomendasikan agar Anda tidak mengasosiasikan peran. Saat Anda membuat pekerjaan DLC, di bagian Roles and Permissions, pilih Does Not Associate Role sebagai Instance RAM Role. Di bagian Roles and Permissions, atur Visibility menjadi Visible to creator only dan Instance RAM Role menjadi Do not associate role.

Memperoleh kredensial akses sementara

Jika Anda menetapkan peran default PAI atau peran kustom ke pekerjaan DLC, Anda dapat memperoleh kredensial sementara dengan salah satu cara berikut:

Gunakan tool kredensial

Alibaba Cloud Credentials tool memperoleh kredensial sementara dari STS dengan memanggil layanan lokal yang secara otomatis disuntikkan saat pekerjaan dibuat. Kredensial tersebut secara otomatis diperbarui secara berkala.

Saat Anda membuat pekerjaan DLC, lengkapi konfigurasi kunci berikut:

  • Instal Alibaba Cloud Credentials tool.

    Di bagian Third-party Library Settings, pilih Third-party Libraries dan masukkan alibabacloud_credentials di kotak teks untuk menginstal Alibaba Cloud Credentials tool.

    Catatan

    Anda dapat melewati langkah ini jika library tersebut sudah pra-instal dalam image.

  • Konfigurasikan file skrip.

    Kode berikut memberikan contoh skrip Python. Untuk contoh lain dalam bahasa SDK lainnya, lihat Best practices for using access credentials to access Alibaba Cloud OpenAPI. Anda dapat menggunakan opsi Source Code Repositories atau Mount Configuration untuk mengunggah file skrip ke lingkungan DLC.

    from alibabacloud_credentials.client import Client as CredClient
    from alibabacloud_credentials.models import Config as CredConfig
    credentialsConfig = CredConfig(
        type='credentials_uri'
    )
    credentialsClient = CredClient(credentialsConfig)
    

Akses layanan lokal

Saat Anda membuat pekerjaan DLC, jalankan perintah berikut di bidang Startup Command untuk memperoleh kredensial sementara dari layanan lokal yang secara otomatis disuntikkan.

# Obtain a temporary access credential for the instance RAM role.
curl $ALIBABA_CLOUD_CREDENTIALS_URI

Contoh berikut menunjukkan output sampel:

{
	"Code": "Success",
	"AccessKeyId": "STS.N*********7",
	"AccessKeySecret": "3***************d",
	"SecurityToken": "DFE32G*******"
	"Expiration": "2024-05-21T10:39:29Z"
}

Deskripsi field:

  • SecurityToken: Token keamanan sementara dari peran RAM.

  • Expiration: Waktu kedaluwarsa kredensial sementara.

Akses file lokal

Di kontainer DLC, baca file di path yang ditentukan untuk memperoleh kredensial sementara untuk peran RAM. File ini secara otomatis disuntikkan dan diperbarui secara berkala oleh PAI. Path file tersebut adalah /mnt/.alibabacloud/credentials. Kode berikut menunjukkan isi file:

{
	"AccessKeyId": "STS.N*********7",
	"AccessKeySecret": "3***************d",
	"SecurityToken": "DFE32G*******"
	"Expiration": "2024-05-21T10:39:29Z"
}

Contoh

Akses ODPS

Saat Anda membuat pekerjaan DLC, lengkapi konfigurasi kunci berikut:

  • Instal library yang diperlukan.

    Di bagian Third-party Library Settings, konfigurasikan Third-party Libraries untuk menginstal Alibaba Cloud Credentials tool dan SDK ODPS.

    alibabacloud_credentials
    pyodps
    Catatan

    Anda dapat melewati langkah ini jika library tersebut sudah pra-instal dalam image.

  • Konfigurasikan file skrip.

    Kode berikut memberikan contoh skrip Python. Anda dapat menggunakan opsi Source Code Repositories atau Mount Configurations untuk mengunggah file skrip ke lingkungan DLC dan mengonfigurasi Mount Path, seperti /mnt/data/.

    from alibabacloud_credentials import providers
    from odps.accounts import CredentialProviderAccount
    from odps import ODPS
    if __name__ == '__main__':
        account = CredentialProviderAccount(providers.DefaultCredentialsProvider())
        o = ODPS(
            account=account,
            project="{odps_project}",  # Replace with your project name.
            endpoint="{odps_endpoint}"  # Replace with the endpoint of the region where your project is located.
        )
        for t in o.list_tables():
            print(t)
    
  • Konfigurasikan perintah startup.

    Atur Startup Command menjadi perintah yang menjalankan skrip tersebut. Misalnya, python /mnt/data/xx.py.

  • Konfigurasikan informasi peran.

    Untuk Instance RAM Role, pilih Default Roles of PAI.

Akses OSS

Saat Anda membuat pekerjaan DLC, lengkapi konfigurasi kunci berikut:

  • Instal library yang diperlukan.

    Di bagian Third-party Library Settings, konfigurasikan Third-party Libraries untuk menginstal Alibaba Cloud Credentials tool dan SDK OSS.

    alibabacloud_credentials
    oss2
    Catatan

    Anda dapat melewati langkah ini jika library tersebut sudah pra-instal dalam image.

  • Konfigurasikan file skrip.

    Kode berikut memberikan contoh skrip Python. Anda dapat menggunakan opsi Source Code Repositories atau Mount Configurations untuk mengunggah file skrip ke lingkungan DLC dan mengonfigurasi Mount Path, seperti /mnt/data/.

    import oss2
    from alibabacloud_credentials.client import Client
    from alibabacloud_credentials import providers
    from itertools import islice
    auth = oss2.ProviderAuth(providers.DefaultCredentialsProvider())
    bucket = oss2.Bucket(auth,
                         '{oss_endpoint}',  # Replace with the endpoint of the region where your OSS bucket is located.
                         '{oss_bucket}'  # Replace with the name of your OSS bucket.
             )
    for b in islice(oss2.ObjectIterator(bucket), 10):
        print(b.key)
    
  • Konfigurasikan perintah startup.

    Atur Startup Command menjadi perintah yang menjalankan skrip tersebut. Misalnya, python /mnt/data/xx.py.

  • Konfigurasikan informasi peran.

    Untuk Instance RAM Role, pilih Default Roles of PAI.

FAQ

Error saat memilih peran kustom

  • Pesan error: check permission for ram role failed atau check permission for RAM user failed.

    Anda dapat login ke RAM console untuk memverifikasi bahwa peran tersebut ada.

    • Jika peran tersebut tidak ada, ubah Instance RAM Role menjadi peran yang ada.

    • Jika peran tersebut ada, hubungi administrator Akun Alibaba Cloud Anda untuk memberikan izin kepada Pengguna RAM Anda agar dapat menggunakan peran tersebut. Untuk informasi lebih lanjut, lihat Manage RAM user permissions. Berikut adalah contoh kebijakan izin kustom. Ganti ${RoleName} dengan nama peran RAM Anda.

      {
        "Version": "1",
        "Statement": [
          {
            "Effect": "Allow",
            "Action": "ram:PassRole",
            "Resource": "acs:ram::*:role/${RoleName}"
          }
        ]
      }
  • Pesan error: Failed to assume role for user.

    Error ini biasanya terjadi karena tidak ada kebijakan kepercayaan yang dikonfigurasi untuk peran Anda. Tambahkan kebijakan kepercayaan dengan mengikuti langkah-langkah berikut:

    1. Login ke RAM console sebagai administrator RAM.

    2. Di panel navigasi sebelah kiri, pilih Identities > Roles.

    3. Di halaman Roles, klik nama peran RAM target.

    4. Di tab Trust Policy, klik Edit Trust Policy.

    5. Di editor, modifikasi kebijakan kepercayaan, lalu klik OK.

      Asumsikan kebijakan kepercayaan awal peran tersebut adalah:

      {
        "Statement": [
          {
            "Action": "sts:AssumeRole",
            "Effect": "Allow",
            "Principal": {
              "RAM": [
                "acs:ram::aaa:root"
              ],
              "Service": [
                "xxx.aliyuncs.com"
              ]
            }
          }
        ],
        "Version": "1"
      }

      Konten kebijakan baru adalah sebagai berikut:

      {
        "Statement": [
          {
            "Action": "sts:AssumeRole",
            "Effect": "Allow",
            "Principal": {
              "RAM": [
                "acs:ram::aaa:root"
              ],
              "Service": [
                "xxx.aliyuncs.com",
                "pai.aliyuncs.com" 
              ]
            }
          }
        ],
        "Version": "1"
      }