Registri Nacos dari Microservices Engine (MSE) memungkinkan Anda mengonfigurasi izin akses berdasarkan instance, namespace, grup, atau nama layanan. Ini mencegah pengguna jahat untuk mendapatkan atau memodifikasi informasi tentang suatu instance. Topik ini menjelaskan cara mengonfigurasi autentikasi granular halus untuk registri Nacos MSE.
Prasyarat
MSE telah diaktifkan. Untuk informasi lebih lanjut, lihat Aktifkan MSE.
Sebuah instance Nacos MSE telah dibuat. Untuk informasi lebih lanjut, lihat Buat Mesin Nacos.
Otentikasi telah diaktifkan. Untuk informasi lebih lanjut, lihat Aktifkan Otentikasi.
Seorang pengguna RAM atau peran RAM telah dibuat. Untuk informasi lebih lanjut, lihat Buat Pengguna RAM atau Buat Peran RAM.
Prosedur
Topik ini menjelaskan cara memberikan dan mengonfigurasi izin akses pada koneksi langsung mesin seperti yang ditunjukkan pada gambar berikut. Setelah izin diberikan, Anda dapat menggunakan klien Nacos untuk mengakses instance Nacos MSE sebagai pengguna RAM.

Untuk mengonfigurasi dan menggunakan otentikasi akses untuk kontrol mesin, Anda perlu memberikan pengguna RAM izin untuk menggunakan konsol MSE. Untuk informasi lebih lanjut, lihat Berikan Izin pada Sumber Daya Registry Mikroservices.
Langkah 1: Buat kebijakan granular halus
Masuk ke Konsol RAM sebagai administrator RAM.
Di panel navigasi sebelah kiri, pilih .
Pada halaman Policies, klik Create Policy.

Pada halaman Create Policy, klik tab JSON.

Konfigurasikan kebijakan.
Tabel berikut menjelaskan tindakan yang terlibat dalam autentikasi granular halus di registri.
Tindakan
Deskripsi
mse:QueryNacosNaming
Izin baca pada layanan registri Nacos MSE. Izin ini memungkinkan Anda untuk mendapatkan dan memantau layanan menggunakan SDK.
mse:UpdateNacosNaming
Izin pembaruan pada layanan registri Nacos MSE. Izin ini memungkinkan Anda untuk merilis dan memodifikasi layanan menggunakan SDK.
Sumber daya yang terlibat dalam autentikasi granular halus di registri harus ditentukan dalam format berikut:
acs:mse:*:*:instance/{instance_id}/{namespaceId}/{group}/naming/{serviceName}Anda juga dapat memodifikasi dokumen kebijakan berdasarkan deskripsi yang disediakan di Contoh.
Untuk informasi lebih lanjut tentang sintaks dan struktur kebijakan RAM, lihat Struktur dan Sintaks Kebijakan.
Klik Optional advanced optimize di bagian atas halaman, lalu klik Perform. Sistem melakukan operasi berikut selama optimasi lanjutan.
Fitur optimasi kebijakan lanjutan memungkinkan Anda melakukan operasi berikut:
Pisahkan sumber daya atau kondisi yang tidak kompatibel dengan tindakan.
Persempit sumber daya.
Hapus duplikat atau gabungkan pernyataan kebijakan.
Pada halaman Create Policy, klik OK.
Dalam kotak dialog Create Policy, tentukan Name dan Description untuk kebijakan, lalu klik OK.
Langkah 2: Berikan izin kepada pengguna RAM atau peran RAM
Berikan izin kepada pengguna RAM
Masuk ke Konsol RAM sebagai administrator RAM.
Di panel navigasi sebelah kiri, pilih .
Pada halaman Users, temukan pengguna RAM yang diperlukan, lalu klik Add Permissions di kolom Actions.

Anda juga dapat memilih beberapa pengguna RAM dan klik Add Permissions di bagian bawah halaman untuk memberikan izin kepada pengguna RAM sekaligus.
Di panel Grant Permission, pilih Custom Policy dari daftar drop-down di bagian Policy. Masukkan nama kebijakan yang Anda buat di Langkah 1 di bidang tersebut, klik nama kebijakan yang ditampilkan, lalu klik Grant permissions.
Di panel Grant Permission, konfirmasikan bahwa otorisasi berhasil dan klik Close.
Berikan izin kepada peran RAM
Masuk ke Konsol RAM sebagai administrator RAM.
Di panel navigasi sebelah kiri, pilih .
Pada halaman Roles, temukan peran RAM yang ingin Anda kelola dan klik Grant Permission di kolom Actions.

Anda juga dapat memilih beberapa peran RAM dan klik Grant Permission di bagian bawah daftar peran RAM untuk memberikan izin kepada beberapa peran RAM sekaligus.
Di panel Grant Permission, pilih Custom Policy dari daftar drop-down di bagian Policy. Masukkan nama kebijakan yang Anda buat di Langkah 1 di bidang tersebut, klik nama kebijakan yang ditampilkan, lalu klik Grant permissions.
Di panel Grant Permission, konfirmasikan bahwa otorisasi berhasil dan klik Close.
Contoh
Berikan pengguna izin hanya-baca pada layanan instance tertentu.
{ "Version": "1", "Statement": [ { "Action": [ "mse:QueryNacosNaming" ], "Resource": [ "acs:mse:*:*:instance/${instanceId1}", "acs:mse:*:*:instance/${instanceId2}" ], "Effect": "Allow" } ] }Berikan pengguna izin untuk membaca dan memodifikasi layanan instance tertentu.
{ "Version": "1", "Statement": [ { "Action": [ "mse:QueryNacosNaming", "mse:UpdateNacosNaming" ], "Resource": [ "acs:mse:*:*:instance/${instanceId1}", "acs:mse:*:*:instance/${instanceId2}" ], "Effect": "Allow" } ] }Catatan${instanceId1} dan ${instanceId2} menunjukkan ID instance.
Berikan pengguna izin hanya-baca pada layanan di namespace tertentu dari sebuah instance.
{ "Statement": [ { "Effect": "Allow", "Action": "mse:QueryNacosNaming", "Resource": "acs:mse:*:*:instance/${instance_id}/${namespaceId}" } ], "Version": "1" }Berikan pengguna izin untuk membaca dan memodifikasi layanan grup ${group} di namespace tertentu dari sebuah instance.
{ "Statement": [ { "Effect": "Allow", "Action": [ "mse:QueryNacosNaming", "mse:UpdateNacosNaming" ], "Resource": "acs:mse:*:*:instance/${instance_id}/${namespaceId}/${group}" } ], "Version": "1" }Berikan pengguna izin hanya-baca pada layanan ${serviceName} dari grup ${group}.
{ "Statement": [ { "Effect": "Allow", "Action": "mse:QueryNacosNaming", "Resource": "acs:mse:*:*:instance/${instance_id}/${namespaceId}/${group}/naming/${serviceName}" } ], "Version": "1" }Berikan pengguna izin untuk membaca dan memodifikasi layanan ${serviceName} dari grup ${group}.
{ "Statement": [ { "Effect": "Allow", "Action": [ "mse:QueryNacosNaming", "mse:UpdateNacosNaming" ], "Resource": "acs:mse:*:*:instance/${instance_id}/${namespaceId}/${group}/naming/${serviceName}" } ], "Version": "1" }
Referensi
Untuk informasi lebih lanjut tentang cara mengaktifkan otentikasi untuk instance MSE, lihat Otentikasi Akses oleh Klien Nacos.