Elasticsearch Få roller

Elasticsearch Fa Roller



'Elasticsearch er en utrolig alsidig og kraftfuld søge- og analysemaskine. Den kan hurtigt indtage, organisere, sortere, samle og administrere store mængder tekstdata.

På trods af alt dette er en af ​​de mest fremragende funktioner i Elasticsearch og hele dets økosystem de jernbeklædte sikkerhedsfunktioner. Elasticsearch inkluderer funktioner såsom signering af HTTP-anmodninger og tillader kun godkendte brugere at udføre operationer på klyngen.







En anden sikkerhedsfunktion i Elasticsearch er brugen af ​​brugere og roller. Elasticsearch giver dig mulighed for at tildele specifikke roller til brugere i klyngen. Disse bruges derefter til at bestemme, hvilke handlinger brugernavnet kan udføre på klyngen.



Elasticsearch vil tildele en standardrolle til alle brugere, der er oprettet i klyngen. Standardrollen giver brugerne adgang til godkendelsesslutpunktet, som er ansvarlig for at ændre adgangskoder, hente brugeroplysninger osv.'



BEMÆRK: Standardrollen er også tildelt anonyme brugere.





Kernen i denne tutorial er at give dig det grundlæggende i Elasticsearch-roller. Ved hjælp af denne vejledning vil du opdage, hvordan du henter rollerne i Elasticsearchs native realm og får vist de roller, der er tildelt et specifikt brugernavn.

Lad os dykke ned.



Elasticsearch Get Rolles API

Vi bruger Get Roles API til at hente oplysninger om roller i Elasticsearch-klyngen. Anmodningssyntaksen er som vist:

/ _sikkerhed / rolle


Forespørgslen ovenfor skulle returnere alle roller i systemet.

For at hente information om en bestemt rolle kan du bruge syntaksen som vist:

/ _sikkerhed / rolle /< navn >


BEMÆRK: Denne API kræver, at brugeren har administratorrettigheder på klyngen.

Hvis anmodningen lykkes, skal forespørgslen returnere en række roller.

Eksempel 1 – Hent alle roller i klyngen

Eksempelanmodningen nedenfor vil hente alle rollerne i Elasticsearch-klyngen:

krølle -XGET 'http://localhost:9200/_security/role?pretty=true' -H 'kbn-xsrf: rapportering'


Et eksempel på output er vist nedenfor:

{
'apm_bruger' : {
'klynge' : [ ] ,
'indekser' : [
{
'navne' : [
'apm-*'
] ,
'privilegier' : [
'Læs' ,
'view_index_metadata'
] ,
'allow_restricted_indices' : falsk
} ,
{
'navne' : [
'vindue-ca.*'
] ,
'privilegier' : [
'Læs' ,
'view_index_metadata'
] ,
'allow_restricted_indices' : falsk
} ,
{
'navne' : [
'vindue-ca-*'
] ,
'privilegier' : [
'Læs' ,
'view_index_metadata'
] ,
'allow_restricted_indices' : falsk
} ,
{
'navne' : [
'metrics-apm.*'
] ,
'privilegier' : [
'Læs' ,
'view_index_metadata'
] ,
'allow_restricted_indices' : falsk
} ,
{
'navne' : [
'metrics-apm-*'
] ,
'privilegier' : [
'Læs' ,
'view_index_metadata'
] ,
'allow_restricted_indices' : falsk
} ,
{
'navne' : [
'spor-apm.*'
] ,
'privilegier' : [
'Læs' ,
'view_index_metadata'
] ,
'allow_restricted_indices' : falsk
} ,


BEMÆRK: Outputtet ovenfor er blevet afkortet for denne øvelses omfang.

Eksempel 2 – Få information om en specifik rolle

Eksemplet nedenfor returnerer oplysninger om rollen kibana_admin.

krølle -XGET 'http://localhost:9200/_security/role/kibana_admin' -H 'kbn-xsrf: rapportering'


De resulterende rolleoplysninger er som vist:

{
'kibana_admin' : {
'klynge' : [ ] ,
'indekser' : [ ] ,
'applikationer' : [
{
'Ansøgning' : 'kibana-.kibana' ,
'privilegier' : [
'alle'
] ,
'ressourcer' : [
'*'
]
}
] ,
'løb som' : [ ] ,
'metadata' : {
'_reserveret' : rigtigt
} ,
'transient_metadata' : {
'aktiveret' : rigtigt
}
}
}

Hent rolleoplysninger i YAML

Som standard vil get roles API returnere resultatet i JSON-format. Du kan dog vælge et andet format ved hjælp af formatparameteren.

Syntaksen er som vist:

/ _sikkerhed / rolle? format =json / yaml


For at hente oplysningerne om rollen kibana_admin i YAML-format kan vi for eksempel køre:

krølle -XGET 'http://localhost:9200/_security/role/kibana_admin?format=yaml' -H 'kbn-xsrf: rapportering'


Resulterende output:

---
kibana_admin:
klynge: [ ]
indekser: [ ]
applikationer:
- Ansøgning: 'kibana-.kibana'
privilegier:
- 'alle'
ressourcer:
- '*'
løb som: [ ]
metadata:
_reserveret: rigtigt
transient_metadata:
aktiveret: rigtigt

Se roller for en bestemt bruger

Hvis du ønsker at se oplysninger om et specifikt brugernavn (inklusive deres roller), kan du bruge anmodningen som vist:

/ _sikkerhed / bruger


Antag for eksempel, at vi har et brugernavn 'linuxhint', kan vi hente disse brugeroplysninger som vist:

krølle -XGET 'http://locahost:9200/_security/user/linuxhint?format=yaml' -H 'kbn-xsrf: rapportering'


Anmodningen ovenfor skal returnere oplysninger om brugeren i YAML-format som vist:

---
linuxhint:
brugernavn: 'linux'
roller:
- 'seer'
- 'watcher_user'
fulde navn: 'linuxhint.com'
e-mail: ' [e-mailbeskyttet] '
metadata: { }
aktiveret: rigtigt


Vi kan se, at brugeren har rollerne seer og watcher_user.

Se roller i Kibana

Hvis du ikke ønsker at bruge cat roles API, kan du se Elasticsearch-rollerne i Kibana ved at navigere til Management -> Stack Management.


Derefter skal du navigere til Sikkerhed -> Roller


Du kan derefter se og administrere rollerne.

Konklusion

I denne artikel lærte du, hvordan du bruger Elasticsearch Roles API til at se oplysninger om specifikke roller i klyngen. Du har også opdaget, hvordan du kan se rollerne for et givet brugernavn ved hjælp af bruger-API'en.

Tak fordi du læste med!