ECS fargate에 배포된 API에 액세스하기 위해 AWS ALB 및 Cognito를 사용하여 사용자 인증

ALB가 Amazon Cognito 구성 도메인의 로그인 페이지(Amazon Cognito에서 호스팅하는 UI)로 리디렉션한 후 자격 증명을 입력합니다.
페이지에 처음 액세스하는 것이므로 새 사용자로 등록합니다. Amazon Cognito는 이 정보를 사용자 풀에 저장합니다. 나중에 Amazon Cognito 사용자 풀 콘솔로 이동하면 이 새 사용자가 표시됩니다.

ALB에 로그인하면 아래 다이어그램에 표시된 샘플 데모 PHP 애플리케이션의 방문 페이지로 리디렉션됩니다.

결론
이 게시물에서는 Amazon Cognito 와 ALB의 내장 통합을 사용하여 인증 코드를 작성하지 않고 컨테이너화된 애플리케이션에 액세스하는 사용자를 인증하는 방법을 보여주었습니다 . 사용자 관리 및 인증 유지 및 보안이 애플리케이션에서 오프로드되므로 핵심 비즈니스 로직을 애플리케이션에 구축하는 데 집중할 수 있습니다. Amazon ECS가 모든 작업을 처리 하므로 웹 트래픽용 컨테이너를 관리, 예약 및 확장하기 위한 플랫폼 작업에 대해 걱정할 필요가 없습니다 .
========================================================================
1. 대상그룹 생성





2. ALB 생성



- Cognito 는 HTTPS 를 사용하지만, 아직 미생성으로 현재는 HTTP로 설정



3. Cognito 생성



- 도메인 생성

- APP Client 생성


- App client secret 확인

- Resource servers 설정

- App client settings 확인

4. ALB로 이동 및 설정


- http 리스너 삭제

- https 리스너 생성





5. 도메인 연동 작업

- Cognito 에서 주소 확인

6. ECS 생성










7. 타겟그룹 이동


8. 테스트




- 로그인 성공하면 하위 경로도 조회 가능

9. Postman 테스트








- 종료 기간 확인 (예시는 6일 설정)

- 하위 경로 조회 성공

- POST 로 article 추가 성공

- GET 로 article 신규조회 성공

https://www.youtube.com/watch?v=8Xvlubinftk
'[AWS-SM] > Cognito' 카테고리의 다른 글
OAuth2란? (0) | 2023.02.05 |
---|---|
[중요] Secure your API Gateway with Amazon Cognito User Pools (0) | 2023.02.05 |
[AWS] Cognito 회원 가입 및 로그인 기능 구현하기(feat. amazon-cognito-identity-js, TypeScript) (1) | 2023.02.04 |
[AWS] Cognito User Pool 생성하기 (0) | 2023.02.04 |
[AWS] Cognito란? (0) | 2023.02.04 |