我正在尝试决定为我的应用程序选择哪个aws网关版本(HTTP vs REST API网关)。
我正在尝试使用AWS HTTP API网关,看看它是否适合我的用例。
这些是我的要求:
- 唯一的客户端是一个移动应用
- 其余API只能由登录用户访问
- 我想使用cognito与cognito授权器
- 我的后端是lambda服务和HTTP rest服务的混合,通过内部应用程序负载平衡器公开
一切似乎都支持,唯一的问题是我将使用api密钥,但这个功能目前不支持HTTP api网关。
如果我去HTTP没有任何api密钥是否有任何安全问题?什么是正确的方式来限制访问仅请求来自我的移动应用程序?
一切似乎都被支持,唯一担心的是我将使用api密钥,但此功能目前不支持HTTP api网关。
HTTP api支持OpenID Connect和OAuth 2.0授权https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api.html如果您有任何自定义api-key,您仍然可以使用授权器lambda来对客户端进行身份验证和授权。
是否有任何安全问题,如果我去HTTP没有任何api密钥?
api-key是什么意思?API-key通常是静态共享密钥,主要在后端应用程序中使用。声称用户需要身份验证并使用移动应用程序,拥有硬编码的api密钥并不是最好的主意(读-这是一个糟糕的主意)
在这些要求下,默认选项是使用OAuth2/OIDC进行用户授权,并沿着API请求传递用户的访问令牌。
限制访问仅来自我的移动应用程序的请求的正确方法是什么?
I want to use cognito with cognito authorizer