【身份与访问控制工程】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模式主要用于为特定前端聚合请求、管理会话和进行身份转换。
纵深防御的核心思想是什么?
纵深防御的核心思想是每一层都独立起作用,任何一层被绕过,其他层仍然能拦下来。
➡️