use*_*533 5 web-services microservices kong api-gateway api-security
目前,我们有多个不在网关后面的 API。公开公开的 API 使用 OpenID Connect 进行身份验证和声明授权。某些 API 仅供内部使用,并且受防火墙保护网络安全。
我们计划在我们的 API 之前设置 Kong Gateway Enterprise。我们应该能够在网关处集中来自公共客户端的令牌验证。我们也可以集中一些基本授权(例如范围)。上游 API 中可能仍需要发生一些逻辑。因此,这些 API 仍然需要了解调用者(客户端和用户)的上下文。
理想情况下,我们希望能够拥有可以公开公开并在内部调用的 API,以避免重复逻辑。我想了解一些安全的方法来让 Kong 实现这一点。我仍然不清楚如何设置网关后面的系统。
我的一些问题是:
其他一些可能有用的注释:
小智 2
这里有很多东西需要解开,答案是:这取决于
\n通常,您应该向外部公开最少的 API,因此 DMZ 中的单独网关仅包含外部客户端所需的 API 端点。您通常会进行更多的内部更改,因此您不想意外暴露敏感端点。
\n当涉及到 API 时,不要太担心重复,拥有多个 API 网关,甚至用于外部通信的出口网关是很常见的。在诸如(BFF - 前端模式的后端)之类的模式中,每个客户端都有自己的网关用于编排、安全、路由、日志记录、审计。客户端彼此隔离得越多,进行 API 更改就越容易且风险越小。\n关于传播身份验证上下文,它实际上取决于信任以及网络和内部参与者的安全程度。如果您使用自定义标头,那么您必须考虑“混乱的副问题”。使用签名的 JWT 可以解决这个问题,但如果令牌被泄露,它可以被恶意用于链中的任何服务。\n您可以使用 RFC8693 令牌交换来缓解这种情况,甚至将其与 MTLS 结合使用,但这对于您来说可能有点过分了。应用程序。如果 JWT 由外部客户端处理,则风险会更大。在这种情况下,理想情况下它应该是不透明的并且仅被面向外部的网关接受。然后,该 GW 可以将其交换为用于所有内部通信的新令牌。
\n| 归档时间: |
|
| 查看次数: |
1408 次 |
| 最近记录: |