Cognito用户池+标识池的API网关授权

时间:2017-05-24 16:05:51

标签: aws-api-gateway amazon-cognito aws-cognito amazon-cognito-facebook

我正在开发一个网络应用程序,用户可以使用他们的个人电子邮件地址登录/注册,或使用Facebook / Twitter等联合身份登录。我已为此设置了Cognito用户池和标识池。

成功登录后,将调用API网关上托管的API以在应用程序上显示一些数据。我想为每个API调用调用实现授权,并仅为授权用户返回响应。

我在API网关中创建了用户池授权程序,我可以根据Id令牌验证在用户池中创建的用户。

根据我的理解,要从身份池验证用户,我可以在Api Gateway中使用AWS_IAM。 AWS_IAM可能不适合我的应用程序,因为用户可以在用户池和身份池中调用API。

我正在考虑使用Lambda函数使用Custom Authorizer实现身份验证。

如果必须实施自定义授权程序,是否应根据会话令牌验证策略文档是否足以验证来自Userpool / Identity Pool的用户?如果有的话,请建议自定义授权的替代方案。

提前致谢

1 个答案:

答案 0 :(得分:0)

你看过这篇博文了吗? https://aws.amazon.com/blogs/mobile/integrating-amazon-cognito-user-pools-with-api-gateway/

可以将您的Cognito用户池令牌直接集成为API网关的授权人,并且可以大大简化您所描述的流程。