我正在尝试找出在Amazon API Gateway中部署API的最佳方法 . 我对使用的适当授权感到困惑 .
API将由我们的客户用于他们自己定制的开发应用程序 .
我们不需要提供最终用户身份验证 . 这将由我们的客户根据其应用程序的特定要求进行处理 .
我们需要做的是为我们的客户应用程序提供一种方法来对我们的API进行身份验证 .
我的理解是我有以下选择......
-
AWS_IAM - 这可能不合适,将客户凭据添加到我们的亚马逊帐户 .
-
Cognito用户池授权程序 - 这似乎主要是为用户授权而不是客户端授权而设计的 .
-
自定义授权程序 - 据推测可以根据我们的特定要求进行定制,但需要从头开始构建大量代码 .
-
API密钥身份验证 - 简单地依赖密钥头快速简便,但似乎不是特别安全 .
我原先假设,有一些直接的方法来启用OAuth2身份验证 . 对于我们的用例,“客户端凭证”流程将是合适的 . 然而,根据我所做的研究,听起来像OAuth2身份验证需要自定义授权人Lambda . 我真的不热衷于必须实现完整的OAuth2服务,以验证应用程序 . 构建这样的东西只会花费太多 .
此外,如果我们正在编写自己的完整自定义OAuth2授权程序,并为API本身编写所有功能,我不确定API Gateway实际上是如何为我们提供任何 Value 的 .
是否有一些最佳实践或标准用于为API网关验证API客户端?
我们需要做的事情似乎并不是一件特别不寻常的事情,人们必须采取一些标准方式来做到这一点 .
任何建议将非常感谢 .