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:
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!!