全部产品
Search
文档中心

Elasticsearch:Buat kebijakan kustom

更新时间:Jul 02, 2025

Jika kebijakan sistem yang disediakan oleh Alibaba Cloud Elasticsearch tidak memenuhi kebutuhan Anda, Anda dapat membuat kebijakan kustom. Kebijakan kustom memungkinkan manajemen izin yang lebih rinci dibandingkan dengan kebijakan sistem. Topik ini menjelaskan cara membuat kebijakan kustom dan memberikan contoh kebijakan.

Informasi latar belakang

Tabel berikut mencantumkan kebijakan sistem yang disediakan oleh Alibaba Cloud Elasticsearch.

Kebijakan sistem

Deskripsi

AliyunElasticsearchReadOnlyAccess

Mengizinkan izin baca-saja pada kluster Elasticsearch atau Logstash. Kebijakan ini dapat dilampirkan ke pengguna baca-saja.

AliyunElasticsearchFullAccess

Mengizinkan izin manajemen pada kluster Elasticsearch, kluster Logstash, atau pengirim Beats. Kebijakan ini dapat dilampirkan ke administrator.

Catatan

Kebijakan sebelumnya hanya mencakup izin pada kluster Elasticsearch, kluster Logstash, atau pengirim Beats. Kebijakan tersebut tidak mencakup izin pada CloudMonitor atau tag. Jika Anda ingin memberikan izin pada CloudMonitor atau tag, Anda harus membuat kebijakan kustom terkait dan melampirkannya. Untuk informasi lebih lanjut, lihat Kebijakan untuk Izin Operasi pada Kluster Tertentu.

Prasyarat

Anda telah memahami struktur dan sintaksis kebijakan. Untuk informasi lebih lanjut, lihat Struktur dan Sintaksis Kebijakan.

Peringatan

Kebijakan kustom hanya berlaku di tingkat akun dan tidak berlaku di tingkat grup sumber daya. Jika Anda ingin konsol menampilkan hanya kluster tertentu untuk pengguna RAM, Anda dapat menggunakan grup sumber daya untuk memberikan izin terkait pada kluster kepada pengguna RAM. Untuk informasi lebih lanjut, lihat Gunakan Grup Sumber Daya untuk Memberikan Izin pada Kluster.

Prosedur

Untuk informasi lebih lanjut, lihat Buat Kebijakan Kustom di Tab JSON. Anda dapat memasukkan dokumen kebijakan sesuai dengan persyaratan bisnis Anda. Anda juga dapat mengimpor kebijakan sistem yang ada sesuai petunjuk dan memodifikasi kebijakan untuk digunakan sebagai kebijakan kustom.

Contoh:

  • Izin untuk mengakses virtual private cloud (VPC) yang termasuk dalam akun Alibaba Cloud Anda

    "elasticsearch:DescribeVpcs","elasticsearch:DescribeVSwitches"
    {
      "Version": "1",
      "Statement": [
        {
          "Action": [
            "elasticsearch:DescribeVpcs",
            "elasticsearch:DescribeVSwitches"
          ],
          "Resource": "*",
          "Effect": "Allow"
        }
      ]
    }
  • Izin untuk membayar pesanan

    {
      "Version": "1",
      "Statement": [
        {
          "Action": [
            "bss:PayOrder"
          ],
          "Resource": "*",
          "Effect": "Allow"
        }
      ]
    }

Untuk informasi lebih lanjut, lihat Contoh Kebijakan.

Contoh kebijakan

Penting

Sebelum menggunakan kode sampel yang disediakan dalam bagian ini, ganti informasi berikut dengan informasi aktual Anda:

  • <yourAccountId>: Ganti dengan ID akun Alibaba Cloud Anda. Wildcard (*) tidak didukung. Untuk mendapatkan ID akun Alibaba Cloud Anda, masuk ke Konsol Manajemen Alibaba Cloud dan arahkan penunjuk ke gambar profil di sudut kanan atas. Kemudian, Anda dapat melihat ID of your Alibaba Cloud account.

  • <yourInstanceId>: Ganti dengan ID kluster Elasticsearch yang izinnya ingin Anda berikan. Wildcard (*) tidak didukung. Untuk informasi lebih lanjut tentang cara mendapatkan ID, lihat Lihat Informasi Dasar Kluster.

Kebijakan untuk administrator

Dalam contoh ini, semua izin operasi pada semua kluster Elasticsearch diberikan kepada pengguna RAM dari akun Alibaba Cloud yang ID-nya ditunjukkan oleh <yourAccountId>.

{
    "Statement": [
        {
            "Action": [
                "elasticsearch:*"
            ],
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Action": [
                "cms:*"
            ],
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Action": "bss:PayOrder",
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Action": "ram:CreateServiceLinkedRole",
            "Resource": "*",
            "Effect": "Allow",
            "Condition": {
                "StringEquals": {
                    "ram:ServiceName": [
                        "collector.elasticsearch.aliyuncs.com"
                    ]
                }
            }
        }
    ],
    "Version": "1"
}

Kebijakan untuk izin operasi pada kluster tertentu

Dalam contoh ini, izin berikut diberikan kepada pengguna RAM dari akun Alibaba Cloud yang ID-nya ditunjukkan oleh <yourAccountId>:

  • Izin pada CloudMonitor

  • Izin untuk melakukan semua operasi terkait Elasticsearch pada kluster tertentu

  • Izin untuk melihat kluster

  • Izin untuk melihat semua tag yang ditambahkan ke kluster

  • Izin untuk melihat pengirim

Catatan

Antarmuka eksternal yang digunakan untuk memanggil beberapa layanan, seperti Beats, Pemantauan Lanjutan dan Peringatan, dan Tag, diintegrasikan ke halaman manajemen kluster konsol Elasticsearch. Oleh karena itu, saat memberikan izin pada kluster tertentu, Anda harus merujuk pada dokumen kebijakan sampel berikut.

{
    "Statement": [
        {
            "Action": [
                "elasticsearch:*"
            ],
            "Effect": "Allow",
            "Resource": "acs:elasticsearch:*:<yourAccountId>:instances/<yourInstanceId>"
        },
        {
            "Action": [
                "cms:DescribeActiveMetricRuleList",
                "cms:ListAlarm",
                "cms:QueryMetricList"
            ],
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Action": [
                "elasticsearch:ListTags"
            ],
            "Effect": "Allow",
            "Resource": "acs:elasticsearch:*:<yourAccountId>:tags/*"
        },
        {
            "Action": [
                "elasticsearch:ListInstance",
                "elasticsearch:ListSnapshotReposByInstanceId"
            ],
            "Effect": "Allow",
            "Resource": "acs:elasticsearch:*:<yourAccountId>:instances/*"
        },
        {
            "Action": [
                "elasticsearch:ListLogstash"
            ],
            "Effect": "Allow",
            "Resource": "acs:elasticsearch:*:<yourAccountId>:logstashes/*"
        }, 
        {
            "Action": [
                "elasticsearch:ListCollectors"
            ],
            "Effect": "Allow",
            "Resource": "acs:elasticsearch:*:<yourAccountId>:collectors/*"
        }
    ],
    "Version": "1"
}
Tabel 1. Elemen Action

Action

Deskripsi

[
  "cms:DescribeActiveMetricRuleList",
  "cms:ListAlarm",
  "cms:QueryMetricList"
]

Izin pada CloudMonitor.

  • cms:DescribeActiveMetricRuleList: izin untuk meminta layanan tempat CloudMonitor diaktifkan dalam akun Alibaba Cloud.

  • cms:ListAlarm: izin untuk meminta semua atau aturan peringatan tertentu.

  • cms:QueryMetricList: izin untuk meminta data pemantauan instance atau kluster layanan tertentu dalam periode tertentu.

"bss:PayOrder"

Izin untuk membayar pesanan. Setelah pengguna RAM diberikan izin, Anda dapat membayar pesanan pembelian sumber daya sebagai pengguna RAM.

[
  "elasticsearch:DescribeVpcs",
  "elasticsearch:DescribeVSwitches"
]

Izin untuk mengakses VPC dan vSwitch yang termasuk dalam akun Alibaba Cloud. Setelah pengguna RAM diberikan izin, VPC dan vSwitch yang termasuk dalam akun Alibaba Cloud dapat dipilih saat Anda membeli sumber daya sebagai pengguna RAM.

Penting

Saat Anda memberi otorisasi kepada pengguna RAM untuk membeli sumber daya, Anda juga harus menentukan ["bss:PayOrder"] di elemen Action. Jika tidak, sistem akan menampilkan pesan yang menunjukkan izin tidak cukup saat Anda membeli sumber daya sebagai pengguna RAM.

[
  "elasticsearch:*"
]

Semua izin operasi pada kluster Elasticsearch. Setelah pengguna RAM diberikan izin, Anda dapat melakukan operasi pada semua atau kluster tertentu sebagai pengguna RAM.

Penting

Izin yang ditentukan oleh elasticsearch:* tidak termasuk izin pada layanan Pemantauan dan Peringatan Lanjutan, CloudMonitor, atau Tag. Anda harus secara terpisah menentukan izin pada layanan-layanan ini. Jika Anda tidak menentukan izin pada layanan-layanan ini, sistem akan menampilkan pesan yang menunjukkan izin tidak cukup setelah Anda masuk ke halaman terkait sebagai pengguna RAM. Namun, fitur yang diotorisasi di halaman ini dapat digunakan.

[
  "elasticsearch:ListTags"
]

Izin untuk meminta semua tag yang ditambahkan ke kluster Elasticsearch. Setelah pengguna RAM diberikan izin, Anda dapat melihat semua tag yang ditambahkan ke kluster Elasticsearch sebagai pengguna RAM.

[
  "elasticsearch:ListInstance",
  "elasticsearch:ListSnapshotReposByInstanceId" 
]
  • elasticsearch:ListInstance: izin untuk meminta kluster Elasticsearch.

  • elasticsearch:ListSnapshotReposByInstanceId: izin untuk meminta repositori Object Storage Service (OSS) bersama.

[
  "elasticsearch:ListCollectors"
]

Izin untuk meminta pengirim Beats. Setelah pengguna RAM diberikan izin, Anda dapat melihat semua pengirim Beats yang dibuat di konsol Elasticsearch sebagai pengguna RAM.

[
  "elasticsearch:ListLogstash"
]

Izin untuk meminta kluster Logstash. Setelah pengguna RAM diberikan izin, Anda dapat melihat semua kluster Logstash di wilayah terkait pada halaman Kluster Logstash sebagai pengguna RAM.

Tabel 2. Elemen Effect

Effect

Deskripsi

Allow

Menunjukkan bahwa pengguna RAM dapat digunakan untuk melakukan operasi yang ditentukan dalam elemen Action.

Deny

Menunjukkan bahwa pengguna RAM tidak dapat digunakan untuk melakukan operasi yang ditentukan dalam elemen Action.

Tabel 3. Elemen Resource

Untuk informasi lebih lanjut, lihat Objek Elasticsearch yang Didukung untuk Otorisasi.

Resource

Deskripsi

*

Menunjukkan semua kluster.

<yourInstanceId>

Menunjukkan kluster tertentu. Anda harus mengganti ID dengan ID kluster yang izinnya ingin Anda berikan. Untuk informasi lebih lanjut tentang cara mendapatkan ID, lihat Lihat informasi dasar kluster.

Kebijakan untuk Operasi API

Tabel berikut mencantumkan objek yang perlu Anda tentukan untuk elemen Resource dan Action dalam kebijakan yang digunakan untuk memberikan izin memanggil operasi API.

Metode

URI

Resource

Action

GET

/instances

instances/*

ListInstance

POST

/instances

instances/*

CreateInstance

GET

/instances/instanceId

instances/instanceId

DescribeInstance

DELETE

/instances/instanceId

instances/instanceId

DeleteInstance

POST

/instances/instanceId/actions/restart

instances/instanceId

RestartInstance

PUT

/instances/instanceId

instances/instanceId

UpdateInstance

Apa yang harus dilakukan selanjutnya

Setelah kebijakan kustom dibuat, gunakan akun Alibaba Cloud Anda untuk melampirkan kebijakan ke pengguna RAM di konsol RAM atau menggunakan SDK RAM. Untuk informasi lebih lanjut, lihat Berikan Izin kepada Pengguna RAM.