ElasticSearch Uzyskaj profil użytkownika

ElasticSearch Uzyskaj profil użytkownika
„API GET Profil użytkownika pozwala pobierać informacje o profilu każdego aktywnego użytkownika w klastrze ElasticSearch za pomocą unikalnego identyfikatora profilu.

Ten krótki artykuł nauczy Cię, jak pobierać informacje o konkretnym użytkowniku za pomocą tej funkcji. To pozwala poznać stan użytkownika, przypisane role, włączony stan, pełna nazwa, e -mail itp."

Zanurzmy się.

ElasticSearch Pobierz interfejs profilu użytkownika API

Możemy użyć wbudowanego punktu końcowego API ElasticSearch do pobierania informacji o profilu użytkownika za pomocą ich unikalnego identyfikatora.

Składnia żądania jest jak pokazana poniżej:

Get/_Security/Profilu/

API wymaga posiadania uprawnień Manage_User_profile w klastrze.

Jeśli żądanie się powiedzie, interfejs API zwraca odpowiedź z informacjami o użytkowniku. Jak wspomniano, potrzebujesz unikalnego identyfikatora użytkownika, aby pobrać informacje o profilu.

Możesz pobrać unikalny identyfikator określonego użytkownika podczas aktywacji.

Zobaczmy, jak możemy wykonać tę akcję.

ElasticSearch Utwórz użytkownika

Zaczniemy od utworzenia przykładowego użytkownika. To pozwoli nam zilustrować, jak aktywować użytkownika i pobrać jego unikalny identyfikator.

Możemy utworzyć użytkownika, wysyłając żądanie postu do interfejsu API Utwórz użytkownika.

curl -xpost "http: // localhost: 9200/_security/user/linuxhint" -h "kbn -xsrf: raportowanie" -h "content -typ: application/json" -d '

„Hasło”: „SuperSecret”,
„Role”: [„Watcher”],
„Full_name”: „Linux wskazówka”,
„E -mail”: „[email protected] ",
„Metadata”:
„wynik”: 10

'

Powyższe żądanie powinno utworzyć użytkownika z określoną nazwą użytkownika.

Wyjście:


„Creed”: True

ElasticSearch aktywuj użytkownika

Po utworzeniu użytkownika docelowego możemy aktywować konto, umożliwiając nam pobranie ich unikalnego identyfikatora określonej nazwy użytkownika.

Składnia aktywacji użytkownika jest taka jak pokazano:

Post/_Security/profilu/_activate

Na przykład, aby aktywować utworzony przez nas użytkownika „Linuxhint”, możemy uruchomić polecenie;

curl -xpost "http: // localhost: 9200/_security/profilu/_activate" -h "kbn -xsrf: raportowanie" -h "content -type: application/json" -d '

„grant_type”: „hasło”,
„Nazwa użytkownika”: „Linuxhint”,
„Hasło”: „SuperSecret”
'

Powyższe żądanie wysyła żądanie pocztów do punktu końcowego Aktywuj API ze szczegółami użytkownika, który chcemy aktywować.

Grant_type określa rodzaj dotacji. Elasticsearch obsługuje dwa główne rodzaje dotacji:

  1. Access_Token umożliwia przekazanie tokenu dostępu generowanego przez usługę ElasticSearch.
  2. Hasło - hasło określa nazwę użytkownika i hasło użytkownika docelowego.

Uwaga: Parametry nazwy użytkownika i hasła są wymagane dla hasła grant_type = hasło.

Po uruchomieniu powyższego żądania powyższe zapytanie powinno powrócić:


„UID”: „U_YTX7X2GYHOIK4QJTMVGM4MJDIBJQMMMQI03YCEZEHHE_0”,
„Włączone”: prawda,
„Last_synchronized”: 1662087530428,
„Użytkownik”:
„Nazwa użytkownika”: „Linuxhint”,
„Role”: [
„Watcher”
],
„Realm_name”: „Native”,
„E -mail”: „[email protected] ",
„Full_name”: „Linux wskazówka”
,
„Etykiety”: ,
"dane": ,
„_doc”:
„_primary_term”: 1,
„_seq_no”: 1

Powyższa odpowiedź pokazuje różne szczegóły dotyczące aktywowanego profilu. W naszym przypadku jesteśmy zainteresowani wartością przechowywaną w polu UID.

ElasticSearch Uzyskaj profil użytkownika

Aby pobrać profil użytkownika, użyj wygenerowanej wartości UID i uruchom zapytanie pokazane w poniższej składni:

Get/_Security/Profilu/

Na przykład:

curl -xget "http: // localhost: 9200/_security/profilu/u_ytx7x2gyhoik4qjtmvgm4mjdibjqmmmqi03ycepezehhe_0" -h "kbn -xsrf: raportowanie"

Powyższe żądanie powinno zwrócić szczegóły określonego profilu użytkownika. Przykładowym wynikiem jest to, jak pokazano:


„U_YTX7X2GYHOIK4QJTMVGM4MJDIBJQMMMQI03YCEZEHHE_0”:
„UID”: „U_YTX7X2GYHOIK4QJTMVGM4MJDIBJQMMMQI03YCEZEHHE_0”,
„Włączone”: prawda,
„Last_synchronized”: 1662087530428,
„Użytkownik”:
„Nazwa użytkownika”: „Linuxhint”,
„Role”: [
„Watcher”
],
„Realm_name”: „Native”,
„E -mail”: „[email protected] ",
„Full_name”: „Linux wskazówka”
,
„Etykiety”: ,
"dane": ,
„_doc”:
„_primary_term”: 1,
„_seq_no”: 1


Wniosek

W tym artykule nauczyłeś się korzystać z elasticsearch, aby uzyskać profil użytkownika, aby pobrać informacje o konkretnym użytkowniku na podstawie jego unikalnego identyfikatora.

Dziękuje za przeczytanie!!