Elasticsearch Dapatkan Peran

Elasticsearch Dapatkan Peran



“Elasticsearch adalah mesin pencari dan analitik yang sangat serbaguna dan kuat. Itu dapat dengan cepat menyerap, mengatur, mengurutkan, menggabungkan, dan mengelola data teks dalam jumlah besar.

Terlepas dari semua itu, salah satu fitur paling menonjol di Elasticsearch dan seluruh ekosistemnya adalah fitur keamanan yang ketat. Elasticsearch menyertakan fitur seperti penandatanganan permintaan HTTP dan hanya mengizinkan pengguna yang diautentikasi untuk melakukan operasi di cluster.







Fitur keamanan lain di Elasticsearch adalah penggunaan pengguna dan peran. Elasticsearch memungkinkan Anda untuk menetapkan peran tertentu kepada pengguna di cluster. Ini kemudian digunakan untuk menentukan tindakan apa yang dapat dilakukan nama pengguna di cluster.



Elasticsearch akan menetapkan peran default untuk semua pengguna yang dibuat di cluster. Peran default memungkinkan pengguna untuk mengakses titik akhir autentikasi, yang bertanggung jawab untuk mengubah kata sandi, mengambil informasi pengguna, dll.”



CATATAN: Peran default juga ditetapkan untuk pengguna anonim.





Inti dari tutorial ini adalah memberi Anda dasar-dasar peran Elasticsearch. Dengan menggunakan tutorial ini, Anda akan menemukan cara mengambil peran di ranah asli Elasticsearch dan melihat peran yang ditetapkan untuk nama pengguna tertentu.

Mari selami.



Elasticsearch Dapatkan Peran API

Kami menggunakan Get Roles API untuk mengambil informasi tentang peran di cluster Elasticsearch. Sintaks permintaan adalah seperti yang ditunjukkan:

DAPATKAN / _keamanan / peran


Kueri di atas harus mengembalikan semua peran dalam sistem.

Untuk mengambil informasi tentang peran tertentu, Anda dapat menggunakan sintaks seperti yang ditunjukkan:

DAPATKAN / _keamanan / peran /< nama >


CATATAN: API ini mengharuskan pengguna untuk memiliki hak istimewa manage_security di cluster.

Jika permintaan berhasil, kueri harus mengembalikan larik peran.

Contoh 1 – Ambil Semua Peran di Cluster

Contoh permintaan di bawah ini akan mengambil semua peran di cluster Elasticsearch:

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


Contoh output ditunjukkan di bawah ini:

{
'apm_user' : {
'gugus' : [ ] ,
'indeks' : [
{
'nama' : [
'apm-*'
] ,
'hak istimewa' : [
'Baca' ,
'tampilan_indeks_metadata'
] ,
'allow_restricted_indexes' : Salah
} ,
{
'nama' : [
'sekitar-jendela*'
] ,
'hak istimewa' : [
'Baca' ,
'tampilan_indeks_metadata'
] ,
'allow_restricted_indexes' : Salah
} ,
{
'nama' : [
'jendela-kira-kira-*'
] ,
'hak istimewa' : [
'Baca' ,
'tampilan_indeks_metadata'
] ,
'allow_restricted_indexes' : Salah
} ,
{
'nama' : [
'metrik-apm.*'
] ,
'hak istimewa' : [
'Baca' ,
'tampilan_indeks_metadata'
] ,
'allow_restricted_indexes' : Salah
} ,
{
'nama' : [
'metrik-apm-*'
] ,
'hak istimewa' : [
'Baca' ,
'tampilan_indeks_metadata'
] ,
'allow_restricted_indexes' : Salah
} ,
{
'nama' : [
'jejak-apm.*'
] ,
'hak istimewa' : [
'Baca' ,
'tampilan_indeks_metadata'
] ,
'allow_restricted_indexes' : Salah
} ,


CATATAN: Output di atas telah dipotong untuk cakupan tutorial ini.

Contoh 2 – Dapatkan Informasi Tentang Peran Tertentu

Contoh di bawah ini mengembalikan informasi tentang peran kibana_admin.

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


Informasi peran yang dihasilkan adalah seperti yang ditunjukkan:

{
'kibana_admin' : {
'gugus' : [ ] ,
'indeks' : [ ] ,
'aplikasi' : [
{
'aplikasi' : 'kibana-.kibana' ,
'hak istimewa' : [
'semua'
] ,
'sumber daya' : [
'*'
]
}
] ,
'lari_as' : [ ] ,
'metadata' : {
'_disimpan' : BENAR
} ,
'transient_metadata' : {
'diaktifkan' : BENAR
}
}
}

Ambil Informasi Peran di YAML

Secara default, get role API akan mengembalikan hasilnya dalam format JSON. Namun, Anda dapat memilih format yang berbeda menggunakan parameter format.

Sintaksnya seperti yang ditunjukkan:

DAPATKAN / _keamanan / peran? format =json / yaml


Misalnya, untuk mengambil informasi tentang peran kibana_admin dalam format YAML, kita dapat menjalankan:

keriting -XGET 'ABF00D7A4743439DEA23F50404EAA784FB8CFB5' -H 'kbn-xsrf: pelaporan'


Keluaran yang dihasilkan:

---
kibana_admin:
gugus: [ ]
indeks: [ ]
aplikasi:
- aplikasi: 'kibana-.kibana'
hak istimewa:
- 'semua'
sumber daya:
- '*'
run_as: [ ]
metadata:
_disimpan: BENAR
transien_metadata:
diaktifkan: BENAR

Lihat Peran untuk Pengguna Tertentu

Jika Anda ingin melihat informasi tentang nama pengguna tertentu (termasuk peran mereka), Anda dapat menggunakan permintaan seperti yang ditunjukkan:

DAPATKAN / _keamanan / pengguna


Misalnya, kita memiliki nama pengguna 'linuxhint', kita dapat mengambil informasi pengguna itu seperti yang ditunjukkan:

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


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

---
petunjuk linux:
nama belakang: 'linux'
peran:
- 'penonton'
- 'pengamat_pengguna'
nama lengkap: 'linuxhint.com'
surel: ' [dilindungi email] '
metadata: { }
diaktifkan: BENAR


Kita dapat melihat bahwa pengguna memiliki peran viewer dan watcher_user.

Lihat Peran di Kibana

Jika Anda tidak ingin menggunakan API peran cat, Anda dapat melihat peran Elasticsearch di Kibana dengan menavigasi ke Manajemen -> Manajemen Stack.


Selanjutnya, navigasikan ke Keamanan -> Peran


Anda kemudian dapat melihat dan mengelola peran.

Kesimpulan

Dalam artikel ini, Anda mempelajari cara menggunakan Elasticsearch Roles API untuk melihat informasi tentang peran tertentu dalam cluster. Anda juga menemukan cara melihat peran nama pengguna tertentu menggunakan API pengguna.

Terima kasih sudah membaca!