問題

dockerの公式イメージで開発モードでElasticsearchをテストしています。

基本的なインストールは X_pack と基本認証に基づいています。

次のようなカールを実行すると、すべて正常に動作します。

 curl -XPUT -u elastic:elasticpassword "http://localhost:9200/movies/movie/1" -d'
{
  "title": "The Godfather",
  "director": "Francis Ford Coppola",
  "year": 1972, "user":"elastic", "password":"changeme"
}'
 

しかし、トークンリクエスト(ユーザーとパスワード)を実行し、トークンでElasticsearchを照会する方法はありますか?クエリを実行するたびにユーザー/パスワードを指定する必要はありませんか?

  ベストアンサー

dockerイメージのデフォルトのX_Packには、基本認証が有効になっています。あなたが使用しているものです。同じトークンはbase64(ユーザー:パスワード)です。 http://base64encode.org と入力を使用して同じものを生成できます。

カールには、基本認証URLを呼び出す2つの方法があります

 curl -XPUT -u elastic:elasticpassword "http://localhost:9200/movies/movie/1" -d''
 

あなたはすでに

 curl -H "Authorization: Basic ZWxhc3RpYzpjaGFuZ2VtZQ==" -XPUT "http://localhost:9200/movies/movie/1" -d'....'
 

あなたの問題がこれを何度も繰り返しているなら、以下のようにbashプロファイルにエイリアスを作成する方がよいでしょう

 alias curles = 'curl  -u elastic:elasticpassword'
 

その後、以下のようにコマンドを呼び出すことができます。

 curles -XPUT "http://localhost:9200/movies/movie/1" -d''
 

  同じタグがついた質問を見る

authenticationcurlelasticsearch