【发布时间】:2021-10-25 15:36:41
【问题描述】:
我真的很难找到一种允许我使用的 AWS 设计:
- 使用 REST(不使用 AWS sdk 库)对实体进行身份验证
- cognito的rest api需要识别实体并根据它返回结果。例如,像“getOrders”这样的 api 将返回与已登录的实体关联的订单。
评估解决方案:
-
具有范围的oAuth 身份验证无法解决这种情况。该实体必须使用 appclientId 和 secret 进行身份验证,因此不清楚如何区分实体(为所有可以登录的实体创建 appclient 对我来说没有意义)。实际上,这里所有实体都可以调用相同的 api,但结果取决于身份本身而不是范围。尽管如此,通过这种设计,如何使用rest api获取令牌是很清楚的。
-
使用与实体关联的用户名和密码进行身份验证。这样,就可以在apigw上识别实体,并按预期返回结果。在这种情况下,不清楚如何使用 rest api(而不是使用 aws 的 sdk)获取令牌。我无论如何都找到了这篇文章:What is the REST (or CLI) API for logging in to Amazon Cognito user pools
我在这里错过了其他一些最佳选择吗?在我看来,这是一个非常常见的情况,但我找不到合适的解决方案。 您能否建议应该使用哪种身份验证机制。
提前致谢 马可
【问题讨论】:
标签: rest aws-api-gateway amazon-cognito