AWS Elastic Beanstalk 애플리케이션에서 HTTP 기본 인증 구성
그리고 AWS가 Amazon Linux 2를 사용하는 최신 버전의 Elastic Beanstalk에서 일부 내용을 변경한 것 같습니다. 따라서 인터넷에서 찾을 수 있는 대부분의 구성이 더 이상 작동하지 않습니다.
다음 단계에서는 HTTP 기본 인증을 사용하여 앱을 배포하는 새로운 접근 방식을 설명합니다.
1. .htpasswd 생성
.htpasswd는 HTTP 사용자의 기본 인증을 위한 사용자 이름과 암호를 저장하는 데 사용됩니다. Elastic Beanstalk는 환경의 동작과 포함된 리소스를 구성하는 데 사용할 수 있는 많은 구성 옵션을 정의합니다. 우리는 논문 중 하나를 사용할 것입니다 :)
애플리케이션 번들의 루트에
.ebextensions
라는 폴더를 만들고 다음 코드를 사용하여 00-http_basic_auth.config
라는 파일을 추가합니다.files:
/etc/nginx/.htpasswd:
mode: "000755"
owner: root
group: root
content: |
user:password
🚨 사용자와 암호를 조합으로 바꾸십시오. 인터넷에서 이 파일의 암호를 생성하는 방법을 쉽게 찾을 수 있습니다. :)
2. 기본 위치 재정의
다음으로 Beanstalk에서 제공하는 기본 nginx 위치 conf를 덮어써야 합니다.
이렇게 하려면 애플리케이션 번들의 .platform/nginx/conf.d/elasticbeanstalk/00_application.conf 위치에 파일을 생성합니다.
그런 다음 이 코드를 추가합니다. 이것은 마지막 두 줄을 추가한 기본 nginx 위치 conf입니다.
ℹ️ 애플리케이션에 따라 포트 번호를 변경하는 것을 잊지 마십시오.
location / {
proxy_pass http://127.0.0.1:8080;
proxy_http_version 1.1;
proxy_set_header Connection $connection_upgrade;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
auth_basic "Restricted";
auth_basic_user_file /etc/nginx/.htpasswd;
}
3. HTTP 기본 인증이 상태 확인과 함께 작동하도록 합니다.
지금까지 구성이 준비되었으며 앱을 배포하려고 하면 HTTP 기본 인증이 작동하지만 Beanstalk는 이제 상태 확인이 자체적으로 인증해야 하므로 앱이 비정상임을 나타냅니다. 이를 방지하기 위해 하나의 경로를 공개적으로 사용할 수 있습니다.
이전에 만든 파일
.platform/nginx/conf.d/elasticbeanstalk/00_application.conf
에 다음 코드를 추가합니다.location /elb-status {
proxy_pass http://127.0.0.1:8080/status;
}
ℹ️ 이 경로도 앱에서 작동하지만 민감한 정보 없이 상태 확인만 하세요.
마지막으로 Beanstalk 인스턴스의 기본 상태 확인 경로를 변경하기만 하면 됩니다.
AWS 콘솔에서 Beanstalk 인스턴스로 이동한 다음 로드 밸런서 섹션에서 "구성"및 "편집"을 클릭하십시오.
이 상태 확인 경로
/elb-status
를 사용하여 기본 프로세스를 수정합니다.변경 사항 저장 및 적용
도움이 되었기를 바라며 HTTP 기본 인증을 즐기세요 :))
Reference
이 문제에 관하여(AWS Elastic Beanstalk 애플리케이션에서 HTTP 기본 인증 구성), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/bbourgeois/configuring-http-basic-auth-on-an-aws-elastic-beanstalk-application-4m89텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)