Kiali项目增强:支持通过Secrets配置认证用户名和自定义仪表盘认证
在Kiali项目的最新更新中,团队实现了对认证用户名和自定义仪表盘认证信息通过Kubernetes Secrets进行配置的支持。这一改进显著提升了Kiali的安全性和灵活性,使管理员能够更好地管理敏感凭证。
背景与动机
在分布式系统监控领域,Kiali作为Istio服务网格的可视化工具,需要与多种后端服务(如Prometheus、Grafana和Tracing系统)进行交互。这些交互通常需要认证信息,包括用户名和密码等敏感数据。
过去版本中,Kiali已经支持将密码、令牌和签名密钥等敏感信息存储在Kubernetes Secrets中,但用户名仍需要明文配置在Kiali CR(Custom Resource)中。虽然用户名本身不如密码敏感,但对于安全要求严格的环境,任何形式的明文凭证都可能成为安全隐患。
新增功能特性
本次更新主要扩展了Kiali的Secret支持范围,新增了以下配置项:
-
外部服务认证用户名支持:
- Grafana认证用户名
- Prometheus认证用户名
- Tracing系统认证用户名
-
自定义仪表盘认证全面支持:
- Prometheus用户名
- Prometheus密码
- Prometheus令牌
这些新增功能使得Kiali的认证配置更加完整和安全,管理员现在可以将所有认证相关的敏感信息都存储在Kubernetes Secrets中,实现统一的凭证管理策略。
技术实现细节
在底层实现上,Kiali团队对配置解析逻辑进行了扩展,使其能够从指定的Secret中读取用户名等新增支持的字段。这一改动保持了与现有Secret集成机制的一致性,确保配置方式的统一和直观。
对于自定义仪表盘的Prometheus认证,现在支持完整的认证信息配置,包括:
- 基础认证(用户名+密码)
- Bearer令牌认证
- 自定义CA证书(通过现有机制)
安全最佳实践
随着这一功能的加入,我们建议Kiali管理员采用以下安全实践:
-
最小权限原则:确保用于存储认证信息的Secrets只对必要的服务账户开放访问权限。
-
定期轮换:建立定期轮换存储在Secrets中的凭证的流程,包括用户名(当用户名也作为认证因素时)。
-
审计跟踪:监控和记录对包含Kiali认证信息的Secrets的访问。
-
分层防御:结合Kubernetes RBAC、网络策略和其他安全机制,构建多层次的防护体系。
升级与兼容性
这一改进完全向后兼容。现有配置无需修改,新功能是可选的。管理员可以选择继续使用明文配置用户名,或者迁移到更安全的Secret存储方式。
对于希望升级到Secret存储的管理员,迁移过程简单直接:
- 创建包含用户名的Secret
- 更新Kiali CR引用该Secret
- 删除CR中的明文用户名
未来展望
Kiali团队持续关注安全领域的实践发展,未来可能会进一步扩展Secret支持的范围,包括:
- 更多外部服务的认证选项
- 动态凭证获取机制
- 与云原生Secret管理解决方案的深度集成
这一更新体现了Kiali项目对安全性的持续承诺,为服务网格可视化工具设立了更高的安全标准。通过将更多认证因素纳入Secret管理,Kiali为运行在敏感环境中的服务网格提供了更强的安全保障。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust098- DDeepSeek-V4-ProDeepSeek-V4-Pro(总参数 1.6 万亿,激活 49B)面向复杂推理和高级编程任务,在代码竞赛、数学推理、Agent 工作流等场景表现优异,性能接近国际前沿闭源模型。Python00
MiMo-V2.5-ProMiMo-V2.5-Pro作为旗舰模型,擅⻓处理复杂Agent任务,单次任务可完成近千次⼯具调⽤与⼗余轮上 下⽂压缩。Python00
GLM-5.1GLM-5.1是智谱迄今最智能的旗舰模型,也是目前全球最强的开源模型。GLM-5.1大大提高了代码能力,在完成长程任务方面提升尤为显著。和此前分钟级交互的模型不同,它能够在一次任务中独立、持续工作超过8小时,期间自主规划、执行、自我进化,最终交付完整的工程级成果。Jinja00
Kimi-K2.6Kimi K2.6 是一款开源的原生多模态智能体模型,在长程编码、编码驱动设计、主动自主执行以及群体任务编排等实用能力方面实现了显著提升。Python00
MiniMax-M2.7MiniMax-M2.7 是我们首个深度参与自身进化过程的模型。M2.7 具备构建复杂智能体应用框架的能力,能够借助智能体团队、复杂技能以及动态工具搜索,完成高度精细的生产力任务。Python00