Elasticsearch Rolleri Al

Elasticsearch Rolleri Al



'Elasticsearch, inanılmaz derecede çok yönlü ve güçlü bir arama ve analiz motorudur. Büyük miktarda metin verisini hızla alabilir, düzenleyebilir, sıralayabilir, toplayabilir ve yönetebilir.

Tüm bunlara rağmen, Elasticsearch ve tüm ekosistemindeki en göze çarpan özelliklerden biri sağlam güvenlik özellikleridir. Elasticsearch, HTTP isteklerinin imzalanması gibi özellikler içerir ve yalnızca kimliği doğrulanmış kullanıcıların küme üzerinde işlem gerçekleştirmesine izin verir.







Elasticsearch'teki bir diğer güvenlik özelliği, kullanıcıların ve rollerin kullanılmasıdır. Elasticsearch, kümedeki kullanıcılara belirli roller atamanıza olanak tanır. Bunlar daha sonra kullanıcı adının küme üzerinde hangi eylemleri gerçekleştirebileceğini belirlemek için kullanılır.



Elasticsearch, kümede oluşturulan tüm kullanıcılara varsayılan bir rol atayacaktır. Varsayılan rol, kullanıcıların parolaları değiştirmekten, kullanıcı bilgilerini almaktan vb. sorumlu olan kimlik doğrulama uç noktasına erişmesine izin verir.”



NOT: Varsayılan rol, anonim kullanıcılara da atanmıştır.





Bu öğreticinin özü, size Elasticsearch rollerinin temellerini vermektir. Bu öğreticiyi kullanarak, Elasticsearch yerel alanında rolleri nasıl alacağınızı keşfedecek ve belirli bir kullanıcı adına atanan rolleri görüntüleyeceksiniz.

Hadi dalalım.



Elasticsearch Rol Alma API'sı

Elasticsearch kümesindeki roller hakkında bilgi almak için Get Roles API'sini kullanırız. İstek sözdizimi gösterildiği gibidir:

ALMAK / _güvenlik / rol


Yukarıdaki sorgu, sistemdeki tüm rolleri döndürmelidir.

Belirli bir rol hakkında bilgi almak için aşağıda gösterildiği gibi söz dizimini kullanabilirsiniz:

ALMAK / _güvenlik / rol /< isim >


NOT: Bu API, kullanıcının kümede Manage_security ayrıcalığına sahip olmasını gerektirir.

İstek başarılı olursa, sorgu bir dizi rol döndürmelidir.

Örnek 1 – Kümedeki Tüm Rolleri Al

Aşağıdaki örnek istek, Elasticsearch kümesindeki tüm rolleri alacaktır:

kıvrılmak -XGET “http://localhost:9200/_security/role?pretty=true” -H 'kbn-xsrf: raporlama'


Örnek bir çıktı aşağıda gösterilmiştir:

{
'apm_user' : {
'küme' : [ ] ,
'endeksler' : [
{
'isimler' : [
'eylem sayısı-*'
] ,
'ayrıcalıklar' : [
'okuman' ,
'view_index_metadata'
] ,
'allow_restricted_indices' : yanlış
} ,
{
'isimler' : [
'pencere-yaklaşık*'
] ,
'ayrıcalıklar' : [
'okuman' ,
'view_index_metadata'
] ,
'allow_restricted_indices' : yanlış
} ,
{
'isimler' : [
'pencere-yaklaşık-*'
] ,
'ayrıcalıklar' : [
'okuman' ,
'view_index_metadata'
] ,
'allow_restricted_indices' : yanlış
} ,
{
'isimler' : [
'metrics-apm.*'
] ,
'ayrıcalıklar' : [
'okuman' ,
'view_index_metadata'
] ,
'allow_restricted_indices' : yanlış
} ,
{
'isimler' : [
'metrics-apm-*'
] ,
'ayrıcalıklar' : [
'okuman' ,
'view_index_metadata'
] ,
'allow_restricted_indices' : yanlış
} ,
{
'isimler' : [
'izler-apm.*'
] ,
'ayrıcalıklar' : [
'okuman' ,
'view_index_metadata'
] ,
'allow_restricted_indices' : yanlış
} ,


NOT: Yukarıdaki çıktı, bu öğreticinin kapsamı için kısaltılmıştır.

Örnek 2 – Belirli Bir Rol Hakkında Bilgi Alın

Aşağıdaki örnek, kibana_admin rolü hakkında bilgi verir.

kıvrılmak -XGET “http://localhost:9200/_security/role/kibana_admin” -H 'kbn-xsrf: raporlama'


Ortaya çıkan rol bilgileri gösterildiği gibidir:

{
'kibana_admin' : {
'küme' : [ ] ,
'endeksler' : [ ] ,
'uygulamalar' : [
{
'başvuru' : 'kibana-.kibana' ,
'ayrıcalıklar' : [
'tüm'
] ,
'kaynaklar' : [
'*'
]
}
] ,
'olarak çalıştırmak' : [ ] ,
'meta veri' : {
'_rezerve' : doğru
} ,
'geçici_metadata' : {
'etkinleştirilmiş' : doğru
}
}
}

YAML'de Rol Bilgilerini Al

Varsayılan olarak, alma rolleri API'si sonucu JSON biçiminde döndürür. Ancak, format parametresini kullanarak farklı bir format seçebilirsiniz.

Sözdizimi gösterildiği gibidir:

ALMAK / _güvenlik / rol? biçim =json / yaml


Örneğin, kibana_admin rolüyle ilgili bilgileri YAML formatında almak için şunu çalıştırabiliriz:

kıvrılmak -XGET 'ABF00D7A4743439DEA23F50404EAA784FB8CFB5' -H 'kbn-xsrf: raporlama'


Sonuç çıktısı:

---
kibana_admin:
küme: [ ]
indeksler: [ ]
uygulamalar:
- başvuru: 'kibana-.kibana'
ayrıcalıklar:
- 'tüm'
kaynaklar:
- '*'
olarak çalıştırmak: [ ]
meta veriler:
_rezerve: doğru
geçici_metadata:
etkinleştirilmiş: doğru

Belirli Bir Kullanıcı için Rolleri Görüntüle

Belirli bir kullanıcı adı (rolleri dahil) hakkındaki bilgileri görüntülemek isterseniz, isteği aşağıdaki gibi kullanabilirsiniz:

ALMAK / _güvenlik / kullanıcı


Örneğin, 'linuxhint' bir kullanıcı adımız olduğunu varsayalım, bu kullanıcı bilgilerini gösterildiği gibi alabiliriz:

kıvrılmak -XGET 'http://locahost:9200/_security/user/linuxhint?format=yaml' -H 'kbn-xsrf: raporlama'


Yukarıdaki istek, kullanıcı hakkındaki bilgileri gösterildiği gibi YAML formatında döndürmelidir:

---
linux ipucu:
Kullanıcı adı: 'linux'
roller:
- 'izleyici'
- 'watcher_user'
Ad Soyad: 'linuxhint.com'
e-posta: ' [e-posta korumalı] '
meta veriler: { }
etkinleştirilmiş: doğru


Kullanıcının izleyici ve izleyici_kullanıcı rollerine sahip olduğunu görebiliriz.

Kibana'daki Rolleri Görüntüle

Kedi rolleri API'sini kullanmak istemiyorsanız, Kibana'da Elasticsearch rollerini Yönetim -> Yığın Yönetimi'ne giderek görüntüleyebilirsiniz.


Ardından, Güvenlik -> Roller'e gidin


Daha sonra rolleri görüntüleyebilir ve yönetebilirsiniz.

Çözüm

Bu makalede, kümedeki belirli rollerle ilgili bilgileri görüntülemek için Elasticsearch Roller API'sinin nasıl kullanılacağını öğrendiniz. Kullanıcı API'sini kullanarak belirli bir kullanıcı adının rollerini nasıl görüntüleyeceğinizi de keşfettiniz.

Okuduğunuz için teşekkürler!