Application Secrets 应用密钥


应用程序密钥是其开发人员想要保密的有关应用程序的任何内容,例如密码、API 密钥和数字证书。通常,这些密钥用于身份和访问管理 (IAM),因此保护它们成为访问控制的重要组成部分——尤其是在应用程序有权访问关键业务服务和系统的情况下。 对于 DevOps 团队来说,管理应用程序密钥的挑战尤为重要。为了避免放慢应用程序交付的速度,一些开发人员倾向于将应用程序密钥存储在代码中。虽然这样做通常是为了方便,但这是一个严重的错误,因为它可能会暴露信息,威胁参与者可以利用这些信息来提升权限并获得对系统和应用程序的未经授权的访问。试图在配置文件中或作为环境变量隐藏应用程序密钥会使应用程序密钥容易被盗,使合规工作复杂化,并最终增加风险。 有效地管理应用程序密钥还可以提高效率。为了实现自动化,企业需要支持机器身份之间的更多通信,所有这些都必须以安全的方式相互验证。同样,容器的日益普及也增加了开发人员用于支持身份验证的应用程序密钥的数量。随着容器数量的增加,限制每个容器的访问权限和管理这些权限的生命周期的挑战变得更加复杂,并且使用中的密钥数量失控的可能性增加。 为了应对这些问题,许多人选择使用密钥管理解决方案来隐藏密钥。密钥管理软件通过 SDK 和 API 以编程方式管理人和机器身份的密钥,协调其创建、撤销和存储。信任是中介的,因此可以交换密钥,确保只有受信任的应用程序和脚本才能在检索密码之前请求特权帐户凭据。这些解决方案通常还允许企业记录和查看与存储的密钥相关的最近活动,例如何时访问或修改它们以及由谁访问或修改。