【问题标题】:Should Azure ServiceConfiguration.Cloud.cscfg be checked into source control?是否应将 Azure ServiceConfiguration.Cloud.cscfg 签入源代码管理?
【发布时间】:2015-09-04 06:12:10
【问题描述】:

我已经开始从事 Azure 项目。在配置方面,我目前有三个文件:ServiceConfiguration.Cloud.cscfgServiceConfiguration.Local.cscfgServiceDefinition.csdef

ServiceDefinition.csdef 是 csfg 文件的模板文件。 ServiceConfiguration.Cloud.cscfg 包含所有实际的 Azure 配置,包括 DB 密码、SAS 密钥等。

应该将ServiceConfiguration.Cloud.cscfg 签入源代码管理吗?我不会这么认为,但快速的search on github for the file 表明它是。

如果要签入,那么敏感密码数据应该如何管理?

【问题讨论】:

  • @sharptooth,您提供的链接最接近回答我的问题。你能把它作为一个答案让我选择它吗?
  • 我不想让它成为答案,因为我会在那里写什么?而且只有链接的答案不是很有用。

标签: azure configuration


【解决方案1】:

我通常会检查配置。原因是您的应用程序的行为将根据这些配置发生巨大变化。例如 -> 分布式应用程序的角色数量直接影响您处理传入消息的方式,而 vmsize 直接影响您拥有多少内存。如果每个开发人员使用不同的配置,您可能会遇到调试问题。这使您的部署标准化。

【讨论】:

  • 好的。那么当项目位于 github 等公共存储库上时,您如何处理 SAS 和 DB 密码等机密信息?
【解决方案2】:

除非您希望人们能够访问该信息,否则不应将包含纯文本密码信息的任何内容签入公共存储库。

您可以将此文件添加到 .gitignore 文件中并防止它被签入。

提供一个名为 ServiceConfiguration.Cloud.cscfg.template 的不同 ServiceConfiguration.Cloud.cscfg,其中包含您的云服务的所有配置信息减去密码值。如果有人分叉您的项目,他们需要使用它并填写适当的值并重命名文件。

执行此操作并将所有密码更改为其他密码。即使您从 repo 中删除此文件,它仍然存在于历史记录中,任何人都可以查看。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-04
    • 2010-09-14
    相关资源
    最近更新 更多