7
1

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 3 years have passed since last update.

Basic認証が何度やっても通らない【cloudfront】

Last updated at Posted at 2021-07-10

概要

ベーシック認証を入れて正しいIDとパスワードを入力したはずなのに何度やっても通らない。。。
正しい認証情報を入力しても、認証ダイアログが無限ループで表示されます。
もしそんな状況が起きた時はcloudfrontの設定が原因かもしれません。

起きた事象

.htaccessと.htpasswdを認証したいディレクトリに置くお決まりの作法で用意してあげてapacheをrestart!
よしベーシック認証かかってるはず・・・何度IDとPWを入れても例のダイアログが出続ける

これはおかしい...

アクセス先から参照してる対象ディレクトリでベーシック認証かかってるかも?
そんなこともなくテストファイルを置いても発生した。

問題の原因

HTTP認証はチャレンジ・レスポンス方式で行われています。
サーバーで自分自身を認証したいクライアントAuthorizationは、資格情報を含む要求ヘッダーを含めることで認証できます。
そのレスポンスにも通常、Authorizationヘッダーを含む要求を発行します。
そのヘッダーに含む情報にAuthorizationがないから(cloudfrontでその設定をしてないから)今回の問題が起きました。

HTTPAuth.png

引用:https://developer.mozilla.org/en-US/docs/Web/HTTP/Authentication

おかしいなと思ったらNetworkを見る

x-cacheの箇所に「Error from cloudfront」と出ています。
croudfront内でのエラーが濃厚です。

スクリーンショット 2021-07-10 10.20.54.png

cloudfrontでheaderにAuthorizationを含める

CloudFront→Distributionにメニューから飛んで
BehaviorsのDefaultパターンを選択して編集

cloudfrontのAdd headerに「Authorization」を追加してあげます。
旧デザインだとwhitelistheaderというところにあります。

スクリーンショット 2021-07-10 11.13.50.png

スクリーンショット 2021-07-10 10.17.58.png

終わり

これでベーシック認証でIDとPWを入れて認証がうまく通りました。

7
1
0

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
7
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?