知识卡片

密钥能被人接触就退化成了密码

普通读书笔记卡 · 1459.a

内容

应用程序密钥和人类使用的密码看起来都是一串保密字符串,但风险模型完全不同——密钥应该只被服务在运行时读取,一旦人可以直接接触这个密钥,它就获得了密码的全部弱点(会被记在便签上、会通过聊天工具误发)却没有密码该有的可追溯性。如果确实需要人也能使用同一个凭证系统,正确做法是给人和给服务分别签发独立的凭证,而不是让人共用服务的密钥。

参考来源

- 位置:《Google系统架构解密:构建安全可靠的系统》第14章《部署代码》14.3.4节不要签入密钥(源文件:`../OREILY动物书合辑 图灵新版/_epub-src/text/part0014_split_114.html`) - 结论依据:原文明确说明"严格限制接触密钥,只在需要时才允许服务访问密钥。应杜绝人工接触密钥。如果密钥能被人为访问,它就成了密码,而不是应用程序密钥了。如果要这么使用,请为操作人和服务创建单独的凭证"。 - 原始内容:严格限制接触密钥,只在需要时才允许服务访问密钥。应杜绝人工接触密钥。如果密钥能被人为访问,它就成了密码,而不是应用程序密钥了。如果要这么使用,请为操作人和服务创建单独的凭证。