Jika file sumber plugin atau kamus Anda disimpan di Object Storage Service (OSS), Anda dapat mengunggahnya dengan memberikan alamat OSS di Konsol Elasticsearch (ES). Untuk melakukannya, Anda harus memberikan akses ES ke path OSS yang ditentukan melalui peran layanan.
Pengenalan peran layanan ES
Peran layanan adalah jenis Peran RAM (Resource Access Management) di mana entitas tepercaya merupakan Layanan Alibaba Cloud. Peran ini dirancang untuk mengotorisasi akses lintas berbagai Layanan Alibaba Cloud. Untuk informasi selengkapnya, lihat Ikhtisar Peran RAM.
Saat Anda memperbarui kamus dengan memberikan path OSS di konsol dan tidak ada peran yang memiliki izin yang diperlukan, Anda harus mengotorisasi pembuatan peran layanan. ES mengasumsikan peran ini untuk mengakses file pada path OSS yang ditentukan dan memperbarui kamus di instans ES Anda tanpa perlu mengatur bucket OSS ke mode public-read.
Detail peran ini adalah sebagai berikut:
-
Nama layanan: elasticsearch.aliyuncs.com
-
Nama peran: AliyunElasticsearchAccessingOSSRole
-
Nama kebijakan akses: AliyunElasticsearchAccessingOSSRolePolicy
-
Dokumen kebijakan peran
{ "Version": "1", "Statement": [ { "Action": [ "oss:GetObject", "oss:GetObjectMetadata", "oss:GetObjectMeta" ], "Resource": "*", "Effect": "Allow" } ] }
Hapus peran layanan
Untuk menghapus peran layanan, buka Konsol Resource Access Management (RAM). Untuk informasi selengkapnya, lihat Hapus Peran RAM.
Setelah Anda menghapus peran layanan, fitur-fitur yang bergantung padanya tidak akan berfungsi dengan benar. Lakukan tindakan ini dengan hati-hati.
Contoh: Batasi izin peran layanan
Untuk membatasi akses yang dapat dilakukan oleh peran layanan, sesuaikan kebijakan otorisasinya sebagai berikut:
-
Tetapkan tag bucket
Gunakan tag bucket untuk mengelola izin bucket OSS. Untuk informasi selengkapnya, lihat Kelola tag bucket.
-
Masuk ke Konsol OSS.
-
Di panel navigasi sebelah kiri, klik Buckets. Pada halaman yang muncul, klik nama bucket target.
-
Tetapkan tag bucket.

-
-
Buat kebijakan RAM. Untuk informasi selengkapnya, lihat Buat kebijakan kustom dalam mode skrip.
Ubah elemen Resource untuk membatasi akses hanya ke bucket tertentu, atau ubah elemen Condition untuk membatasi akses hanya ke bucket yang memiliki tag tertentu. Contoh:
{ "Version": "1", "Statement": [ { "Action": [ "oss:GetObject", "oss:GetObjectMetadata", "oss:GetObjectMeta" ], "Resource": [ "acs:oss:*:193248xxxxxxx:*" ], "Effect": "Allow", "Condition": { "StringEquals": { "oss:BucketTag/key1":"value1" } } } ] } -
Anda dapat mengedit izin AliyunElasticsearchAccessingOSSRole dan menambahkan kebijakan kustom yang telah Anda buat pada langkah sebelumnya.
FAQ
T: Mengapa saya menerima kode kesalahan ElasticsearchNoPermissionForCurrentBucket saat membuat permintaan OpenAPI seperti UpdateDict, UpdateHotIkDicts, UpdateSynonymsDicts, atau UpdateAliwsDict?
J: Instans kontrol cloud-native (versi 7.16, 8.5, dan 8.9) hanya dapat membaca file kamus dari OSS melalui peran layanan Alibaba Cloud. Akses langsung ke alamat OSS dengan mode public-read tidak didukung. Buka halaman otorisasi untuk memberikan izin yang diperlukan. Hal ini berlaku untuk pembaruan sinonim, pembaruan kamus IK (cold dan hot), serta pembaruan kamus ali-ws dari OSS.