【问题标题】:Kong Api Gateway - How to setup authentication flowsKong Api Gateway - 如何设置身份验证流程
【发布时间】:2023-03-11 01:32:01
【问题描述】:
我对 api 网关没有太多经验。我已经通过一些身份验证机制研究了(并设置了)Kong。对于所有这些,用户详细信息都通过他们的管理 API 添加到 Kong。
如何使用 Kong 设置复杂的身份验证流程。即:用户注册,运行一些自定义业务代码来验证用户,然后向他们发送一封电子邮件进行确认。
我看到的唯一方法是拥有一个与管理 api 对话的微服务。然后 UI 会简单地与这个微服务对话(这会反过来将用户添加到管理 api),我是否走在正确的道路上?
【问题讨论】:
标签:
authentication
microservices
api-gateway
kong
【解决方案1】:
使用 Kong Admin API,您可以create API consumers,然后您可以将身份验证方法添加到 (JWT, auth0 ...)。
我一直实现这一点的方式是通过我的后端与 kong 管理员交谈。当然,这意味着您的所有后端应用程序都可以完全访问kong admin,但这可以通过在kong admin之上使用代理服务来防止,该代理服务只允许消费者创建和身份验证管理(从技术上讲,这可以是您的用户服务)或将 kong admin 作为服务添加到 kong 并限制用例(安全性较低,因为任何错误都可能暴露您的管理 API)。
您绝对应该避免的一件事是直接从您的前端应用程序访问 kong admin。