api 호출 시 cognito의 사용자 풀에서 인증을 받고 호출하는 경우 이 방법을 사용하면 된다.
사전작업으로 Cognito의 유저 풀과 람다함수가 생성되어있어야 한다.
1. API Gateway 콘솔 -> API 생성
REST와 HTTP 중 어떤 API를 선택할지는 아래 글을 참고하면 된다.
https://docs.aws.amazon.com/ko_kr/apigateway/latest/developerguide/http-api-vs-rest.html
여기서는 테스트호출과 실행로그 확인을 하기 위해 REST API로 구축했다.
설정은 다음 그림과 같이 했다.
엔드포인트는 보통 리전이나 에지 최적화로 하고 VPC내부에서만 액세스 하게 하려면 프라이빗으로 설정하면 된다.
모두 마치면 아래 화면으로 들어오게 된다.
2. 권한 부여자 생성
위 그림에서 권한부여자를 선택하고 권한 부여자 생성을 클릭한다.
인증으로 Cognito를 사용할 거기 때문에 유형을 Cognito로 설정해주고 기존에 생성한 사용자 풀을 선택한다.
토큰원본은 Authorization으로 작성해준다.
생성 후 테스트 할 때는 authorization값에 cognito에서 받은 idtoken을 넘겨주면 된다.
3. 리소스 생성
다음과 같이 프락시 리소스로 생성해 준다.
경로는 {proxy+}로 해줌으로써 하위 모든 리소스에 대한 요청을 받아 줄 수 있다.
4. lambda 함수 연결
람다함수를 선택해서 기존에 만들어 놓은 람다함수와 연결을 한다.
이렇게 하고 저장하면 자동으로 람다함수에 권한이 추가된다.
5. 권한 부여자 연결
위 그림에서 메서드 요청을 클릭한다.
승인 부분에서 만들어 놓은 cognito 유저 풀을 선택해 주고 옆의 체크 표시를 눌러 저장한다.
이렇게 하면 모든 구성이 끝난다.
'AWS' 카테고리의 다른 글
AWS ECS 파이썬 도커 이미지 배포 기록 (0) | 2023.07.10 |
---|---|
AWS Timestream 알아보기 - Architecture편 (3) | 2023.05.10 |
AWS lambda cognito 키 획득 (0) | 2023.02.22 |
AWS EC2 nvm, node.js 설치 (0) | 2023.02.22 |
댓글