
SOPS 采用客户端-服务器模型来加密和解密数据密钥。默认情况下,它在进程内运行本地密钥服务。客户端使用 gRPC 和协议缓冲区向密钥服务发送加密或解密请求。不用担心,这些请求不包含任何公钥或私钥。我应该强调的是,目前与密钥服务的连接没有身份验证或加密。出于安全目的,强烈建议您使用其他方式(例如 SSH 隧道)对连接进行身份验证和加密。但是等等,还有更多! SOPS 可以生成审核日志来跟踪对受控环境中文件的访问。启用后,此功能会将解密信息写入 PostgreSQL 数据库,包括时间戳、用户名和解密文件。不错吧?此外,SOPS 提供了两个方便的命令,用于将解密的机密传递给新进程:exec-env 和 exec-file。第一个将输出注入到子进程的环境中,第二个将其存储在临时文件中。请记住,文件扩展名决定了 SOPS 使用的加密方法。如果您以特定格式加密文件,请务必保存原始文件扩展名以供解密。这是确保兼容性的最简单方法。 SOPS 的灵感来自 hiera-eyaml、credstash、sneaker 和密码存储等工具。这是一个出色的解决方案,无需手动管理 PGP 加密文件。