gpt4 book ai didi

spring-security - AWS Lambda、AWS API 网关和保护 REST 端点

转载 作者:行者123 更新时间:2023-12-04 06:57:53 25 4
gpt4 key购买 nike

我正在考虑在 AWS Lambda 和可能的 AWS API Gateway 上将服务实现为一系列 REST 端点。前端将是直接调用这些端点的 JS 浏览器客户端,无需中间层。

在我的研究中,我似乎找不到的是,我如何确保可以访问“登录”的人的电话?我看到 Lambda 调用是无状态的,因此没有会​​话数据。我不需要 session 数据,除了知道它们已经过身份验证并且在相同情况下被授权访问特定端点。会有一个数据库(DynamoDB 或 RDS),所以如果我需要 session 数据,我可以创建它。

有没有办法做到这一点?我意识到我可以在每次 API 调用时传递他们的用户名和密码,但似乎必须有更好的方法。

此外,这可能会在 Java 中实现。我可以使用 Spring Security 吗?

最佳答案

我认为您不想在 Lambda 函数中使用 Spring Security。我无法想象这工作得很好,我怀疑它根本不会奏效。即使它可以在 Lambda 上运行,它肯定会增加您函数的冷启动时间,而不是您想要处理的。

向无状态服务提供用户身份验证检查的推荐方法是使用 JWT(JSON Web token )。 Auth0 提供了一篇很好的关于 JWT 的综合文章 here ,以及将 Auth0 与 API Gateway 和 Lambda 结合使用的教程 here .即使您不使用 Auth0,我认为第二个教程对于理解如何在 API Gateway 和 Lambda 上执行用户身份验证很有用。

您也可以使用 API Gateway Custom Authorization函数,它允许您将所有身份验证代码封装在一个 Lambda 函数中,该函数充当 API 端点的“看门人”。我建议使用自定义授权 Lambda 函数来验证提交给您的 API 的 JSON Web token 。

关于spring-security - AWS Lambda、AWS API 网关和保护 REST 端点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36653414/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com