Kinesis 流身份验证

Kinesis Stream Authentication

我有一个带有自定义身份验证的移动应用程序,该应用程序发布了此时不使用 Cognito 的 JWT 令牌。我想在用户对 Kinesis 数据流进行身份验证后从应用程序流式传输位置数据。

如何保护 Kinesis 数据流以仅允许从经过身份验证的用户发送的数据?我读过我可以使用未经身份验证的用户创建一个 Cognito 身份池,但是我假设这将允许任何人从 Cognito 获取令牌?如何仅允许我的应用程序的经过身份验证的用户将数据发送到 Kinesis 流?

我们可以使用 AWS API 网关创建一个 REST Api,直接将请求代理到 Kinesis。 Here 是教程

Cognito 可以充当身份验证服务器,并为您提供具有写入 Kinesis 所需权限的令牌。但是,如果您的移动应用程序已经受到自定义身份验证服务器的保护并接收到 JWT,我认为最好使用自定义授权器(它根据您的身份验证服务器验证您的 JWT)来保护 Api 网关而不是 Cognito。

custom Authorizer lambda 函数教程