ユーザーのパスワードを読み、後続のコマンドでこれを実装するにはどうすればよいですか?

ユーザーのパスワードを読み、後続のコマンドでこれを実装するにはどうすればよいですか?

ユーザーのユーザー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"

2つの方法でカールパラメータを調整しました。

  1. スペルが間違っていると推定される「サービス」を「サービス」に変更し、
  2. curlコマンドの引数を1つ有効にするために内容全体を引用します(「Cluster 1」という名前にスペースがあります)。

単に他のユーザーのパスワードを忘れた場合は、別の問題になります。この場合、そのようなAPI呼び出しのために別々のアカウントを作成することをお勧めします(またはそのようなアカウントを作成する必要がある場合)。

関連情報