Menjalankan perintah menggunakan prinsip hak istimewa minimal adalah praktik terbaik dalam pengelolaan izin. Anda dapat menjalankan perintah Asisten Cloud sebagai pengguna biasa, bukan sebagai root atau pengguna sistem. Topik ini menjelaskan cara menggunakan kontrol akses Resource Access Management (RAM) untuk mengizinkan pengguna biasa menjalankan perintah Asisten Cloud.
Prasyarat
Anda telah membuat pengguna biasa pada instance Elastic Compute Service (ECS). Topik ini menggunakan pengguna biasa user01 dan user02 sebagai contoh.
Informasi latar belakang
Saat menjalankan perintah Asisten Cloud tanpa izin tertentu, perintah tersebut berjalan dengan izin tertinggi secara default pada instance ECS. Sebagai contoh, perintah dijalankan sebagai pengguna root pada instance Linux dan sebagai pengguna sistem pada instance Windows.
Untuk alasan keamanan, Anda mungkin perlu membatasi penggunaan pengguna root atau sistem pada instance ECS. Anda dapat menggunakan pengguna RAM dan mengonfigurasi kebijakan akses untuk mencegah pengguna root atau sistem menjalankan perintah Asisten Cloud. Anda juga dapat memberikan izin kepada pengguna biasa tertentu, seperti user01 dan user02, untuk menjalankan perintah tersebut.
Konfigurasikan pengguna biasa pada instance Linux untuk menjalankan perintah Asisten Cloud
Untuk menjalankan perintah Asisten Cloud hanya pada instance Linux, ikuti langkah-langkah berikut untuk mencegah pengguna RAM menjalankan perintah sebagai pengguna root.
Masuk ke Konsol Resource Access Management (RAM) dengan Akun Alibaba Cloud Anda.
Buat pengguna RAM. Untuk informasi lebih lanjut, lihat Buat Pengguna RAM.
Tabel berikut memberikan contoh informasi pengguna RAM.
Nama
Contoh
Logon Name
commandUser
Display Name
commandUser
Access Mode
Topik ini memberikan instruksi untuk menggunakan Asisten Cloud melalui Konsol Alibaba Cloud dan OpenAPI. Di sini, pilih Console Access dan Programmatic Access.
CatatanPilih mode akses sesuai kebutuhan untuk menerapkan prinsip hak istimewa minimal.
Set Password
Pilih Automatically Generate Password.
Require Password Reset
Pilih User Must Reset Password At Next Logon.
Multi-Factor Authentication (MFA)
Pilih Not Required.
Setelah membuat pengguna RAM, simpan nama pengguna, kata sandi, dan AccessKey.
Buat kebijakan akses untuk Asisten Cloud. Untuk informasi lebih lanjut, lihat Buat Kebijakan Kustom.

Buat kebijakan kustom bernama commandUserPolicy untuk menentukan pengguna mana saja pada instance ECS yang dapat menjalankan perintah Asisten Cloud. Berikut adalah dua contoh kebijakan. Anda dapat memodifikasinya sesuai kebutuhan.
Kebijakan RAM untuk mengizinkan pengguna biasa tertentu (user01 dan user02) pada instance ECS menjalankan perintah Asisten Cloud:
{ "Statement": [ { "Effect": "Allow", "Action": [ "ecs:InvokeCommand", "ecs:RunCommand" ], "Resource": [ "acs:ecs:*:*:instance/*", "acs:ecs:*:*:command/*" ], "Condition": { "StringEquals": { "ecs:CommandRunAs": [ "user01", "user02" ] } } } ], "Version": "1" }CatatanUntuk mengizinkan pengguna lain, modifikasi atau tambahkan nama pengguna di blok Condition.
Kebijakan RAM untuk mencegah pengguna tertentu (root dan system) pada instance ECS menjalankan perintah Asisten Cloud:
{ "Statement": [ { "Effect": "Allow", "Action": [ "ecs:InvokeCommand", "ecs:RunCommand" ], "Resource": [ "acs:ecs:*:*:instance/*", "acs:ecs:*:*:command/*" ], "Condition": { "StringNotEqualsIgnoreCase": { "ecs:CommandRunAs": [ "system", "root" ] } } } ], "Version": "1" }CatatanUntuk membatasi pengguna lain, modifikasi atau tambahkan nama pengguna di blok Condition.
Berikan pengguna RAM izin baca-saja untuk ECS dan izin yang diperlukan untuk Asisten Cloud. Untuk informasi lebih lanjut, lihat Berikan Izin kepada Pengguna RAM.

Untuk izin baca-saja ECS, pilih AliyunECSReadOnlyAccess.
Untuk izin Asisten Cloud, pilih commandUserPolicy yang Anda buat pada langkah sebelumnya.
Masuk ke Konsol Manajemen Alibaba Cloud sebagai pengguna RAM.
Jalankan perintah Asisten Cloud untuk memverifikasi konfigurasi. Untuk informasi lebih lanjut, lihat Buat dan Jalankan Perintah.
Untuk memverifikasi konfigurasi di konsol, tentukan pengguna untuk menjalankan perintah seperti yang ditunjukkan pada gambar berikut.

Pengguna user01 dapat menjalankan perintah Asisten Cloud, tetapi pengguna root tidak bisa.
Untuk memverifikasi menggunakan antarmuka baris perintah (CLI), jalankan perintah seperti yang ditunjukkan pada gambar berikut. Pengguna user01 dapat menjalankan perintah Asisten Cloud, tetapi pengguna root tidak bisa.

Konfigurasikan pengguna biasa pada instance Windows untuk menjalankan perintah Asisten Cloud
Untuk menjalankan perintah Asisten Cloud pada instance Windows, Anda harus menyediakan nama pengguna dan kata sandi. Untuk keamanan data, simpan kata sandi logon Windows Anda di CloudOps Orchestration Service dan enkripsi dengan Key Management Service (KMS). Untuk informasi lebih lanjut, lihat Apa Itu Layanan Orkestrasi CloudOps? dan Apa Itu Key Management Service?.
Ikuti langkah-langkah berikut untuk mencegah pengguna RAM menjalankan perintah Asisten Cloud sebagai pengguna root atau sistem.
Masuk ke Konsol Resource Access Management (RAM) dengan Akun Alibaba Cloud Anda.
Buat pengguna RAM. Untuk informasi lebih lanjut, lihat Buat Pengguna RAM.
Tabel berikut memberikan contoh informasi pengguna RAM.
Nama
Contoh
Logon Name
commandUser
Display Name
commandUser
Access Mode
Topik ini memberikan instruksi untuk menggunakan Asisten Cloud melalui Konsol Alibaba Cloud dan OpenAPI. Di sini, pilih Console Access dan Programmatic Access.
CatatanPilih mode akses sesuai kebutuhan untuk menerapkan prinsip hak istimewa minimal.
Set Password
Pilih Automatically Generate Password.
Require Password Reset
Pilih User Must Reset Password At Next Logon.
Multi-Factor Authentication (MFA)
Pilih Not Required.
Setelah membuat pengguna RAM, simpan nama pengguna, kata sandi, dan AccessKey.
Buat kebijakan akses untuk Asisten Cloud dan KMS. Untuk informasi lebih lanjut, lihat Buat Kebijakan Kustom.
Izin Asisten Cloud:
Buat kebijakan kustom bernama commandUserPolicy untuk menentukan pengguna mana saja pada instance ECS yang dapat menjalankan perintah Asisten Cloud. Berikut adalah dua contoh kebijakan. Anda dapat memodifikasinya sesuai kebutuhan.
Kebijakan RAM untuk mengizinkan pengguna biasa tertentu (user01 dan user02) pada instance ECS menjalankan perintah Asisten Cloud:
{ "Statement": [ { "Effect": "Allow", "Action": [ "ecs:InvokeCommand", "ecs:RunCommand" ], "Resource": [ "acs:ecs:*:*:instance/*", "acs:ecs:*:*:command/*" ], "Condition": { "StringEquals": { "ecs:CommandRunAs": [ "user01", "user02" ] } } } ], "Version": "1" }CatatanUntuk mengizinkan pengguna lain, modifikasi atau tambahkan nama pengguna di blok Condition.
Kebijakan RAM untuk mencegah pengguna tertentu (root dan system) pada instance ECS menjalankan perintah Asisten Cloud:
{ "Statement": [ { "Effect": "Allow", "Action": [ "ecs:InvokeCommand", "ecs:RunCommand" ], "Resource": [ "acs:ecs:*:*:instance/*", "acs:ecs:*:*:command/*" ], "Condition": { "StringNotEqualsIgnoreCase": { "ecs:CommandRunAs": [ "system", "root" ] } } } ], "Version": "1" }CatatanUntuk membatasi pengguna lain, modifikasi atau tambahkan nama pengguna di blok Condition.
Izin KMS:
Buat kebijakan kustom bernama kmsPolicy. Berikut adalah contoh kebijakan. Untuk informasi lebih lanjut, lihat Contoh Kebijakan Otorisasi Umum.
{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "kms:List*", "kms:Describe*", "kms:Encrypt", "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": [ "*" ] } ] }
Berikan pengguna RAM izin yang diperlukan untuk ECS, OOS, Asisten Cloud, dan KMS. Untuk informasi lebih lanjut, lihat Berikan Izin kepada Pengguna RAM.

Untuk izin baca-saja ECS, pilih AliyunECSReadOnlyAccess.
Untuk izin baca-saja OOS, pilih AliyunOOSReadOnlyAccess.
Untuk izin Asisten Cloud, pilih commandUserPolicy yang Anda buat pada langkah sebelumnya.
Untuk izin KMS, pilih kmsPolicy yang Anda buat pada langkah sebelumnya.
Konfigurasikan Peran RAM untuk instance Windows.
Buat izin yang diperlukan untuk Peran RAM. Untuk informasi lebih lanjut, lihat Buat Kebijakan Kustom.
Kebijakan adalah sebagai berikut:
{ "Version": "1", "Statement": [ { "Action": [ "kms:GetSecretValue" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "oos:GetSecretParameter" ], "Effect": "Allow", "Resource": "*" } ] }Buat Peran RAM. Untuk informasi lebih lanjut, lihat Buat Peran RAM untuk Layanan Tepercaya Alibaba Cloud.
Tabel berikut memberikan contoh konfigurasi.
Nama
Contoh
Trusted Entity Type
Pilih Alibaba Cloud Service.
Role Type
Pilih Service Role.
Role Name
AxtSecretRamRole
Trusted Entity Name
Dari daftar drop-down, pilih Elastic Compute Service / ECS.
Berikan izin kepada Peran RAM. Untuk informasi lebih lanjut, lihat Berikan Izin kepada Peran RAM.
Pasangkan Peran RAM ke instance ECS. Untuk informasi lebih lanjut, lihat Pasangkan Peran RAM Instans.
Buat parameter terenkripsi di OOS untuk menyimpan kata sandi logon Windows. Untuk informasi lebih lanjut, lihat Buat Parameter Terenkripsi.
CatatanParameter terenkripsi OOS dan instance ECS harus berada di wilayah yang sama. Jika tidak, instance ECS tidak dapat mengakses kata sandi yang disimpan.
Tabel berikut menunjukkan nilai contoh untuk menyimpan kata sandi pengguna user01.
Nama
Contoh
Parameter Name
axtSecretPassword
KMS Key ID
Gunakan Default Service CMK bawaan.
Value
Kata sandi logon untuk instance Windows. Masukkan kata sandi logon untuk pengguna user01.
Masuk ke Konsol Manajemen Alibaba Cloud sebagai pengguna RAM.
Jalankan perintah Asisten Cloud untuk memverifikasi konfigurasi. Untuk informasi lebih lanjut, lihat Buat dan Jalankan Perintah.
Jalankan perintah Asisten Cloud pada instance Windows untuk memverifikasi bahwa pengaturan izin efektif.
Untuk memverifikasi konfigurasi di konsol, tentukan pengguna untuk menjalankan perintah dan parameter terenkripsi OOS yang menyimpan kata sandi, seperti yang ditunjukkan pada gambar berikut.

Pengguna user01 dapat menjalankan perintah Asisten Cloud, tetapi pengguna sistem tidak bisa.
Untuk memverifikasi menggunakan CLI, jalankan perintah seperti yang ditunjukkan pada gambar berikut. Pengguna user01 dapat menjalankan perintah Asisten Cloud, tetapi pengguna sistem tidak bisa.
