- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在构建一个由 lambda 通过 API 网关提供服务的 API。我已经为一些管理端点集成了 Cognito 用户池授权方,它阻止了非授权请求,但现在我想添加一些端点,这些端点可以被经过身份验证的用户和未经过身份验证的用户调用(并根据授权返回不同的数据)。例如,您可以想象如果请求未通过身份验证,GET/users
将仅返回用户的基本个人资料信息,如果通过身份验证,则返回更多详细信息。
使用 API Gateway 进行设置的最佳方法是什么?
最佳答案
请有 2 个不同的端点
API X 与 GET https://api.xyz.com/users (Lambda 用户作为后端,Cognito 作为授权方)
API Y 与 GET https://api.xyz.com/public/users (Lambda 用户作为后端且没有 Cognito)
Lambda 用户需要根据 header “授权”进行验证,以查看应返回什么响应。如果“授权”,则返回更多详细信息,否则返回最少的详细信息。
请有 1 个端点
API X 与 GET https://api.xyz.com/users (Lambda 用户作为没有 Cognito 的后端)
Lambda 用户需要根据 header “授权”进行验证,以查看应返回什么响应。如果“授权”,则返回更多详细信息,否则返回最少的详细信息。
我之所以更喜欢第一个,是因为从长远来看,我们可以在整个系统中单独拥有一组公共(public) API。这对所有消费者来说也很清楚。易于开发和维护。
关于security - API 网关的可选授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61453700/
我正在尝试用 Swift 编写这段 JavaScript 代码:k_combinations 到目前为止,我在 Swift 中有这个: import Foundation import Cocoa e
我是一名优秀的程序员,十分优秀!