@Bkenta

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

【Basic認証】AWS ElasticBeanstalkでのBasic認証の設定方法

解決したいこと

AWS ElasticBeanstalkでBasic認証を設定したいです。

AWS ElasticBeanstalkを利用し、webアプリを本番環境へデプロイしました。
特定のユーザにのみアクセスを許可したく、
Basic認証の設定を試みましたが上手くいきません。

発生している問題・エラー

■Basic認証の設定がうまくいきません。

自分で試したこと

ローカルからEC2へSSH接続をした上で下記のことを試しました。

①.httpasswdの作成
 □配置場所:/var/www/html/自作ディレクトリ[a]/
 □記載内容:
   ユーザ名:パスワード(ハッシュ化したもの)
  の形式でID・pass情報を1行のみ記載

■参照サイト:https://qiita.com/H-Toshi/items/05675a383f66ca150e73

②/etc/nginx/nginx.confを修正(下記情報を追記)

http {
	~略~
    server {
    	~略~
	<--以下を追記-->
        location /root直下のディレクトリ/login.php {
                root /var/www/html/自作ディレクトリ[a]/自作ディレクトリ[b];
                index root直下のディレクトリ/login.php;
                auth_basic "basic authentication";
                auth_basic_user_file "/var/www/html/自作ディレクトリ[a]/.htpasswd";
                }
	<--追記ここまで-->
    }
}

■参照サイト:https://qiita.com/ekzemplaro/items/0385c34c4325da2f2af6

③下記コマンドでnginxの再起動
sudo service nginx stop
sudo service nginx start

環境

■プラットフォーム:PHP 8.1 running on 64bit Amazon Linux 2/3.5.5
■webサーバー:nginx
■セキュリティ設定:
 □EC2インスタンス
  インバウンド :「マイIP」による【HTTP】・【SSH】通信のみ許可
  アウトバウンド:RDSへの【MYSQL/Aurora通信】・【すべてのトラフィック】を許可
※EC2が過剰にオートスケーリングされないよう最小キャパシティを1に設定

補足

初心者です。
今回、初めて作成したwebアプリを初めて本番環境へデプロイしました。
Basic認証のことをブログ記事などで知り、設定ファイルの記述内容をひとつひとつ調べながら設定を試みているような状態です。
もし開示情報として不足しているものがございましたら大変恐縮です。
その際は遠慮なくご質問下さい。

ご教示いただけますと幸いです。
どうぞよろしくお願い致します。

0 likes

1Answer

自己解決しました。

具体的には、
/etc/nginx/conf.d/ 内に自作の設定ファイルを設け、
下記のように内容を記述したところ上手くBasic認証が設定されました。

location / {
        auth_basic "basic authentication";
        auth_basic_user_file "/var/www/html/自作ディレクトリ/.htpasswd";
}

※今回は自作設定ファイルを用意しましたが、それ自体は解決に寄与していないかもしれません。
locationの指定を/(ルート)としたことで設定が通ったと思われます。

0Like

Your answer might help someone💌