Elasticsearch får roller

Elasticsearch får roller

“Elasticsearch er et utrolig allsidig og kraftig søk- og analysemotor. Det kan raskt innta, organisere, sortere, aggregere og administrere store mengder tekstdata.

Til tross for alt dette, er en av de mest fremragende funksjonene i Elasticsearch og hele økosystemet Ironclad Security -funksjonene. Elasticsearch inkluderer funksjoner som signering av HTTP -forespørsler og lar bare autentiserte brukere utføre operasjoner på klyngen.

En annen sikkerhetsfunksjon i Elasticsearch er bruken av brukere og roller. Elasticsearch lar deg tilordne spesifikke roller til brukere i klyngen. Disse brukes deretter til å bestemme hvilke handlinger brukernavnet kan utføre på klyngen.

Elasticsearch vil tildele en standardrolle til alle brukere som er opprettet i klyngen. Standardrollen lar brukerne få tilgang.”

Merk: Standardrollen er også tilordnet anonyme brukere.

Kjernen i denne opplæringen er å gi deg grunnleggende om Elasticsearch -roller. Ved hjelp av denne opplæringen vil du oppdage hvordan du henter rollene i Elasticsearch Native Realm og ser på rollene som er tilordnet et spesifikt brukernavn.

La oss dykke inn.

Elasticsearch Få roller API

Vi bruker Get Roles API for å hente informasjon om roller i Elasticsearch Cluster. Forespørselssyntaks er som vist:

Få /_security /rollen


Spørringen ovenfor skal returnere alle rollene i systemet.

For å hente informasjon om en spesifikk rolle, kan du bruke syntaks som vist:

Få/_security/roll/rolle/


Merk: Denne API -en krever at brukeren har administrasjonsberettigelse på klyngen.

Hvis forespørselen er vellykket, bør spørringen returnere en rekke roller.

Eksempel 1 - Hent alle roller i klyngen

Eksempelforespørselen nedenfor vil hente alle rollene i Elasticsearch -klyngen:

Curl -xget "http: // localhost: 9200/_security/roll?pen = sant "-h" kbn -xsrf: rapportering "


Et eksempelutgang vises nedenfor:


"apm_user":
"Cluster": [],
"Indekser": [

"Navn": [
"Apm-*"
],
"privilegier": [
"lese",
"view_index_metadata"
],
"tillatt_restrikerte_indices": FALSE
,

"Navn": [
"Logs-apm.*"
],
"privilegier": [
"lese",
"view_index_metadata"
],
"tillatt_restrikerte_indices": FALSE
,

"Navn": [
"Logs-apm-*"
],
"privilegier": [
"lese",
"view_index_metadata"
],
"tillatt_restrikerte_indices": FALSE
,

"Navn": [
"Metrics-APM.*"
],
"privilegier": [
"lese",
"view_index_metadata"
],
"tillatt_restrikerte_indices": FALSE
,

"Navn": [
"Metrics-apm-*"
],
"privilegier": [
"lese",
"view_index_metadata"
],
"tillatt_restrikerte_indices": FALSE
,

"Navn": [
"Spor-apm.*"
],
"privilegier": [
"lese",
"view_index_metadata"
],
"tillatt_restrikerte_indices": FALSE
,


Merk: Utgangen ovenfor er avkortet for omfanget av denne opplæringen.

Eksempel 2 - Få informasjon om en spesifikk rolle

Eksemplet nedenfor returnerer informasjon om kibana_admin -rollen.

Curl -xget "http: // localhost: 9200/_security/roll/kibana_admin" -h "kbn -xsrf: rapportering"


Den resulterende rolleinformasjonen er som vist:


"kibana_admin":
"Cluster": [],
"Indekser": [],
"applikasjoner": [

"Application": "Kibana-.Kibana ",
"privilegier": [
"alle"
],
"Ressurser": [
"*"
]

],
"løp så": [],
"Metadata":
"_reservert": True
,
"transient_metadata":
"Aktivert": True


Hent rolleinformasjon i Yaml

Som standard vil Get Roles API returnere resultatet i JSON -format. Du kan imidlertid velge et annet format ved hjelp av formatparameteren.

Syntaksen er som vist:

Få /_security /rollen?format = json/yaml


For å hente informasjonen om Kibana_admin -rollen i YAML -format, kan vi for eksempel kjøre:

Curl -xget "http: // localhost: 9200/_security/roll/kibana_admin?format = yaml "-h" kbn -xsrf: rapportering "


Resulterende utgang:

---
kibana_admin:
Cluster: []
Indekser: []
applikasjoner:
- Søknad: "Kibana-.Kibana "
privilegier:
- "alle"
ressurser:
- "*"
løp så: []
metadata:
_Reservert: True
transient_metadata:
Aktivert: True

Se roller for en bestemt bruker

Hvis du ønsker å se informasjon om et spesifikt brukernavn (inkludert deres roller), kan du bruke forespørselen som vist:

Få /_security /bruker


Anta for eksempel at vi har et brukernavn “Linuxhint”, vi kan hente den brukerinformasjonen som vist:

Curl -xget "http: // locahost: 9200/_security/user/Linuxhint?format = yaml "-h" kbn -xsrf: rapportering "


Forespørselen ovenfor skal returnere informasjon om brukeren i YAML -format som vist:

---
Linuxhint:
Brukernavn: "Linuxhint"
roller:
- "Seer"
- "Watcher_user"
full_name: "Linuxhint.com "
E -post: "[email protected] "
metadata:
Aktivert: True


Vi kan se at brukeren har seer- og watcher_user -rollene.

Se roller i Kibana

Hvis du ikke vil bruke CAT -rollene API, kan du se Elasticsearch -rollene i Kibana ved å navigere til ledelse -> Stack Management.


Naviger deretter til sikkerhet -> roller


Du kan deretter se og administrere rollene.

Konklusjon

I denne artikkelen lærte du hvordan du bruker Elasticsearch Roles API for å se informasjon om spesifikke roller i klyngen. Du oppdaget også hvordan du kan se rollene som et gitt brukernavn ved hjelp av bruker API.

Takk for at du leste!