人类和机器在构建和操作软件的价值流中使用秘密。构建管道需要秘密来与容器注册中心等安全基础设施进行接口,应用程序使用API密钥作为秘密来访问业务功能,服务到服务通信使用证书和密钥作为秘密进行保护。您可以以不同的方式设置和检索这些秘密。长期以来,我们一直告诫开发人员不要使用源代码管理来存储机密。我们推荐从源代码中解耦秘密管理使用工具,比如git-secrets和护身符避免在源代码中存储秘密。我们一直在使用秘密服务作为存储和访问机密信息的默认技术。使用这种技术,您可以使用如下工具库或AWS密钥管理服务(KMS)通过细粒度访问控制级别的HTTPS端点读取/写入机密信息。作为服务的秘密使用外部身份提供者,例如AWS我以确定谁要求访问机密。演员通过秘密服务验证自己。要使这个过程正常工作,自动引导参与者、服务和应用程序的身份是很重要的。平台的基础上SPIFFE改进了为服务分配标识的自动化。
长期以来,我们一直告诫人们不要将秘密检入源代码库。以前,我们推荐从源代码中解耦秘密管理.然而,现在我们看到一组好的工具出现了秘密服务.使用这种方法,应用程序将从单独的进程中检索它们,而不是硬连接秘密或将它们配置为环境的一部分。工具,如库通过HashiCorp,您可以从应用程序中单独管理秘密,并强制执行策略,例如在外部频繁轮换。