Elasticsearch Dapatkan Peranan

Elasticsearch Dapatkan Peranan



“Elasticsearch ialah enjin carian dan analitik yang sangat serba boleh dan berkuasa. Ia boleh menelan, menyusun, mengisih, mengagregat dan mengurus sejumlah besar data teks dengan cepat.

Di sebalik semua itu, salah satu ciri yang paling menonjol dalam Elasticsearch dan keseluruhan ekosistemnya ialah ciri keselamatan kuku besi. Elasticsearch termasuk ciri seperti menandatangani permintaan HTTP dan membenarkan hanya pengguna yang disahkan untuk melakukan operasi pada kluster.







Satu lagi ciri keselamatan dalam Elasticsearch ialah penggunaan pengguna dan peranan. Elasticsearch membolehkan anda menetapkan peranan khusus kepada pengguna dalam kelompok. Ini kemudiannya digunakan untuk menentukan tindakan yang boleh dilakukan oleh nama pengguna pada kluster.



Elasticsearch akan memberikan peranan lalai kepada semua pengguna yang dibuat dalam kelompok. Peranan lalai membolehkan pengguna mengakses titik akhir pengesahan, yang bertanggungjawab untuk menukar kata laluan, mendapatkan maklumat pengguna, dsb.



NOTA: Peranan lalai juga diberikan kepada pengguna tanpa nama.





Teras tutorial ini adalah untuk memberi anda asas peranan Elasticsearch. Menggunakan tutorial ini, anda akan menemui cara untuk mengambil peranan dalam alam asli Elasticsearch dan melihat peranan yang diberikan kepada nama pengguna tertentu.

Mari selami.



API Dapatkan Peranan Elasticsearch

Kami menggunakan Get Roles API untuk mendapatkan maklumat tentang peranan dalam kelompok Elasticsearch. Sintaks permintaan adalah seperti yang ditunjukkan:

DAPATKAN / _keselamatan / peranan


Pertanyaan di atas harus mengembalikan semua peranan dalam sistem.

Untuk mendapatkan maklumat tentang peranan tertentu, anda boleh menggunakan sintaks seperti yang ditunjukkan:

DAPATKAN / _keselamatan / peranan /< nama >


NOTA: API ini memerlukan pengguna mempunyai keistimewaan manage_security pada kluster.

Jika permintaan itu berjaya, pertanyaan harus mengembalikan tatasusunan peranan.

Contoh 1 – Dapatkan Semua Peranan dalam Kluster

Permintaan contoh di bawah akan mendapatkan semula semua peranan dalam kelompok Elasticsearch:

keriting -XGET “http://localhost:9200/_security/role?pretty=true” -H 'kbn-xsrf: pelaporan'


Contoh output ditunjukkan di bawah:

{
'pengguna_apm' : {
'kelompok' : [ ] ,
'Indeks' : [
{
'nama' : [
'apm-*'
] ,
'keistimewaan' : [
'baca' ,
'view_index_metadata'
] ,
'benarkan_indeks_terhad' : salah
} ,
{
'nama' : [
'tetingkap-lebih kurang.*'
] ,
'keistimewaan' : [
'baca' ,
'view_index_metadata'
] ,
'benarkan_indeks_terhad' : salah
} ,
{
'nama' : [
'tetingkap-lebih kurang-*'
] ,
'keistimewaan' : [
'baca' ,
'view_index_metadata'
] ,
'benarkan_indeks_terhad' : salah
} ,
{
'nama' : [
'metrik-apm.*'
] ,
'keistimewaan' : [
'baca' ,
'view_index_metadata'
] ,
'benarkan_indeks_terhad' : salah
} ,
{
'nama' : [
'metrik-apm-*'
] ,
'keistimewaan' : [
'baca' ,
'view_index_metadata'
] ,
'benarkan_indeks_terhad' : salah
} ,
{
'nama' : [
'jejak-apm.*'
] ,
'keistimewaan' : [
'baca' ,
'view_index_metadata'
] ,
'benarkan_indeks_terhad' : salah
} ,


NOTA: Output di atas telah dipotong untuk skop tutorial ini.

Contoh 2 – Dapatkan Maklumat Mengenai Peranan Tertentu

Contoh di bawah mengembalikan maklumat tentang peranan kibana_admin.

keriting -XGET “http://localhost:9200/_security/role/kibana_admin” -H 'kbn-xsrf: pelaporan'


Maklumat peranan yang terhasil adalah seperti yang ditunjukkan:

{
'kibana_admin' : {
'kelompok' : [ ] ,
'Indeks' : [ ] ,
'permohonan' : [
{
'permohonan' : 'kibana-.kibana' ,
'keistimewaan' : [
'semua'
] ,
'sumber' : [
'*'
]
}
] ,
'run_as' : [ ] ,
'metadata' : {
'_terpelihara' : benar
} ,
'metadata_transient' : {
'didayakan' : benar
}
}
}

Dapatkan Maklumat Peranan dalam YAML

Secara lalai, get roles API akan mengembalikan hasil dalam format JSON. Walau bagaimanapun, anda boleh memilih format yang berbeza menggunakan parameter format.

Sintaks adalah seperti yang ditunjukkan:

DAPATKAN / _keselamatan / peranan? format =json / yaml


Sebagai contoh, untuk mendapatkan maklumat tentang peranan kibana_admin dalam format YAML, kami boleh menjalankan:

keriting -XGET 'http://localhost:9200/_security/role/kibana_admin?format=yaml' -H 'kbn-xsrf: pelaporan'


Keluaran yang terhasil:

---
kibana_admin:
kelompok: [ ]
Indeks: [ ]
aplikasi:
- permohonan: 'kibana-.kibana'
keistimewaan:
- 'semua'
sumber:
- '*'
run_as: [ ]
metadata:
_reserved: benar
metadata sementara:
didayakan: benar

Lihat Peranan untuk Pengguna Tertentu

Jika anda ingin melihat maklumat tentang nama pengguna tertentu (termasuk peranan mereka), anda boleh menggunakan permintaan seperti yang ditunjukkan:

DAPATKAN / _keselamatan / pengguna


Sebagai contoh, katakan kita mempunyai nama pengguna 'linuxhint' kita boleh mendapatkan semula maklumat pengguna tersebut seperti yang ditunjukkan:

keriting -XGET “http://locahost:9200/_security/user/linuxhint?format=yaml” -H 'kbn-xsrf: pelaporan'


Permintaan di atas harus mengembalikan maklumat tentang pengguna dalam format YAML seperti yang ditunjukkan:

---
linuxhint:
nama pengguna: 'linux'
peranan:
- 'penonton'
- 'pengguna_pemerhati'
nama penuh: 'linuxhint.com'
e-mel: ' [e-mel dilindungi] '
metadata: { }
didayakan: benar


Kita dapat melihat bahawa pengguna mempunyai peranan penonton dan pengguna_pemerhati.

Lihat Peranan dalam Kibana

Jika anda tidak mahu menggunakan API peranan kucing, anda boleh melihat peranan Elasticsearch dalam Kibana dengan menavigasi ke Pengurusan -> Pengurusan Tindanan.


Seterusnya, navigasi ke Keselamatan -> Peranan


Anda kemudian boleh melihat dan mengurus peranan.

Kesimpulan

Dalam artikel ini, anda mempelajari cara menggunakan API Peranan Elasticsearch untuk melihat maklumat tentang peranan tertentu dalam kelompok. Anda juga menemui cara untuk melihat peranan nama pengguna yang diberikan menggunakan API pengguna.

Terima kasih untuk membaca!