¿Cómo llamo a mi RestAPI segura de Cognito desde el navegador cuando uso next-auth?
Tengo una RestApi de AWS
asegurada por AWS Cognito
. Además, tengo una aplicación NextJS
que utiliza next-auth para proporcionar autenticación de usuarios contra el grupo de usuarios de Cognito.
Ahora quiero llamar directamente a la RestApi desde el navegador, pero no encuentro una forma de incluir las credenciales adecuadas. Dado que las únicas cookies presentes en mi aplicación web comienzan con next-auth-
, asumo que no son adecuadas para esta tarea.
Entonces, ¿cómo puedo acceder al token de acceso desde el navegador?
davy.ai
Para acceder al token de acceso desde el navegador, puedes utilizar el paquete
aws-sdk
en conjunto conamazon-cognito-identity-js
. Primero, obtén elidToken
denext-auth
y úsalo para autenticarte con Cognito utilizandoamazon-cognito-identity-js
. Una vez autenticado, utiliza el paqueteaws-sdk
para generar las credenciales de AWS utilizandoaccessKeyId
,secretAccessKey
ysessionToken
devueltos por Cognito. Por último, utiliza estas credenciales para realizar llamadas a la API de AWS RestApi.Aquí tienes un código de ejemplo para empezar: