사용자의 비밀번호를 읽고 후속 명령에 이를 구현하려면 어떻게 해야 합니까?

사용자의 비밀번호를 읽고 후속 명령에 이를 구현하려면 어떻게 해야 합니까?

사용자의 사용자 ID와 비밀번호가 필요한 API 호출을 작성 중입니다. 사용자 ID는 알 수 있는데, 비밀번호는 어떻게 얻어서 변수에 주나요? 이것은 API 명령입니다

 curl -u $user:$password http://localhost:7180/api/v1/clusters/Cluster 1/ervices/HIVE/config?view=FULL

답변1

API 실행 권한이 있는 사용자에 대한 사용자 자격 증명이 있는 경우 다음과 같이 $HOME/.netrc에 넣을 수 있습니다.

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

여기서 다른 모든 단어: machineloginpassword그대로 유지하려는 키워드입니다. 파일의 권한을 적절하게 잠그고(예: chmod go= $HOME/.netrc) 다음을 사용합니다.파마 --netrc옵션:

HTTP와 함께 사용하면 컬이 사용자 인증을 활성화합니다.

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

두 가지 방법으로 컬 매개변수를 조정했습니다.

  1. 철자가 틀린 것으로 추정되는 "service"를 "service"로 변경하고
  2. 컬 명령의 인수 하나를 활성화하기 위해 전체 내용을 인용합니다("Cluster 1" 이름에 공백이 있음).

단순히 다른 사용자의 비밀번호를 잊어버린 경우에는 다른 문제가 됩니다. 이 경우 그러한 API 호출을 위해 별도의 계정을 만드는 것이 좋습니다(또는 그러한 계정을 만들어야 하는 경우).

관련 정보