게시된 날짜: Jul 30, 2021

오늘 AWS Lambda for AWS AppSync GraphQL API 호출을 통해 사용자 지정 권한 부여 로직을 구현하는 유연하면서도 간단한 방법을 출시했습니다.

AWS AppSync는 더 적은 수의 네트워크 호출로 하나 이상의 데이터 원본에 있는 데이터에 안전하게 액세스하고 이러한 데이터를 조작 및 결합할 수 있는 유연한 API를 생성하여 애플리케이션 개발을 간소화하는 관리형 GraphQL 서비스입니다. AWS AppSync를 사용하여 인터넷을 통해 애플리케이션이 상호 작용할 수 있는 GraphQL API를 생성합니다. API 엔드포인트에 공개적으로 액세스할 수 있어도 무단 액세스는 허용하지 않습니다. AppSync API에 액세스하려면 AWS 자격 증명으로 요청 자체에 서명하거나 요청 헤더의 토큰을 사용하는 등의 권한 부여 방법이 항상 필요합니다. 최근까지 AppSync는 다음과 같은 네 가지 서로 다른 권한 부여 모드를 제공했습니다.

  • API 키
  • Amazon Cognito 사용자 풀
  • OpenID Connect
  • AWS Identity and Access Management(IAM)

이제 기존 권한 부여 모드로는 완전히 충족하지 못하는 특정 요구 사항이 있는 사용 사례에 대해 AWS Lambda에 기반한 새로운 권한 부여 모드를 추가하여 GraphQL API를 보안하기 위해 사용자 지정 권한 부여 전략을 구현할 수 있습니다.

요청에 AppSync에 도달할 때마다 선택한 Lambda 함수가 클라이언트로부터 권한 부여 토큰을 수신하고 개발자가 정의한 원하는 권한 부여 로직을 실행합니다. AppSync는 호출 후 Lambda에서 페이로드를 수신하고, API 호출을 적절히 허용하거나 거부하며 Lambda에서 권한 부여된 호출의 특정 컨텍스트 데이터를 AppSync의 GraphQL 해석기로 수집합니다.

이제 AppSync는 AWS Lambda에서 사용자 지정 권한 부여 로직을 구현하는 기능을 통해 모든 권한 부여 요구 사항을 충족하는 데 필요한 유연성을 제공합니다. AWS Lambda 기반 권한 부여와 단일 API에서 기존 AppSync 권한 부여 모드 중 하나를 결합 및 조합하고, GraphQL 스키마에서 유형, 필드 또는 작업에 특정 권한 부여 공급자를 연결할 수 있습니다.

Lambda 권한 부여자는 현재 AppSync가 제공되는 모든 AWS 리전에서 사용 가능합니다. 자세한 내용은 블로그 게시물AppSync 문서를 참조하세요.