0

我有aws example.com的域,目前我有记录集,以便当用户转到example.com时,它会从S3(使用角度完成)和后端api(Lambda和API门的方式)。我没有登录过程,因为网站的目的是面向公众。AWS API网关方法授权

我可以在方法上使用apikey来授权http调用,但我仍然需要将它保存在某处的js代码中,我不想这样做。在这种情况下,我不确定IAM角色如何帮助我。

有没有什么办法可以让API允许来自特定域的调用?

回答

0

a few ways to skin this cat

最痛苦的方式很可能是使用AWS Signature V4 - 不幸的是,对于没有内置验证系统的网站来说,没有很好的答案。有一天,他们会让我们将API Gateways停放在VPC内部,但那一天不是今天。

1

您可以使用为AWS Cognito联合身份验证中未经身份验证的用户定义的IAM角色。 AWS document将指导将IAM角色分配给未经身份验证的用户。

然后,您可以在API网关中为任何特定API的资源启用“AWS_IAM”授权者选项。

这个question在实现IAM基于角色的访问API中使用类似的方法,其中实现使用外部联合身份验证(Google)而不是未经身份验证的用户身份。

相关问题