3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

NGINXをリバースプロキシにしてOpensaerchに接続する。

Last updated at Posted at 2022-09-05

どうも、「病院なび」の開発チームメンバー甘利です。
猛暑の夏が過ぎ去り、秋の足音が近づいてきている気がします。

今回は認証に AWS Opensearch にリーバースプロキシを設定していこうと思います。
認証サービスには Cognito 、リーバースプロキシには NGINX を設定します。

とはいえ、公式ドキュメントの通りに設定するだけです、、がはまりましたので、記事にしておきたいと思います。

パスワードの再発行画面にいこうとすると、404エラーになる。

Cognito を利用しているとOpensearch dashboard にアクセスした際に以下の様な認証ダイアログが表示されます。自分で設定しておいてアカウント忘れたので、「Forgot your password」 をクリック!

スクリーンショット 2022-08-22 8.07.56.png

ユーザー名を入れてくれと言われるので、入力して「Reset My Password」をポチッと
スクリーンショット 2022-08-22 8.13.27.png

orz.. 404になってしまいました。

スクリーンショット 2022-08-22 8.14.57.png

NGINXのConfigファイルが間違いがないか確認

こういうのは大体自分が間違っているので、自前の設定ファイルとドキュメントの設定ファイルのDiffを確認してみましたが、ホスト以外異なるところはありませんでした。

頭を使わずに解決ができそうにないみたいなので、少し頭をつかいます。

confirm がパスとして定義されていない。

404 になるページのパスは confirm なので、そのページについての設定が抜けてるということになります。 ドキュメントの location は以下のように設定されてます。

 location ~ \/(log|sign|fav|forgot|change|saml|oauth2) {

cognitoのパスがlocationに書かれているので、ここに confirm がないと動きませんよね。
ということで追加します。

 location ~ \/(log|sign|fav|forgot|change|saml|oauth2|confirm) {

無事パスワードのリセットができるようになりました。

何度見直して、どう考えても自分が間違っていない時は他を疑ってみよう

公式のドキュメントに間違いや不足があることもありますので、自分のやったことをしっかり確認したあとに、疑ってみるのも重要ですね。(自分が間違っていると思い込んでいたので、解決に時間かかりました。)

とりあえずフィードバックは投げておこうと思います。

以上です。
もし今回の記事が少しでも面白いと思った方は、LGTMをお願いします。
記事に対する鉞は叩き落としますが、マシュマロは大好物です。

3
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?