【身份与访问控制工程】API Gateway、BFF 与边界认证授权

💡 原文中文,约21900字,阅读约需53分钟。
📝

内容提要

在微服务架构中,API网关是流量的关键节点,负责认证、授权和限流等功能。但网关的能力有限,无法处理复杂的业务数据授权。文章强调了网关、服务和数据库在认证授权中的不同职责,提出了三层防御模型,并比较了常见的网关方案(如Istio、Kong、APISIX)。建议在设计时避免将所有授权逻辑集中在网关,强调纵深防御的重要性。

🎯

关键要点

  • 在微服务架构中,API网关是流量的关键节点,负责认证、授权和限流等功能。
  • 网关的能力有限,无法处理复杂的业务数据授权,建议将授权逻辑分散到服务和数据库。
  • 提出了三层防御模型:网关负责粗粒度授权,服务负责细粒度授权,数据库负责强制隔离。
  • 比较了常见的网关方案(如Istio、Kong、APISIX),并给出选型建议。
  • 强调纵深防御的重要性,任何一层被绕过,其他层仍然起作用。

延伸问答

API网关在微服务架构中主要负责哪些功能?

API网关主要负责认证、授权、限流和审计等功能。

为什么不建议将所有授权逻辑集中在API网关上?

因为网关的能力有限,无法处理复杂的业务数据授权,集中授权会导致安全风险。

三层防御模型的各层职责是什么?

第一层是网关,负责粗粒度授权;第二层是服务,负责细粒度授权;第三层是数据库,负责强制隔离。

在选择API网关时,Istio、Kong和APISIX有什么区别?

Istio支持服务网格和细粒度授权,Kong有成熟的插件生态,APISIX在性能上表现优异。

BFF模式的主要作用是什么?

BFF模式主要用于为特定前端聚合请求、管理会话和进行身份转换。

纵深防御的核心思想是什么?

纵深防御的核心思想是每一层都独立起作用,任何一层被绕过,其他层仍然能拦下来。

➡️

继续阅读