Uber拥有世界上最大的Kafka部署之一…… •每秒1.38亿条

JavaEdge聊AIss 2024-09-02 03:20:51

Uber 拥有世界上最大的 Kafka 部署之一…… • 每秒 1.38 亿条消息 • 89 GB/秒 • 38 个集群 那么他们如何确保这些安全呢? mTLS 和强大的授权规则。 Uber 将其生产环境建模为零信任网络。由于任何主机都可能受到攻击,因此他们依靠强大的加密原语来建立服务之间的信任。 🥷 uPKI 是 Uber 的身份平台,基于 Spire。 它负责发布短期、自动轮换的加密密钥对。 这些对由一个 X.509-SVID、一个私钥和一个信任包组成。 🔐 通过此设置,系统会在证书即将到期时自动刷新(轮换)其证书。 ♻️ Spire 代理与 Spire 服务器保持长期连接,并在适当的时候主动生成新的证书。 💡这是关键,因为它允许 Uber 颁发非常短暂的证书,从而限制不良行为者利用任何泄露凭证的时间。 mTLS 为 Uber 提供身份验证、通过加密实现的机密性和数据完整性。 👍 缺少的是授权。 类似于在他们验证了您的身份(您就是您所说的那个人)后办理登机手续... 下一个检查是——你真的被允许登上这趟航班吗? ✋ (您是否拥有具有正确权限的票证) 为此,Uber 推出了一项名为 Charter 的服务。 与 AWS IAM 类似,它是一个框架,允许您指定谁和什么可以访问特定的服务和资源。 🔍 Kafka 有一个可插入的授权框架,您可以在其中配置自定义授权器类来为您执行授权(authorizer_class_name Kafka 配置)。 此授权器在任何请求流程中都会被调用。在 Uber 的配置中,它通过一对参与者、资源和操作来调用。 定义: 🎬参与者 - 授权决策的主体(例如,您在机场)。在 Kafka 中也称为 KafkaPrincipal。 🪨资源 - 授权决策所依据的资源(例如航班) 🔧操作 - 对资源执行的操作(例如登机)。在 Kafka 中也称为 ACLOperation 授权者向 Charter 发出远程 RPC 调用来为该对做出决定,然后缓存结果。 很简单,对吧?#程序员 #软件开发 #人工智能 #计算机 #编程严选网

0 阅读:0
JavaEdge聊AIss

JavaEdge聊AIss

感谢大家的关注