Elasticsearch Dobijte uloge

Elasticsearch Dobijte Uloge



“Elasticsearch je nevjerojatno svestran i moćan mehanizam za pretraživanje i analitiku. Može brzo unositi, organizirati, sortirati, prikupljati i upravljati velikim količinama tekstualnih podataka.

Unatoč svemu tome, jedna od najistaknutijih značajki u Elasticsearchu i njegovom cijelom ekosustavu su vrhunske sigurnosne značajke. Elasticsearch uključuje značajke kao što je potpisivanje HTTP zahtjeva i dopušta samo autentificiranim korisnicima izvođenje operacija na klasteru.







Još jedna sigurnosna značajka u Elasticsearchu je korištenje korisnika i uloga. Elasticsearch vam omogućuje dodjeljivanje specifičnih uloga korisnicima u klasteru. Oni se zatim koriste za određivanje radnji koje korisničko ime može izvesti na klasteru.



Elasticsearch će dodijeliti zadanu ulogu svim korisnicima stvorenim u klasteru. Zadana uloga omogućuje korisnicima pristup krajnjoj točki autentifikacije, koja je odgovorna za promjenu lozinki, dohvaćanje korisničkih podataka itd.”



NAPOMENA: Zadana uloga također je dodijeljena anonimnim korisnicima.





Srž ovog vodiča je dati vam osnove Elasticsearch uloga. Pomoću ovog vodiča otkrit ćete kako dohvatiti uloge u matičnom području Elasticsearch i pregledati uloge dodijeljene određenom korisničkom imenu.

Zaronimo.



Elasticsearch Get Roles API

Koristimo Get Roles API za dohvaćanje informacija o ulogama u klasteru Elasticsearch. Sintaksa zahtjeva je kao što je prikazano:

DOBITI / _sigurnost / uloga


Gornji upit trebao bi vratiti sve uloge u sustavu.

Za dohvaćanje informacija o određenoj ulozi, možete koristiti sintaksu kao što je prikazano:

DOBITI / _sigurnost / uloga /< Ime >


NAPOMENA: Ovaj API zahtijeva da korisnik ima privilegiju manage_security na klasteru.

Ako je zahtjev uspješan, upit bi trebao vratiti niz uloga.

Primjer 1 – dohvaćanje svih uloga u klasteru

Primjer zahtjeva u nastavku će dohvatiti sve uloge u klasteru Elasticsearch:

kovrča -XGET “http://localhost:9200/_security/role?pretty=true” -H 'kbn-xsrf: izvješćivanje'


Ispod je prikazan primjer izlaza:

{
'apm_user' : {
'Klastera' : [ ] ,
'indeksi' : [
{
'imena' : [
'apm-*'
] ,
'privilegije' : [
'čitati' ,
'view_index_metadata'
] ,
'dopusti_ograničene_indekse' : lažno
} ,
{
'imena' : [
'prozor-cca.*'
] ,
'privilegije' : [
'čitati' ,
'view_index_metadata'
] ,
'dopusti_ograničene_indekse' : lažno
} ,
{
'imena' : [
'prozor-približno-*'
] ,
'privilegije' : [
'čitati' ,
'view_index_metadata'
] ,
'dopusti_ograničene_indekse' : lažno
} ,
{
'imena' : [
'metrics-apm.*'
] ,
'privilegije' : [
'čitati' ,
'view_index_metadata'
] ,
'dopusti_ograničene_indekse' : lažno
} ,
{
'imena' : [
'metrics-apm-*'
] ,
'privilegije' : [
'čitati' ,
'view_index_metadata'
] ,
'dopusti_ograničene_indekse' : lažno
} ,
{
'imena' : [
'tragovi-apm.*'
] ,
'privilegije' : [
'čitati' ,
'view_index_metadata'
] ,
'dopusti_ograničene_indekse' : lažno
} ,


NAPOMENA: Gornji izlaz je skraćen za opseg ovog vodiča.

Primjer 2 – Dobivanje informacija o određenoj ulozi

Primjer ispod vraća informacije o ulozi kibana_admin.

kovrča -XGET “http://localhost:9200/_security/role/kibana_admin” -H 'kbn-xsrf: izvješćivanje'


Rezultirajuća informacija o ulozi je kao što je prikazano:

{
'kibana_admin' : {
'Klastera' : [ ] ,
'indeksi' : [ ] ,
'aplikacije' : [
{
'prijava' : 'kibana-.kibana' ,
'privilegije' : [
'svi'
] ,
'resursi' : [
'*'
]
}
] ,
'trčati kao' : [ ] ,
'metapodaci' : {
'_Rezervirano' : pravi
} ,
'prolazni_metapodaci' : {
'omogućeno' : pravi
}
}
}

Dohvaćanje informacija o ulozi u YAML-u

Prema zadanim postavkama API za dobivanje uloga vraća rezultat u JSON formatu. Međutim, možete odabrati drugačiji format pomoću parametra formata.

Sintaksa je kao što je prikazano:

DOBITI / _sigurnost / uloga? format =json / yaml


Na primjer, da dohvatimo informacije o ulozi kibana_admin u YAML formatu, možemo pokrenuti:

kovrča -XGET 'http://localhost:9200/_security/role/kibana_admin?format=yaml' -H 'kbn-xsrf: izvješćivanje'


Rezultirajući rezultat:

---
kibana_admin:
Klastera: [ ]
indeksi: [ ]
aplikacije:
- primjena: 'kibana-.kibana'
privilegije:
- 'svi'
resursi:
- '*'
trčati kao: [ ]
metapodaci:
_Rezervirano: pravi
prolazni_metapodaci:
omogućeno: pravi

Pregledajte uloge za određenog korisnika

Ako želite vidjeti informacije o određenom korisničkom imenu (uključujući njihove uloge), možete koristiti zahtjev kao što je prikazano:

DOBITI / _sigurnost / korisnik


Na primjer, pretpostavimo da imamo korisničko ime 'linuxhint' te možemo dohvatiti korisničke informacije kao što je prikazano:

kovrča -XGET “http://locahost:9200/_security/user/linuxhint?format=yaml” -H 'kbn-xsrf: izvješćivanje'


Gornji zahtjev trebao bi vratiti informacije o korisniku u YAML formatu kao što je prikazano:

---
linuxhint:
Korisničko ime: 'linux'
uloge:
- 'gledatelj'
- 'korisnik_promatrač'
puno ime: 'linuxhint.com'
email: ' [email protected] '
metapodaci: { }
omogućeno: pravi


Vidimo da korisnik ima uloge gledatelja i gledatelja_korisnika.

Pogledajte uloge u Kibani

Ako ne želite koristiti API za mačje uloge, uloge Elasticsearch u Kibani možete vidjeti tako da odete na Upravljanje -> Upravljanje snopom.


Zatim idite na Sigurnost -> Uloge


Tada možete pregledavati i upravljati ulogama.

Zaključak

U ovom ste članku naučili kako koristiti Elasticsearch Roles API za pregled informacija o određenim ulogama u klasteru. Također ste otkrili kako vidjeti uloge određenog korisničkog imena pomoću korisničkog API-ja.

Hvala na čitanju!