LoginSignup
2
1

More than 5 years have passed since last update.

CloudFrontでBasic認証

Posted at

CloudFrontの設定をいっつもパートナーさんに投げてるとバチが当たる。
俺の貴重な1時間はこうして無駄になったのである。
CloudFrontを利用しているサイトにBASIC認証をかける時は、Headerの設定をしないといかんよ、というメモ。

Apacheの設定

これはごくごく普通の設定。今回はバーチャルホストの設定ファイルで書いてますが、.htaccessを使っていても一緒です。ちなみにApache2.4です。

AuthUserfile {{ パス }}/.htpasswd
AuthName "Please enter your ID and password"
AuthType Basic
Require valid-user

通常はこれでBASIC認証の設定は完了します。apachectl restartなどでApacheを再起動して該当URLにアクセス、例のダイアログが表示されたら設定自体は問題ないはずです。

CloudFrontの設定

…ところが、間にCloudFrontを噛ましていると、このダイアログが消えず、無限認証地獄にはまり込みます…。何故なら、CloudFrontはデフォルトで認証情報を通してくれないから…。そこで設定を変更してやります。

  1. CloudFrontのコンソールにアクセス。該当のドメインの管理画面にログインします
  2. 「Behaviors」のタブをクリック
  3. 「Create Behavior」をクリック。Behavior作成画面に遷移します
  4. Path Patternに「*」を設定。もしくは、対象のディレクトリを指定します
  5. Whitelistsに、「Authorization」を追加して、画面右下の「Yes, Edit」を押下。編集を完了します

スクリーンショット 2019-03-20 21.00.41.png

これで無事、サイトにアクセスできるようになったはず。
あなたのちょっとした時間が無駄にならなければ、俺はそれだけで幸せなのです。

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