Elasticsearch Obtén rols

Elasticsearch Obten Rols



'Elasticsearch és un motor de cerca i anàlisi increïblement versàtil i potent. Pot ingerir, organitzar, ordenar, agregar i gestionar ràpidament grans quantitats de dades de text.

Malgrat tot, una de les característiques més destacades d'Elasticsearch i de tot el seu ecosistema són les característiques de seguretat rígides. Elasticsearch inclou funcions com ara la signatura de sol·licituds HTTP i només permet als usuaris autenticats realitzar operacions al clúster.







Una altra característica de seguretat a Elasticsearch és l'ús d'usuaris i rols. Elasticsearch us permet assignar rols específics als usuaris del clúster. A continuació, s'utilitzen per determinar quines accions pot realitzar el nom d'usuari al clúster.



Elasticsearch assignarà un rol predeterminat a tots els usuaris creats al clúster. El rol per defecte permet als usuaris accedir al punt final d'autenticació, que és responsable de canviar les contrasenyes, recuperar la informació de l'usuari, etc.



NOTA: La funció per defecte també s'assigna als usuaris anònims.





El nucli d'aquest tutorial és oferir-vos els fonaments de les funcions d'Elasticsearch. Amb aquest tutorial, descobrireu com obtenir els rols a l'àmbit natiu d'Elasticsearch i veure els rols assignats a un nom d'usuari específic.

Submergem-nos.



Elasticsearch Get Roles API

Utilitzem l'API Get Roles per recuperar informació sobre els rols del clúster Elasticsearch. La sintaxi de la sol·licitud és la que es mostra:

ACONSEGUIR / _seguretat / paper


La consulta anterior hauria de retornar tots els rols del sistema.

Per recuperar informació sobre un rol específic, podeu utilitzar la sintaxi tal com es mostra:

ACONSEGUIR / _seguretat / paper /< nom >


NOTA: Aquesta API requereix que l'usuari tingui el privilegi manage_security al clúster.

Si la sol·licitud té èxit, la consulta hauria de retornar una sèrie de rols.

Exemple 1: recupera tots els rols del clúster

La sol·licitud d'exemple següent recuperarà tots els rols del clúster Elasticsearch:

rínxol -XGET 'http://localhost:9200/_security/role?pretty=true' -H 'kbn-xsrf: informes'


A continuació es mostra un exemple de sortida:

{
'usuari_apm' : {
'cluster' : [ ] ,
'índexs' : [
{
'noms' : [
'apm-*'
] ,
'privilegis' : [
'llegir' ,
'view_index_metadata'
] ,
'permetre_índexs_restringits' : fals
} ,
{
'noms' : [
'finestra aprox.*'
] ,
'privilegis' : [
'llegir' ,
'view_index_metadata'
] ,
'permetre_índexs_restringits' : fals
} ,
{
'noms' : [
'finestra-aproximadament-*'
] ,
'privilegis' : [
'llegir' ,
'view_index_metadata'
] ,
'permetre_índexs_restringits' : fals
} ,
{
'noms' : [
'mètriques-apm.*'
] ,
'privilegis' : [
'llegir' ,
'view_index_metadata'
] ,
'permetre_índexs_restringits' : fals
} ,
{
'noms' : [
'mètriques-apm-*'
] ,
'privilegis' : [
'llegir' ,
'view_index_metadata'
] ,
'permetre_índexs_restringits' : fals
} ,
{
'noms' : [
'traces-apm.*'
] ,
'privilegis' : [
'llegir' ,
'view_index_metadata'
] ,
'permetre_índexs_restringits' : fals
} ,


NOTA: La sortida anterior s'ha truncat per a l'abast d'aquest tutorial.

Exemple 2: obtenir informació sobre un rol específic

L'exemple següent retorna informació sobre el rol kibana_admin.

rínxol -XGET 'http://localhost:9200/_security/role/kibana_admin' -H 'kbn-xsrf: informes'


La informació del rol resultant és la que es mostra:

{
'kibana_admin' : {
'cluster' : [ ] ,
'índexs' : [ ] ,
'aplicacions' : [
{
'aplicació' : 'kibana-.kibana' ,
'privilegis' : [
'tots'
] ,
'recursos' : [
'*'
]
}
] ,
'corre_com' : [ ] ,
'metadades' : {
'_reservat' : veritat
} ,
'metadades_transitòries' : {
'habilitat' : veritat
}
}
}

Recuperar informació de rol a YAML

De manera predeterminada, l'API get roles retornarà el resultat en format JSON. Tanmateix, podeu triar un format diferent mitjançant el paràmetre format.

La sintaxi és la que es mostra:

ACONSEGUIR / _seguretat / paper? format =json / yaml


Per exemple, per recuperar la informació sobre el rol kibana_admin en format YAML, podem executar:

rínxol -XGET 'http://localhost:9200/_security/role/kibana_admin?format=yaml' -H 'kbn-xsrf: informes'


Sortida resultant:

---
kibana_admin:
clúster: [ ]
índexs: [ ]
aplicacions:
- aplicació: 'kibana-.kibana'
privilegis:
- 'tots'
recursos:
- '*'
run_as: [ ]
metadades:
_reservat: veritat
metadades_transitòries:
habilitat: veritat

Veure rols per a un usuari específic

Si voleu veure informació sobre un nom d'usuari específic (incloses les seves funcions), podeu utilitzar la sol·licitud tal com es mostra:

ACONSEGUIR / _seguretat / usuari


Per exemple, suposem que tenim un nom d'usuari 'linuxhint' podem recuperar aquesta informació de l'usuari tal com es mostra:

rínxol -XGET 'http://locahost:9200/_security/user/linuxhint?format=yaml' -H 'kbn-xsrf: informes'


La sol·licitud anterior hauria de retornar informació sobre l'usuari en format YAML tal com es mostra:

---
linuxhint:
nom d'usuari: 'linux'
rols:
- 'espectador'
- 'usuari_observador'
nom complet: 'linuxhint.com'
correu electrònic: ' [correu electrònic protegit] '
metadades: { }
habilitat: veritat


Podem veure que l'usuari té els rols viewer i watcher_user.

Veure rols a Kibana

Si no voleu utilitzar l'API de rols de gat, podeu veure els rols d'Elasticsearch a Kibana navegant a Gestió -> Gestió de la pila.


A continuació, aneu a Seguretat -> Rols


A continuació, podeu veure i gestionar els rols.

Conclusió

En aquest article, heu après com utilitzar l'API d'Elasticsearch Roles per veure informació sobre funcions específiques del clúster. També heu descobert com veure les funcions d'un nom d'usuari determinat mitjançant l'API d'usuari.

Gràcies per llegir!