如何在云上使用confd+ACM管理敏感数据

创业指导 阅读(1825)
ag真人平台

在前面的文章中,我们介绍了如何在云上安全地存储配置数据,但上述方法是代码侵入性的,这意味着需要修改应用程序。本文将解释如何使用confd + ACM。通过修改代码动态修改应用程序所需的配置,并且可以重新启动应用程序以加载最新配置。这可以在没有代码入侵的情况下提高应用程序安全性和运营效率:

安全性:应用程序的数据可能是敏感数据。 ACM具有强大的访问控制机制,可对敏感数据进行加密,以安全地存储密码,API密钥,证书等敏感信息。

操作和维护效率:当您需要修改应用程序的某些配置内容时,如果只能手动操作一台或两台机器,但当涉及数十个单元时,可以通过配置的版本配置和修改confd + ACM批量。重启操作;

无代码入侵:confd + ACM的组合可以实现在不修改应用程序代码的情况下使应用程序配置动态的效果

以下以应用程序数据库配置为例,说明如何使用confd + ACM安全地管理应用程序配置。

在操作本文中的示例之前,您需要配置打开ACM和使用confd的基本概念。 ACM的开放及其基本用途可以参考:这里

confd的基本用法可以参考:这里

为confd

创建一个toml格式配置文件

指定模板文件

ACM中的加密配置需要以/cipher开头 -

Check_cmd用于验证配置的正确性,并防止应用程序因配置错误而失败。

Reload_cmd用于重启应用程序或让应用程序动态加载配置

Getv从ACM:

获取相应的dataId配置

对应于/cipher-myapp/database/jdbc的dataId是cipher-myapp.database.jdbc

Confd将在/cipher-开头基于kms

自动解密配置

使用dataId cipher-myapp.database.jdbc创建配置文件。该组使用默认的DEFAULT_GROUP。配置内容是

与官方网站文档不同,为了支持解密功能,需要设置confd-openKMS开关并设置kms服务的regionId。此信息可以从示例代码中获取

查看生成的/tmp/jdbc.properties配置文件。如果生成文件并且文件内容如下,则整个过程正常运行

需要修改数据库的连接字符串时,直接在ACM上修改cipher-myapp.database.jdbc配置。 confd将重新生成数据库配置文件,并让应用程序加载最新配置。当然,在实际的生产环境中,您可以使用ACM的Beta功能首先在多台机器上发布灰度,并验证没有问题,然后继续以全量发布它们

本文演示了如何使用confd + ACM安全地管理敏感数据。有关ACM安全配置的更多信息,请访问:

作者:风清,Nacos社区承诺人

作者:中间件兄弟

阅读原文

本文是云栖社区的原创内容,未经许可,不得转载。