Como ler a senha de um usuário e implementá-la nos comandos subseqüentes?

1

Estou escrevendo uma chamada de API que requer o ID do usuário e a senha do usuário. Eu posso obter o id do usuário, mas como obter sua senha e fornecê-lo a uma variável? Aqui está o comando da API

 curl -u $user:$password http://localhost:7180/api/v1/clusters/Cluster 1/ervices/HIVE/config?view=FULL
    
por Alex Raj Kaliamoorthy 01.06.2016 / 15:55

1 resposta

0

Se você tiver as credenciais de usuário para um usuário que tenha permissões para executar a API, poderá colocá-las em $ HOME / .netrc como:

machine localhost login that-username-here password that-password-here

em que todas as outras palavras: machine , login e password são palavras-chave para manter intactas) e bloquear as permissões do arquivo apropriadamente (por exemplo, chmod go= $HOME/.netrc ) e usar curl --netrc option:

If used with HTTP, curl will enable user authentication.

curl --netrc "http://localhost:7180/api/v1/clusters/Cluster 1/services/HIVE/config?view=FULL"

Eu ajustei seu parâmetro de onda de duas maneiras:

  1. alterou um erro de digitação de "ervices" para "services" e
  2. citou a coisa toda, para habilitar um parâmetro para o comando curl (dado o espaço no nome "Cluster 1")

Se você simplesmente não tiver a senha para um usuário diferente, isso é um problema diferente, e é quando eu recomendaria criar uma conta separada para essas chamadas de API (ou solicitar que essa conta fosse criada).

    
por 07.11.2016 / 03:36