使用 Amazon Cognito 用户池实施 OAuth2

Implementing OAuth2 with Amazon Cognito Userpools

我们正在构建一个 IoT 设备,其用户身份验证目前通过 Amazon Cognito 用户池完成。我们有一个 Web 应用程序,用户通过他们的凭据登录并返回 JSON Web 令牌,这反过来允许他们通过 API 网关访问 API 资源。这工作得很好,但是我试图了解 how/if 这个系统将来可以用于 OAuth2 授权。我们正计划成为 IFTTT 合作伙伴(目前仅支持 OAuth2)。 AWS 将来可能会提供更多的 OAuth2 服务吗?如果没有,是否可以使用当前的实现来设置我们自己的 OAuth2 端点?

https://partners.ifttt.com/docs/api_reference#service-connection

http://docs.aws.amazon.com/cognito/latest/developerguide/amazon-cognito-user-pools-using-tokens-with-identity-providers.html

提前致谢。

您可以在自定义授权器中设置几乎所有内容,因为它只是您控制的 Lambda 函数代码。这包括使用 Cognito 提供的 public 密钥验证 Cognito-vended JWT。我相信您还可以向 Cognito 用户池令牌添加范围,但我不确定。对于委派,您必须自己设置该组件。