0

基本上,我有一个应用程序需要对一些 Post 变量(LTI 消费者变量)进行身份验证。所以我的想法是我使用 lambda 在 s3 中使用一些变量对应用程序进行身份验证和服务。例如 -

LTI 消费者使用 POST 调用 -> https://mycoolapp.com -> API Gateway -> Lambda(验证 post 变量)-> 调用 s3 应用程序(成功时连同一些变量,例如 userID 等)

这是一个正确的方法,如果是这样,我该如何设置?

4

1 回答 1

1

如果我没记错的话,您的方法当然可行,但从技术上讲,它不再是 S3 Web 应用程序。

Amazon S3 具有称为静态 webhost的某些功能,启用它后,AWS 会自动创建一个 Web 服务器,为您的 s3 中的文件提供服务。如果您在其中有可以作为应用程序的静态文件(例如作为网页的 html),那么它就是 S3 Web 应用程序

使用您的方法,您正在创建一个与 Lambda 集成的 API 网关,然后您可以在 Lambda 上执行任何操作,包括进行身份验证、通过 s3 api 获取您存储在 s3 上的应用程序并将其返回给客户端。请注意,现在为 web 服务的将是 lambda 而不是 s3,所以从技术上讲,它是基于 lambda 的 web 服务器,文件存储在 S3 上:)

有关身份验证的更多信息,如果您想利用它进行身份验证,API 网关有它自己的自定义授权方。使用自定义授权器,您可以为其他端点重用您的授权和身份验证逻辑

于 2018-12-30T15:50:34.543 回答