Cognito-Express:使用AWS Congito进行API身份验证
概要
cognito-express通过验证由Amazon Cognito生成的AccessToken或IDToken的JWT签名,对Node.js应用程序(在服务器上运行或在AWS Lambda函数中运行)上的API请求进行身份验证。
动机
通过此模块,您可以通过验证AccessToken或IDToken的JWT签名来认证Node.js API请求-无需为每个API调用调用Amazon Cognito。
可以轻松,毫不费力地将该模块集成到任何支持风格中间件(包括应用程序或框架中。
该模块实质上捆绑了官方AWS文档中列出的关于步骤1-7。
下载并存储为用户池设置的JSON Web令牌(JWT)。
将令牌字符串解码为JWT格式。
检查iss索赔。 它应与您的用户池匹配。
检查tokenUse声明。 它应与您为access或id令牌类型设置的首选项相匹配
从JWT令牌标头获取孩子,并检索在步骤1中存储的相应JSON Web密钥。
验证已解码的JWT令牌的签名。
检查exp索赔,并确保令牌未过期。
1