Publicado: Jul 30, 2021

Estamos lançando uma maneira flexível e simples de implementar a lógica de autorização personalizada com chamadas de API do AWS Lambda para AWS AppSync GraphQL.

O AWS AppSync é um serviço GraphQL gerenciado que simplifica o desenvolvimento de aplicativos, permitindo que você crie uma API flexível para acessar, manipular e combinar dados com segurança de uma ou mais fontes de dados com menos chamadas de rede. Com o AWS AppSync, você cria APIs GraphQL com as quais suas aplicações interagem pela Internet. Embora os endpoints da API sejam acessíveis publicamente, eles nunca permitem acesso não autorizado. Um método de autorização — um token no cabeçalho da solicitação ou assinatura da própria solicitação com credenciais da AWS — sempre é necessário para acessar sua API AppSync. Até pouco tempo, o AppSync fornecia quatro modos de autorização diferentes:

  • Chaves de API
  • Grupos de usuários do Amazon Cognito
  • OpenID Connect
  • AWS Identity and Access Management (IAM)

Estamos adicionando um novo modo de autorização baseado no AWS Lambda para casos de uso que têm requisitos específicos não totalmente cobertos pelos modos de autorização existentes, permitindo que você implemente estratégias de autorização personalizadas para proteger suas APIs do GraphQL.

Sempre que uma solicitação chegar ao AppSync, a função escolhida do Lambda receberá um token de autorização do cliente e executará a lógica de autorização desejada definida pelo desenvolvedor. O AppSync receberá uma carga útil do Lambda após a invocação, permitirá ou negará a chamada de API de acordo e ingerirá dados de contexto específicos para chamadas autorizadas do Lambda para resolvedores GraphQL no AppSync.

O AppSync, agora com a capacidade de implementar lógica de autorização personalizada com o AWS Lambda, oferece a flexibilidade necessária para atender a todos os seus requisitos de autorização. Você pode misturar e corresponder a autorização baseada no AWS Lambda com qualquer um dos modos de autorização do AppSync existentes em uma única API e vincular provedores de autorização específicos a tipos, campos ou operações no esquema GraphQL.

Autorizadores do Lambda estão disponíveis em todas as regiões da AWS onde o AppSync está disponível. Para obter mais detalhes, consulte nossa postagem no blog e a documentação do AppSync.