Este breve artigo ensinará como buscar informações sobre um usuário específico usando este recurso. Isso permite que você saiba o estado de um usuário, funções atribuídas, estado ativado, nome completo, e -mail, etc.”
Vamos mergulhar.
Elasticsearch Obter API de perfil de usuário
Podemos usar o terminal da API Elasticsearch integrado para buscar informações de perfil de usuário usando seu ID exclusivo.
A sintaxe da solicitação é como mostrado abaixo:
Get/_security/perfil/
A API exige que você tenha privilégios gerenciais_user_profile no cluster.
Se a solicitação for bem -sucedida, a API retornará uma resposta com informações do usuário. Como mencionado, você precisa do ID exclusivo do usuário para buscar as informações do perfil deles.
Você pode buscar o ID exclusivo de um usuário específico durante a ativação.
Vamos ver como podemos executar esta ação.
Elasticsearch Criar usuário
Começaremos criando um usuário de amostra. Isso nos permitirá ilustrar como ativar o usuário e buscar seu ID exclusivo.
Podemos criar um usuário enviando uma solicitação de postagem para a API de criação de usuário.
Curl -xpost "http: // localhost: 9200/_security/user/linuxhint" -h "kbn -xsrf: relatórios" -h "conteúdo: aplicativo/json" -d '
"Senha": "Supersecret",
"Funções": ["Watcher"],
"Full_name": "Linux Dica",
"Email": "[email protected] ",
"Metadata":
"Pontuação": 10
'
A solicitação acima deve criar o usuário com o nome de usuário especificado.
Saída:
"Criado": verdadeiro
Elasticsearch Ative o usuário
Depois de criarmos o usuário -alvo, podemos ativar a conta, permitindo -nos buscar seu ID exclusivo do nome de usuário especificado.
A sintaxe para ativação do usuário é como mostrado:
Post/_security/perfil/_activate
Por exemplo, para ativar o usuário "Linuxhint" que criamos, podemos executar o comando;
Curl -xpost "http: // localhost: 9200/_security/perfil/_activate" -h "kbn -xsrf: relatórios" -h "type: aplicativo/json" -d '
"Grant_type": "Senha",
"Nome de usuário": "Linuxhint",
"Senha": "Supersecret"
'
A solicitação acima envia uma solicitação de postagem para o endpoint de ativação da API com os detalhes do usuário que desejamos ativar.
O Grant_Type especifica o tipo de concessão. Elasticsearch suporta dois tipos principais de subsídios:
Nota: Os parâmetros de nome de usuário e senha são necessários para o Grant_Type = senha.
Depois de executar a solicitação acima, a consulta acima deve retornar:
"uid": "u_ytx7x2gyhoik4qjtmvgm4mjdibjqmmqi03ycezehhe_0",
"Enabled": verdadeiro,
"Last_synchronized": 1662087530428,
"do utilizador":
"Nome de usuário": "Linuxhint",
"Funções": [
"observador"
],
"realm_name": "nativo",
"Email": "[email protected] ",
"Full_name": "Linux Dica"
,
"Rótulos": ,
"dados": ,
"_doc":
"_Primary_term": 1,
"_seq_no": 1
A resposta acima mostra vários detalhes sobre o perfil ativado. No nosso caso, estamos interessados no valor armazenado no campo UID.
Elasticsearch obter perfil de usuário
Para buscar o perfil do usuário, use o valor UID gerado e execute a consulta mostrada na sintaxe abaixo:
Get/_security/perfil/
Por exemplo:
Curl -xget "http: // localhost: 9200/_security/perfil/u_ytx7x2gyhoik4qjtmvgm4mjdibjqmmqi03ycezehhe_0" -h "kbn -xsrf: relatórios"
A solicitação acima deve retornar detalhes do perfil de usuário especificado. Um exemplo de resultado é como mostrado:
"U_YTX7X2GYHOIK4QJTMVGM4MJDIBJQMMMQI03YCEZEHHE_0":
"uid": "u_ytx7x2gyhoik4qjtmvgm4mjdibjqmmqi03ycezehhe_0",
"Enabled": verdadeiro,
"Last_synchronized": 1662087530428,
"do utilizador":
"Nome de usuário": "Linuxhint",
"Funções": [
"observador"
],
"realm_name": "nativo",
"Email": "[email protected] ",
"Full_name": "Linux Dica"
,
"Rótulos": ,
"dados": ,
"_doc":
"_Primary_term": 1,
"_seq_no": 1
Conclusão
Neste artigo, você aprendeu a usar o Elasticsearch, obter perfil de usuário para buscar informações sobre um usuário específico com base em seu ID exclusivo.
Obrigado pela leitura!!