全,
我正在寻找一个集中的物业管理解决方案,例如:我有一个流程/应用程序在Mule。对于不同的环境,我有多个属性文件。和其他应用程序一样,效果很好。
这些文件中配置的属性基本上是用户名、密码、目标端点等,但我不想在这些简单的文件中公开它们。相反,我正在寻找一个集中化的解决方案,在这里我可以将我的属性配置为密钥,并且只需在我的应用程序中使用这些键。
就像这样
database-user=${central-properties-key.database.user}
而不是
数据库-user=dbuser1 1
我知道,我可以在这里使用像祖尔这样的东西。但据我所查,Zuul没有托管的解决方案。(我不喜欢在前提下主持和管理任何事情;)
思想?还有其他最好的办法吗?
发布于 2016-06-29 05:26:05
我以前用过Zuul和Mule。它比手动处理属性文件容易得多。优点是: 1)基于UI的键值对定义2)环境分离(如具有DEV的Zuul实例、测试和UAT配置以及PROD配置的单独实例) 3) Mule支持针对Properties的Zuul集成4) Zuul中的数据可以加密(它在内部维护数据) 5)用户可以对配置数据进行访问控制
Zuul或使用Property/Secure属性占位符的一个缺点是,我们不能动态访问值-- Mule强制重新部署应用程序。为了克服这个问题,我们构建了包装API,在运行时从Zuul (基于环境)获取属性。在Mule/Zuul,这些都不是开箱即用的,但最重要的是避免重新启动。
谢谢,
阿南特
发布于 2016-06-28 07:03:38
我将在回购中使用多个文件,例如dev.properties、qa.properties和stage.properties。这些都将保留在项目中。然后prod.properties会和我一起呆在我的私人机器上。
然后,我将此添加到骡子配置中:
<context:property-placeholder location="classpath:${env}.properties"/>在mule-app.properties中,我将添加以下内容:
env=dev如果有人在dev、qa、stage上篡改数据库或端点,我就不会像他们伤害生产那样担心。对于生产,我将编写脚本,将prod.properties复制到项目中,设置env=prod,然后在部署准备好放到生产服务器的应用程序目录之前执行Maven干净包。
你认为如何?如果你同意,请告诉我,并就答案投我一票。
发布于 2016-06-28 07:15:21
我希望你已经在使用大卫提到的东西了。我还看到ZUUL博客是为更老版本的骡子而写的。
正如我从您的解释中了解到的,尽管您请求使用集中式机制来存储属性,但对它的需求是安全性,下面将相应地给出答案。
Mule现在有一个更好的特性,如下所示
请通过下面的链接获得更多信息。
https://docs.mulesoft.com/mule-user-guide/v/3.6/mule-credentials-vault
https://docs.mulesoft.com/mule-user-guide/v/3.6/installing-anypoint-enterprise-security
为此,您需要将Mule安全模块从bleow站点安装到您的任意点演播室(类似于eclipse )。
http://security-update-site.s3.amazonaws.com/
在那里安装安全模块表单。
Mule还提供了其他特性,作为企业安全解决方案的一部分。
https://stackoverflow.com/questions/38066977
复制相似问题