Elasticsearch Få roller

Elasticsearch Fa Roller



'Elasticsearch är en otroligt mångsidig och kraftfull sök- och analysmotor. Det kan snabbt mata in, organisera, sortera, aggregera och hantera stora mängder textdata.

Trots allt det är en av de mest framstående funktionerna i Elasticsearch och hela dess ekosystem de järnklädda säkerhetsfunktionerna. Elasticsearch innehåller funktioner som signering av HTTP-förfrågningar och tillåter endast autentiserade användare att utföra operationer på klustret.







En annan säkerhetsfunktion i Elasticsearch är användningen av användare och roller. Elasticsearch låter dig tilldela specifika roller till användare i klustret. Dessa används sedan för att bestämma vilka åtgärder användarnamnet kan utföra på klustret.



Elasticsearch kommer att tilldela en standardroll till alla användare som skapats i klustret. Standardrollen tillåter användarna att få åtkomst till autentiseringsslutpunkten, som är ansvarig för att ändra lösenord, hämta användarinformation, etc.”



OBS! Standardrollen tilldelas även anonyma användare.





Kärnan i denna handledning är att ge dig grunderna i Elasticsearch-roller. Med den här handledningen kommer du att upptäcka hur du hämtar rollerna i Elasticsearchs inhemska rike och visar rollerna som tilldelats ett specifikt användarnamn.

Låt oss dyka in.



Elasticsearch Get Rolles API

Vi använder Get Roles API för att hämta information om roller i Elasticsearch-klustret. Syntaxen för begäran är som visas:

SKAFFA SIG / _säkerhet / roll


Frågan ovan bör returnera alla roller i systemet.

För att hämta information om en specifik roll kan du använda syntaxen som visas:

SKAFFA SIG / _säkerhet / roll /< namn >


OBS: Detta API kräver att användaren har behörighet hantera_säkerhet i klustret.

Om begäran lyckas bör frågan returnera en rad roller.

Exempel 1 – Hämta alla roller i klustret

Exempelbegäran nedan kommer att hämta alla roller i Elasticsearch-klustret:

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


Ett exempel på utdata visas nedan:

{
'apm_user' : {
'klunga' : [ ] ,
'index' : [
{
'namn' : [
'apm-*'
] ,
'privilegier' : [
'läsa' ,
'view_index_metadata'
] ,
'allow_restricted_index' : falsk
} ,
{
'namn' : [
'fönster-ca.*'
] ,
'privilegier' : [
'läsa' ,
'view_index_metadata'
] ,
'allow_restricted_index' : falsk
} ,
{
'namn' : [
'fönster-ungefär-*'
] ,
'privilegier' : [
'läsa' ,
'view_index_metadata'
] ,
'allow_restricted_index' : falsk
} ,
{
'namn' : [
'metrics-apm.*'
] ,
'privilegier' : [
'läsa' ,
'view_index_metadata'
] ,
'allow_restricted_index' : falsk
} ,
{
'namn' : [
'metrics-apm-*'
] ,
'privilegier' : [
'läsa' ,
'view_index_metadata'
] ,
'allow_restricted_index' : falsk
} ,
{
'namn' : [
'spår-apm.*'
] ,
'privilegier' : [
'läsa' ,
'view_index_metadata'
] ,
'allow_restricted_index' : falsk
} ,


OBS: Utdata ovan har trunkerats för den här handledningens omfattning.

Exempel 2 – Få information om en specifik roll

Exemplet nedan returnerar information om rollen kibana_admin.

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


Den resulterande rollinformationen är som visas:

{
'kibana_admin' : {
'klunga' : [ ] ,
'index' : [ ] ,
'applikationer' : [
{
'Ansökan' : 'kibana-.kibana' ,
'privilegier' : [
'Allt'
] ,
'Resurser' : [
'*'
]
}
] ,
'Spring som' : [ ] ,
'metadata' : {
'_reserverad' : Sann
} ,
'transient_metadata' : {
'aktiverad' : Sann
}
}
}

Hämta rollinformation i YAML

Som standard returnerar get roles API resultatet i JSON-format. Du kan dock välja ett annat format med formatparametern.

Syntaxen är som visas:

SKAFFA SIG / _säkerhet / roll? formatera =json / jaml


Till exempel, för att hämta informationen om rollen kibana_admin i YAML-format, kan vi köra:

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


Resultat:

---
kibana_admin:
klunga: [ ]
index: [ ]
applikationer:
- Ansökan: 'kibana-.kibana'
privilegier:
- 'Allt'
Resurser:
- '*'
Spring som: [ ]
metadata:
_reserverad: Sann
transient_metadata:
aktiverad: Sann

Visa roller för en specifik användare

Om du vill se information om ett specifikt användarnamn (inklusive deras roller), kan du använda begäran enligt bilden:

SKAFFA SIG / _säkerhet / användare


Anta till exempel att vi har ett användarnamn 'linuxhint' kan vi hämta den användarinformationen som visas:

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


Begäran ovan bör returnera information om användaren i YAML-format som visas:

---
linuxhint:
Användarnamn: 'linux'
roller:
- 'visare'
- 'watcher_user'
fullständiga namn: 'linuxhint.com'
e-post: ' [e-postskyddad] '
metadata: { }
aktiverad: Sann


Vi kan se att användaren har rollerna viewer och watcher_user.

Se roller i Kibana

Om du inte vill använda cat roles API kan du se Elasticsearch-rollerna i Kibana genom att navigera till Management -> Stack Management.


Därefter navigerar du till Säkerhet -> Roller


Du kan sedan se och hantera rollerna.

Slutsats

I den här artikeln lärde du dig hur du använder Elasticsearch Roles API för att visa information om specifika roller i klustret. Du har också upptäckt hur man kan se rollerna för ett givet användarnamn med hjälp av användar-API.

Tack för att du läser!