全部产品
Search
文档中心

Container Service for Kubernetes:Gunakan ack-ram-tool untuk mencabut izin pengguna yang ditentukan pada kluster ACK

更新时间:Jul 02, 2025

ack-ram-tool adalah alat baris perintah yang disediakan oleh Container Service for Kubernetes (ACK) untuk membantu Anda mengelola izin Resource Access Management (RAM) dan Role-Based Access Control (RBAC) pada kluster ACK. Alat ini memungkinkan Anda memodifikasi atau mencabut izin pengguna yang telah dihapus guna menghindari risiko keamanan.

Langkah 1: Instal dan konfigurasikan ack-ram-tool

  1. Jalankan salah satu perintah berikut untuk menginstal dan mengonfigurasi ack-ram-tool sesuai dengan sistem operasi Anda.

    Lihat perintah untuk menginstal dan mengonfigurasi ack-ram-tool di Darwin_arm64

    cd /tmp
    wget https://ack-ram-tool.oss-cn-hangzhou.aliyuncs.com/dist/v0.18.0/ack-ram-tool_0.18.0_Darwin_arm64.tar.gz
    tar zxvf ack-ram-tool_0.18.0_Darwin_arm64.tar.gz
    cp ack-ram-tool /usr/local/bin
    ack-ram-tool version

    Lihat perintah untuk menginstal dan mengonfigurasi ack-ram-tool di Darwin_x86_64

    cd /tmp
    wget https://ack-ram-tool.oss-cn-hangzhou.aliyuncs.com/dist/v0.18.0/ack-ram-tool_0.18.0_Darwin_x86_64.tar.gz
    tar zxvf ack-ram-tool_0.18.0_Darwin_x86_64.tar.gz
    cp ack-ram-tool /usr/local/bin
    ack-ram-tool version

    Lihat perintah untuk menginstal dan mengonfigurasi ack-ram-tool di Linux_arm64

    cd /tmp
    wget https://ack-ram-tool.oss-cn-hangzhou.aliyuncs.com/dist/v0.18.0/ack-ram-tool_0.18.0_Linux_arm64.tar.gz 
    tar zxvf ack-ram-tool_0.18.0_Linux_arm64.tar.gz
    cp ack-ram-tool /usr/local/bin
    ack-ram-tool version

    Lihat perintah untuk menginstal dan mengonfigurasi ack-ram-tool di Linux_x86_64

    cd /tmp
    wget https://ack-ram-tool.oss-cn-hangzhou.aliyuncs.com/dist/v0.18.0/ack-ram-tool_0.18.0_Linux_x86_64.tar.gz
    tar zxvf ack-ram-tool_0.18.0_Linux_x86_64.tar.gz
    cp ack-ram-tool /usr/local/bin
    ack-ram-tool version
  2. Anda dapat menggunakan salah satu metode berikut untuk mengonfigurasi kredensial yang diperlukan oleh ack-ram-tool:

    • Membaca otomatis kredensial dari variabel lingkungan berikut:

      • ALIBABA_CLOUD_ACCESS_KEY_ID

      • ALIBABA_CLOUD_ACCESS_KEY_SECRET

      • ALIBABA_CLOUD_SECURITY_TOKEN. Untuk informasi lebih lanjut tentang cara mendapatkan SECURITY_TOKEN, lihat Apa itu STS?.

    • Membaca kredensial dari file konfigurasi ~/.aliyun/config.json dari CLI aliyun. Untuk informasi lebih lanjut, lihat Konfigurasikan kredensial.

Langkah 2: Berikan izin kepada kredensial yang digunakan oleh ack-ram-tool

Kredensial yang digunakan oleh ack-ram-tool memerlukan izin RAM dan RBAC.

  1. Gunakan kebijakan berikut untuk memberikan izin kepada pengguna RAM. Untuk informasi lebih lanjut, lihat Berikan izin kepada pengguna RAM.

    {
      "Version": "1",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": [
            "cs:*"
          ],
          "Resource": "*"
        },
        {
          "Effect": "Allow",
          "Action": [
            "ram:ListUsers",
            "ram:ListRoles"
          ],
          "Resource": "*"
        }
      ]
    }
  2. Lakukan langkah-langkah berikut untuk memberikan izin administrator RBAC kepada pengguna RAM:

    1. Masuk ke Konsol ACK. Di panel navigasi sisi kiri, klik Authorizations.

    2. Di halaman Otorisasi, klik tab RAM Users, temukan pengguna RAM yang ingin Anda kelola, lalu klik Modify Permissions untuk membuka panel Permission Management.

    3. Klik Add Permissions, tentukan Clusters dan Namespace, atur Permission Management menjadi Administrator, lalu klik Submit.

Langkah 3: Kueri binding RBAC pengguna RAM dan peran RAM yang ditentukan dalam kluster

Anda dapat menjalankan perintah ack-ram-tool rbac scan-user-permissions untuk menanyakan binding RBAC pengguna RAM dan peran RAM yang ditentukan dalam kluster.

Kueri hanya binding RBAC pengguna RAM dan peran RAM yang telah dihapus

Jalankan perintah berikut untuk menanyakan binding RBAC pengguna RAM dan peran RAM yang telah dihapus dalam kluster:

ack-ram-tool rbac scan-user-permissions -c <ID Kluster>

Output yang diharapkan:

2023-12-12T15:34:37+08:00 INFO mulai memindai pengguna dan binding untuk kluster c401890df511a4362bf24bece4da****
2023-12-12T15:34:43+08:00 WARN secara default, hanya pengguna yang dihapus yang termasuk. Gunakan flag --all-users untuk menyertakan semua pengguna
UID                           UserType  UserName  Binding                                                    
30086537005566**** (deleted)  RamRole             ClusterRoleBinding/-/30086537005566****-clusterrolebinding  
24320678733226**** (deleted)  RamUser             ClusterRoleBinding/-/24320678733226****-clusterrolebinding  

Tabel berikut menjelaskan parameter UserType:

Nilai UserType

Deskripsi

RamRole

Peran RAM

RamUser

Pengguna RAM

Root

Akun Alibaba Cloud

Kueri binding RBAC semua pengguna RAM dan peran RAM

Jalankan perintah berikut untuk menanyakan binding RBAC semua pengguna RAM dan peran RAM:

ack-ram-tool rbac scan-user-permissions --all-users -c <ID Kluster>

Output yang diharapkan:

2023-12-12T15:36:00+08:00 INFO Mulai memindai pengguna dan binding untuk kluster c401890df511a4362bf24bece4da6****
UID                           UserType  UserName                   Binding                                                                
30032484611590**** (deleted)  RamRole                              ClusterRoleBinding/-/30032484611590****-clusterrolebinding              
20492499986425**** (deleted)  RamUser                              ClusterRoleBinding/-/20492499986425****-clusterrolebinding              
27203272572548****            RamUser   scan                       ClusterRoleBinding/-/27203272572548****-clusterrolebinding        
113802571552****              Root                                 ClusterRoleBinding/-/113802571552****-cluster-admin-clusterrolebinding  
29068913515444****            RamUser   test-ack-ram-check         ClusterRoleBinding/-/29068913515444****-clusterrolebinding  

Kueri binding RBAC untuk semua kluster yang dimiliki oleh akun Alibaba Cloud saat ini

Jalankan perintah berikut untuk menanyakan binding RBAC untuk semua kluster yang dimiliki oleh akun Alibaba Cloud saat ini:

ack-ram-tool rbac scan-user-permissions -c all

Output yang diharapkan:

2023-12-12T16:44:55+08:00 INFO mulai memindai pengguna dan binding untuk semua kluster
2023-12-12T16:44:55+08:00 INFO mulai mendapatkan semua kluster, pengguna, dan peran
2023-12-12T16:44:58+08:00 INFO ---- c401890df511a4362bf24bece4da6**** (test-pro111323223) ----
2023-12-12T16:44:58+08:00 INFO [c401890df511a4362bf24bece4da6****] mulai memindai binding untuk kluster c401890df511a4362bf24bece4da6****
2023-12-12T16:45:00+08:00 WARN [c401890df511a4362bf24bece4da6****] secara default, hanya pengguna yang dihapus yang termasuk. Gunakan flag --all-users untuk menyertakan semua pengguna
ClusterId: c401890df511a4362bf24bece4da6****
UID                           UserType  UserName  Binding                                                    
30086537005566**** (deleted)  RamRole             ClusterRoleBinding/-/30086537005566****-clusterrolebinding  
20492499986425**** (deleted)  RamUser             ClusterRoleBinding/-/20492499986425****-clusterrolebinding  
2023-12-12T16:45:00+08:00 INFO ---- c137a979dec21472c8279c903cfce**** (test-pro) ----
2023-12-12T16:45:00+08:00 INFO [c137a979dec21472c8279c903cfce****] mulai memindai binding untuk kluster c137a979dec21472c8279c903cfce****
2023-12-12T16:45:01+08:00 WARN [c137a979dec21472c8279c903cfce****] secara default, hanya pengguna yang dihapus yang termasuk. Gunakan flag --all-users untuk menyertakan semua pengguna
ClusterId: c137a979dec21472c8279c903cfce****
UID                           UserType  UserName  Binding                                                    
30086537005566**** (deleted)  RamRole             ClusterRoleBinding/-/30086537005566****-clusterrolebinding  
24320678733226**** (deleted)  RamUser             ClusterRoleBinding/-/24320678733226****-clusterrolebinding  

Langkah 4: Hapus binding RBAC pengguna RAM dan peran RAM yang ditentukan dalam kluster dan hapus file kubeconfig

Anda dapat menjalankan perintah ack-ram-tool rbac cleanup-user-permissions untuk menghapus binding RBAC pengguna RAM dan peran yang ditentukan dalam kluster serta menghapus file kubeconfig.

Penting
  • Jika log menampilkan pengguna ini telah aktif dalam 7 hari terakhir, pengguna RAM atau peran RAM mengakses kluster dalam tujuh hari sebelumnya. Lanjutkan dengan hati-hati ketika melakukan langkah ini.

  • Sebelum ack-ram-tool menghapus file JSON binding RBAC, ia membuat cadangan file JSON binding RBAC di folder bernama ID kluster.

Cabut izin pengguna RAM atau peran RAM pada kluster tunggal

Jalankan perintah berikut untuk mencabut izin pengguna RAM atau peran RAM pada kluster tunggal:

Anda dapat menjalankan perintah ack-ram-tool rbac scan-user-permissions -c <ID Kluster> untuk mendapatkan nilai <UID>.

ack-ram-tool rbac cleanup-user-permissions -c <ID Kluster> -u <UID>

Output yang diharapkan:

Klik untuk melihat detail

2023-12-12T18:17:10+08:00 INFO mulai memindai pengguna dan binding
2023-12-12T18:17:15+08:00 WARN kami akan membersihkan binding RBAC sebagai berikut:
UID                 UserType  UserName   Binding                                                    
25908395708943****  RamUser   ack-admin  ClusterRoleBinding/-/25908395708943****-clusterrolebinding  
2023-12-12T18:17:15+08:00 WARN kami akan membersihkan izin kubeconfig untuk pengguna sebagai berikut:
UID: 25908395708943****
2023-12-12T18:17:15+08:00 INFO mulai memeriksa log audit kluster untuk pengguna 25908395708943****
2023-12-12T18:17:16+08:00 WARN pengguna ini telah aktif dalam 7 hari terakhir, dan waktu aktivitas terakhir adalah: 2023-12-12T10:27:56+08:00. Anda akan menemukan detail log audit terkait di bawah ini:
sls project: k8s-log-c137a979dec21472c8279c903cfce****
sls logstore: audit-c137a979dec21472c8279c903cfce****
last activity: 2023-12-12T10:27:56+08:00 (auditID: 8f6f1483-77f3-44b3-85cb-f23d1a76e****)
? Apakah Anda yakin ingin membersihkan binding dan izin ini? Ya
2023-12-12T18:17:37+08:00 INFO mulai mencadangkan binding ClusterRoleBinding/-/25908395708943****-clusterrolebinding
2023-12-12T18:17:38+08:00 INFO binding asli ClusterRoleBinding/-/25908395708943****-clusterrolebinding telah dicadangkan ke file c137a979dec21472c8279c903cfce****/ClusterRoleBinding--25908395708943****-clusterrolebinding.json
2023-12-12T18:17:38+08:00 INFO mulai membersihkan izin kubeconfig untuk uid 25908395708943****
2023-12-12T18:17:38+08:00 INFO selesai membersihkan izin kubeconfig untuk uid 25908395708943****
2023-12-12T18:17:38+08:00 INFO semua binding dan izin telah dibersihkan

Cabut izin dari pengguna RAM atau Peran RAM pada semua kluster

Jalankan perintah berikut untuk menghapus binding RBAC pengguna RAM atau peran RAM untuk semua kluster yang dimiliki oleh akun Alibaba Cloud saat ini serta menghapus file kubeconfig:

ack-ram-tool rbac cleanup-user-permissions -c all -u <UID>

Output yang diharapkan:

Klik untuk melihat detail

2023-12-12T19:28:23+08:00 INFO mulai memindai pengguna dan binding untuk semua kluster
2023-12-12T19:28:23+08:00 INFO mulai mendapatkan semua kluster, pengguna, dan peran
2023-12-12T19:28:24+08:00 INFO ---- c401890df511a4362bf24bece4da6**** (test-pro111323223) ----
2023-12-12T19:28:24+08:00 INFO [c401890df511a4362bf24bece4da6****] mulai membersihkan binding dan izin untuk kluster c401890df511a4362bf24bece4da6**** 
2023-12-12T19:28:24+08:00 INFO [c401890df511a4362bf24bece4da6****] mulai memindai pengguna dan binding
2023-12-12T19:28:25+08:00 WARN [c401890df511a4362bf24bece4da6****] kami akan membersihkan binding RBAC sebagai berikut:
UID                 UserType  UserName   Binding                                                    
25908395708943****  RamUser   ack-admin  ClusterRoleBinding/-/25908395708943****-clusterrolebinding  
2023-12-12T19:28:25+08:00 WARN [c401890df511a4362bf24bece4da6****] kami akan membersihkan izin kubeconfig untuk pengguna sebagai berikut:
UID: 259083957089437690
2023-12-12T19:28:25+08:00 INFO [c401890df511a4362bf24bece4da6****] mulai memeriksa log audit kluster untuk pengguna 25908395708943**** 
2023-12-12T19:28:25+08:00 WARN [c401890df511a4362bf24bece4da6****] pengguna ini telah aktif dalam 7 hari terakhir, dan waktu aktivitas terakhir adalah: 2023-12-12T10:27:56+08:00. Anda akan menemukan detail log audit terkait di bawah ini:
sls project: k8s-log-c401890df511a4362bf24bece4da****  
sls logstore: audit-c401890df511a4362bf24bece4da6**** 
last activity: 2023-12-12T10:27:56+08:00 (auditID: 8f6f1483-77f3-44b3-85cb-f23d1a76****)
? Apakah Anda yakin ingin membersihkan binding dan izin ini? Ya
2023-12-12T19:28:49+08:00 INFO [c401890df511a4362bf24bece4da6****] mulai mencadangkan binding ClusterRoleBinding/-/25908395708943**** -clusterrolebinding
2023-12-12T19:28:49+08:00 INFO [c401890df511a4362bf24bece4da6****] binding asli ClusterRoleBinding/-/25908395708943****-clusterrolebinding telah dicadangkan ke file c401890df511a4362bf24bece4da6**** /ClusterRoleBinding--259083957089437XXX-clusterrolebinding.json
2023-12-12T19:28:49+08:00 INFO [c401890df511a4362bf24bece4da6****] mulai membersihkan izin kubeconfig untuk uid 25908395708943**** 
2023-12-12T19:28:49+08:00 INFO [c401890df511a4362bf24bece4da6****] selesai membersihkan izin kubeconfig untuk uid 25908395708943**** 
2023-12-12T19:28:49+08:00 INFO [c401890df511a4362bf24bece4da6****] semua binding dan izin telah dibersihkan
2023-12-12T19:28:49+08:00 INFO ---- c137a979dec21472c8279c903cfce****  (test-pro) ----
2023-12-12T19:28:49+08:00 INFO [c137a979dec21472c8279c903cfce****] mulai membersihkan binding dan izin untuk kluster c137a979dec21472c8279c903cfce**** 
2023-12-12T19:28:49+08:00 INFO [c137a979dec21472c8279c903cfce****] mulai memindai pengguna dan binding
2023-12-12T19:28:51+08:00 WARN [c137a979dec21472c8279c903cfce****] kami akan membersihkan binding RBAC sebagai berikut:
UID                 UserType  UserName   Binding                                                    
25908395708943****   RamUser   ack-admin  ClusterRoleBinding/-/25908395708943**** -clusterrolebinding  
2023-12-12T19:28:51+08:00 WARN [c137a979dec21472c8279c903cfce****] kami akan membersihkan izin kubeconfig untuk pengguna sebagai berikut:
UID: 25908395708943**** 
2023-12-12T19:28:51+08:00 INFO [c137a979dec21472c8279c903cfce****] mulai memeriksa log audit kluster untuk pengguna 25908395708943**** 
2023-12-12T19:28:51+08:00 WARN [c137a979dec21472c8279c903cfce****] pengguna ini telah aktif dalam 7 hari terakhir, dan waktu aktivitas terakhir adalah: 2023-12-12T17:55:50+08:00. Anda akan menemukan detail log audit terkait di bawah ini:
sls project: k8s-log-c137a979dec21472c8279c903cfce**** 
sls logstore: audit-c137a979dec21472c8279c903cfce**** 
last activity: 2023-12-12T17:55:50+08:00 (auditID: 8f6f1483-77f3-44b3-85cb-f23d1a76****)
? Apakah Anda yakin ingin membersihkan binding dan izin ini? Ya
2023-12-12T19:28:52+08:00 INFO [c137a979dec21472c8279c903cfce****] mulai mencadangkan binding ClusterRoleBinding/-/25908395708943****-clusterrolebinding
2023-12-12T19:28:52+08:00 INFO [c137a979dec21472c8279c903cfce****] binding asli ClusterRoleBinding/-/25908395708943****-clusterrolebinding telah dicadangkan ke file c137a979dec21472c8279c903cfce**** /ClusterRoleBinding--25908395708943**** -clusterrolebinding.json
2023-12-12T19:28:52+08:00 INFO [c137a979dec21472c8279c903cfce****] mulai membersihkan izin kubeconfig untuk uid 25908395708943**** 
2023-12-12T19:28:52+08:00 INFO [c137a979dec21472c8279c903cfce****] selesai membersihkan izin kubeconfig untuk uid 25908395708943**** 
2023-12-12T19:28:52+08:00 INFO [c137a979dec21472c8279c903cfce****] semua binding dan izin telah dibersihkan

Referensi

Untuk informasi lebih lanjut tentang cara mengelola file kubeconfig, lihat Hapus file kubeconfig.