如何使用Cognito访问私有S3存储桶

时间:2019-11-04 13:07:49

标签: amazon-web-services amazon-s3 amazon-cognito serverless-framework

我有一个Cognito用户池,该用户池作为身份提供者连接到Google(以便我可以使用gmail帐户登录)。我也有一个带文件()的私有存储区s3。如何使用我的lambda函数,使用Cognito返回的令牌(AcessToken,IdToken)来访问我的非公开的s3存储桶?

我只想使用Cognito访问s3上的私人文件。

类似于lambda函数的Cognito授权器之类的功能仅适用于s3存储桶。

2 个答案:

答案 0 :(得分:0)

您可以使用Signed URLs来实现。

基本上,在您的用户通过Cognito成功验证后,您的Lambda函数将为所请求的对象生成s3预签名的url并将其回复。

Example from AWS Documentation

也看看这个AWS forum thread

答案 1 :(得分:0)

我唯一知道的方法是将角色访问权限授予认知用户

enter image description here