로그인 후 API Gateway로 리소스에 액세스 - Amazon Cognito

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

로그인 후 API Gateway로 리소스에 액세스

Amazon Cognito 사용자 풀 토큰의 일반적인 용도는 게이트웨이에 대한 요청을 승인하는 것입니다. API REST API 액세스 토큰의 OAuth 2.0 범위는 for와 같은 메서드와 경로를 승인할 수 있습니다. HTTP GET /app_assets ID 토큰은 일반 인증 역할을 할 수 API 있으며 사용자 속성을 백엔드 서비스에 전달할 수 있습니다. APIGateway에는 보다 세분화된 로직을 적용할 수 JWT있는 권한 부여자 및 HTTP APIs Lambda 권한 부여자와 같은 추가 사용자 지정 권한 부여 옵션이 있습니다.

다음 다이어그램은 액세스 토큰의 범위가 2.0인 상태에서 REST API a에 대한 액세스 권한을 얻는 애플리케이션을 보여줍니다. OAuth

Amazon Cognito 사용자 풀로 인증하고 Amazon Gateway를 통해 API 리소스에 대한 액세스를 승인하는 애플리케이션의 흐름도입니다. API

앱은 인증된 세션에서 토큰을 수집하여 요청의 헤더에 전달자 토큰으로 추가해야 합니다. Authorization 토큰 콘텐츠를 평가하기 위해API, 경로 및 방법에 대해 구성한 권한 부여자를 구성하십시오. APIGateway는 요청이 권한 부여자에 대해 설정한 조건과 일치하는 경우에만 데이터를 반환합니다.

APIGateway에서 애플리케이션으로부터의 액세스를 API 승인할 수 있는 몇 가지 잠재적 방법은 다음과 같습니다.

  • 액세스 토큰에는 올바른 OAuth 2.0 범위가 포함되어 있습니다. a에 대한 Amazon Cognito 사용자 풀 권한 부여자는 진입 장벽이 낮은 일반적인 REST API 구현입니다. 또한 이 유형의 권한 부여자에 대한 요청의 본문, 쿼리 문자열 파라미터 및 헤더를 평가할 수 있습니다.

  • ID 토큰은 유효하며 만료되지 않았습니다. Amazon Cognito 권한 부여자에게 ID 토큰을 전달하면 애플리케이션 서버의 ID 토큰 콘텐츠에 대한 추가 검증을 수행할 수 있습니다.

  • 액세스 또는 ID 토큰의 그룹, 클레임, 속성 또는 역할은 Lambda 함수에서 정의한 요구 사항을 충족합니다. Lambda 권한 부여자는 요청 헤더의 토큰을 파싱하고 이를 평가하여 승인 결정을 내립니다. 함수에서 사용자 지정 로직을 구성하거나 Amazon 검증 권한을 API 요청할 수 있습니다.

사용자 풀의 토큰을 사용하여 AWS AppSync APIGraphQL에 대한 요청을 승인할 수도 있습니다.