我的 Google App Engine 应用程序包含我不想 checkin 源代码管理(即 Git)的特权凭据(如 OAuth 和 cookie 签名 key )。
我考虑过将这些作为系统属性或环境变量存储在 appengine-web.xml
文件中,但是该文件包含许多我确实想要版本化的其他内容。哪里是存储“ secret ”应用程序数据的好地方,以便我可以轻松地将其从源代码管理中排除?
最佳答案
我通常做的是将凭据存储在安全存储库中(一个只有我可以信任的 super 用户才能访问的文件),然后有一个构建后脚本。在源代码管理中,我在属性文件中有一个虚拟密码,然后构建后脚本在构建后运行,并将虚拟密码替换为真实密码。这样密码就不会在源代码管理中,而是会在每次构建时显示出来。这确实依赖于自动化构建/部署过程,但它非常有效。
关于security - 使用 Google App Engine JDK 在版本控制之外管理安全配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8903200/