All Products
Search
Document Center

Alibaba Cloud Service Mesh:Memberikan izin kepada pengguna RAM dan peran RAM

Last Updated:Jun 28, 2025

Anda dapat mengotorisasi pengguna Resource Access Management (RAM) atau peran RAM untuk menggunakan Service Mesh (ASM) sesuai kebutuhan dengan memberikan izin yang diperlukan. Hanya pengguna RAM dan peran RAM yang berwenang yang dapat melakukan operasi seperti membuat instance ASM dan memperbarui konfigurasi di konsol ASM. Ini menghilangkan risiko keamanan akibat kebocoran pasangan AccessKey akun Alibaba Cloud. Topik ini menjelaskan cara memberikan izin kepada pengguna RAM dan peran RAM.

Prasyarat

Informasi latar belakang

Izin yang diperlukan oleh pengguna RAM dan peran RAM bervariasi tergantung pada skenario yang berbeda.

Lampirkan kebijakan sistem ke pengguna RAM dan peran RAM

Secara default, ASM menyediakan dua kebijakan sistem: AliyunASMReadOnlyAccess dan AliyunASMFullAccess. Anda dapat melampirkan kebijakan tersebut ke pengguna RAM dan peran RAM. Berikut adalah deskripsi kedua kebijakan:

  • AliyunASMReadOnlyAccess

    Kebijakan ini hanya memberikan izin baca saja pada instance ASM. Setelah melampirkan kebijakan ini, pengguna RAM hanya dapat melihat informasi tentang instance ASM tetapi tidak dapat memodifikasi konfigurasinya.

  • AliyunASMFullAccess

    Kebijakan ini memberikan semua izin pada instance ASM. Setelah melampirkan kebijakan ini, pengguna RAM memiliki izin penuh pada instance ASM seperti akun Alibaba Cloud dan dapat melakukan semua operasi terkait.

Berikut adalah langkah-langkah untuk melampirkan kebijakan sistem ke pengguna RAM atau peran RAM. Dalam contoh ini, kebijakan AliyunASMReadOnlyAccess dilampirkan ke pengguna RAM. Untuk informasi lebih lanjut, lihat Berikan Izin kepada Pengguna RAM dan Berikan Izin kepada Peran RAM.

  1. Masuk ke Konsol RAM sebagai administrator RAM.

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

  3. Di halaman Users, temukan pengguna RAM yang diperlukan, dan klik Add Permissions di kolom Actions.

    image

    Anda juga dapat memilih beberapa pengguna RAM dan klik Add Permissions di bagian bawah halaman untuk memberikan izin secara bersamaan.

  4. Di panel Grant Permission, berikan izin kepada pengguna RAM.

    1. Konfigurasikan parameter Resource Scope.

    2. Konfigurasikan parameter Principal.

      Principal adalah pengguna RAM yang ingin Anda beri izin. Pengguna RAM saat ini dipilih secara otomatis.

    3. Pilih System Policy dari daftar drop-down All Types, masukkan AliyunASMReadOnlyAccess di kotak pencarian, dan pilih AliyunASMReadOnlyAccess.

      Catatan

      Anda dapat melampirkan maksimal lima kebijakan ke pengguna RAM sekaligus. Jika Anda ingin melampirkan lebih dari lima kebijakan, ulangi operasinya.

    4. Klik Grant permissions.

  5. Klik Close.

Lampirkan kebijakan kustom ke pengguna RAM dan peran RAM

Untuk kontrol granular atas izin, Anda dapat membuat kebijakan kustom dan melampirkannya ke pengguna RAM dan peran RAM.

Buat kebijakan yang digunakan untuk memberikan izin pada instance ASM

  1. Masuk ke Konsol RAM sebagai pengguna RAM dengan hak administratif.

  2. Di panel navigasi sebelah kiri, pilih Permissions > Policies.

  3. Di halaman Policies, klik Create Policy.

    image

  4. Di halaman Create Policy, klik tab JSON.

    image

  5. Masukkan kebijakan kustom, lalu klik OK.

    Anda dapat memodifikasi bidang Action dalam blok Statement untuk mengaktifkan autentikasi granular untuk operasi API. Dalam contoh ini, kebijakan dengan izin terbatas dibuat. Kebijakan ini memberikan semua izin RAM pada ASM kecuali izin otorisasi RBAC. Pengguna RAM yang kebijakan ini dilampirkan tidak dapat memberikan izin RBAC kepada pengguna lain tetapi memiliki semua izin lainnya. Untuk informasi lebih lanjut tentang sintaksis dan struktur kebijakan RAM, lihat Struktur dan Sintaksis Kebijakan.

    {
        "Statement": [
            {
                "Effect": "Allow",
                "Action": [
                    "servicemesh:Add*",
                    "servicemesh:CRBatchDeletion",
                    "servicemesh:Create*",
                    "servicemesh:Delete*",
                    "servicemesh:Describe*",
                    "servicemesh:Enable*",
                    "servicemesh:Disable*",
                    "servicemesh:Get*",
                    "servicemesh:InvokeApiServer",
                    "servicemesh:List*",
                    "servicemesh:Modify*",
                    "servicemesh:Re*",
                    "servicemesh:Run*",
                    "servicemesh:Set*",
                    "servicemesh:Sync*",
                    "servicemesh:Update*",
                    "servicemesh:Upgrade*"
                ],
                "Resource": "*"
            },
            {
                "Effect": "Allow",
                "Action": [
                    "log:ListLogStores",
                    "log:ListDashboard",
                    "log:GetDashboard",
                    "log:ListSavedSearch",  
                    "log:ListProject"
                ],
                "Resource": "*"
            },
            {
                "Effect": "Allow",
                "Action": "log:GetLogStoreLogs",
                "Resource": "acs:log:*:*:project/*/logstore/audit-*"
            },
            {
                "Effect": "Allow",
                "Action": "log:GetLogStoreLogs",
                "Resource": "acs:log:*:*:project/*/logstore/istio-*"
            },
            {
                "Action": "ram:CreateServiceLinkedRole",
                "Resource": "*",
                "Effect": "Allow",
                "Condition": {
                    "StringEquals": {
                        "ram:ServiceName": "servicemesh.aliyuncs.com"
                    }
                }
            }
        ],
        "Version": "1"
    }
  6. Di bagian Basic Information, masukkan nama kebijakan di bidang Nama. Dalam contoh ini, nama kebijakan adalah ASMPolicy1. Lalu, klik OK.

Lampirkan kebijakan kustom ke pengguna RAM atau peran RAM

Dalam contoh ini, kebijakan kustom dilampirkan ke pengguna RAM. Untuk informasi lebih lanjut tentang cara melampirkan kebijakan kustom ke peran RAM, lihat Berikan Izin kepada Peran RAM.

  1. Masuk ke Konsol RAM sebagai pengguna RAM dengan hak administratif.

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

  3. Di halaman Users, temukan pengguna RAM yang diperlukan, dan klik Add Permissions di kolom Actions.

    image

    Anda juga dapat memilih beberapa pengguna RAM dan klik Add Permissions di bagian bawah halaman untuk memberikan izin secara bersamaan.

  4. Di panel Add Permissions, berikan izin kepada pengguna RAM.

    1. Konfigurasikan parameter Resource Scope.

    2. Konfigurasikan parameter Principal.

      Principal adalah pengguna RAM yang ingin Anda beri izin. Pengguna RAM saat ini dipilih secara otomatis.

    3. Konfigurasikan parameter Policy.

      Pilih Custom Policy dari dropdown All Types. Masukkan ASMPolicy1 di kotak teks dan pilih dari hasil pencarian.

  1. Klik Grant permissions.

  2. Klik Close.

Contoh skenario kebijakan kustom

Skenario 1: Berikan izin pada satu instance ASM

Anda dapat menggunakan skrip berikut untuk membuat kebijakan yang memberikan izin pada satu instance ASM. Setelah melampirkan kebijakan ini, pengguna RAM atau peran RAM hanya dapat mengelola instance ASM dengan ID tertentu.

Catatan

Saat membuat kebijakan, ganti <ServicemeshId> di skrip dengan ID instance ASM tempat Anda ingin memberikan izin.

{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "servicemesh:*",
      "Resource": "acs:servicemesh:*:*:servicemesh/<ServicemeshId>"
    },
    {
      "Effect": "Allow",
      "Action": "servicemesh:DescribeServiceMeshes",
      "Resource": "*"
    },
    {
      "Effect": "Allow",
      "Action": "log:GetLogStoreLogs",
      "Resource": "acs:log:*:*:project/*/logstore/audit-<ServicemeshId>"
    },
    {
      "Effect": "Allow",
      "Action": "log:GetLogStoreLogs",
      "Resource": "acs:log:*:*:project/*/logstore/istio-<ServicemeshId>"
    }
  ],
  "Version": "1"
}

Skenario 2: Berikan izin baca dan tulis pada sumber daya Istio di konsol ASM

Secara default, kebijakan sistem AliyunASMReadOnlyAccess yang disediakan oleh ASM hanya memberikan izin baca saja pada instance ASM kepada pengguna RAM atau peran RAM. Pengguna RAM atau peran RAM yang kebijakan ini dilampirkan tidak dapat mengelola sumber daya Istio di ASM.

Anda dapat menggunakan skrip berikut untuk membuat kebijakan yang memberikan izin baca dan tulis pada sumber daya Istio. Setelah melampirkan kebijakan ini, pengguna RAM atau peran RAM dapat menggunakan konsol ASM untuk mengelola sumber daya Istio pada instance ASM. Namun, mereka tidak dapat mengubah pengaturan lain dari instance ASM, seperti pengaturan fitur.

{
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "servicemesh:List*",
                "servicemesh:Describe*",
                "servicemesh:Get*",
                "servicemesh:InvokeApiServer"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "log:ListLogStores",
                "log:ListDashboard",
                "log:GetDashboard",
                "log:ListSavedSearch"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": "log:GetLogStoreLogs",
            "Resource": "acs:log:*:*:project/*/logstore/audit-*"
        }
    ],
    "Version": "1"
}

Skenario 3: Berikan izin otorisasi RBAC

Anda dapat menggunakan skrip berikut untuk membuat kebijakan yang memberikan izin otorisasi RBAC. Setelah melampirkan kebijakan ini, pengguna RAM atau peran RAM dapat menggunakan konsol ASM untuk mengelola izin RBAC dari peran RAM lain atau pengguna RAM. Namun, mereka tidak dapat mengelola instance ASM.

{
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "servicemesh:DescribeUserPermissions",
                "servicemesh:GrantUserPermissions",
                "servicemesh:DescribeServiceMeshes",
                "servicemesh:DescribeUsersWithPermissions"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": "ims:ListUserBasicInfos",
            "Resource": "*"
        }
    ],
    "Version": "1"
}