大众点评公司 Yelp 开源其密码检测框架
极客时间编辑部
讲述:杜力大小:1.03M时长:02:15
近日,美国的大众点评公司 Yelp 宣布,正式开源其密码检测框架,该框架用于防止代码中的密码等相关的敏感信息被提交到代码库中,号称可以在保证安全性的同时,不会给开发者的生产力带来任何影响。
众所周知,对于一个优秀的程序员来说,是不能把密码或者密钥等敏感信息,直接硬编码到程序代码中的,因为这极有可能引起相关的安全问题(也就意味着任何一个代码贡献者都可以获取这些密码,并使用它们访问相关系统)。
为了防止密码被硬编码到代码中,Yelp 团队先是花了很多时间调研已有的开源项目。但是他们发现,这些项目根本无法满足他们的要求。他们的解决方案需要做到以下几点:
1. 支持白名单
Yelp 现有的代码库中可能已经包含了密码,不过这不能成为影响服务部署的阻碍。他们要保证在某个时间点之后的代码提交中不包含密码,随后,在部署服务之前检查其中包含的所有密码。
2. 与软件开发生命周期集成
最佳的解决方案需要与开发人员的工作流程密切配合,因为密码管理是一个持续的过程,不能通过定期审核来强制执行。因此,解决方案的速度要快。
3. 与已有的预提交框架兼容
Yelp 开发团队在提交代码之前,使用预提交框架来运行静态代码断言检查。因此,最佳的解决方案需要基于这个框架,并与现有的钩子保持向后兼容性。
4. 轻量级和模块化
这需要方便定制化,并用在大型的生态系统中。
5. 编程语言无关性
该解决方案可以应用在所有的代码库上,不管是什么语言的代码库,而且支持不同的客户端(如 Python、Puppet、JavaScript、PHP、Java 等)。
据了解,Yelp 的解决方案使用了客户端预防和服务器端检测的办法,确保密码不会被意外地提交到代码库中。由于客户端和服务器端都是通过同一个密码检测引擎的,所以当检测引擎发生变更时,两端都可以感知到。
需要注意的是,这个框架并不是万能的解决方案。不过,相比“教育”开发者而言,这个框架可以帮助企业更方便高效地实现密码管理。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
请先领取课程
免费领取
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
精选留言
由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论