Google app engine 如何使用密钥将节点应用程序正确部署到GAE?

Google app engine 如何使用密钥将节点应用程序正确部署到GAE?,google-app-engine,deployment,secret-key,nconf,Google App Engine,Deployment,Secret Key,Nconf,我正在使用nconf探索GAE,我想知道在我部署应用程序后,下面的设置是否安全 我关心的是我的“config.dev.json”和“config.prod.json”文件都已部署,尽管它们包含在“.gitignore”中 在执行以下操作后,我不确定会将哪些信息传递给gae(我不希望我的配置键暴露): $ git add . $ git commit -m 'Commiting' $ glcoud app deploy 我的节点应用程序结构如下所示: - /myProject - /no

我正在使用nconf探索GAE,我想知道在我部署应用程序后,下面的设置是否安全

我关心的是我的“config.dev.json”和“config.prod.json”文件都已部署,尽管它们包含在“.gitignore”中

在执行以下操作后,我不确定会将哪些信息传递给gae(我不希望我的配置键暴露):

$ git add .
$ git commit -m 'Commiting'
$ glcoud app deploy
我的节点应用程序结构如下所示:

 - /myProject
   - /node_modules
   - .gitignore
   - app.js
   - app.yaml
   - config.js
   - keys.dev.json
   - keys.prod.json
   - package-lock.json
   - package.json
//.gitignore

 node_modules
 keys.dev.json
 keys.prod.json
//config.js:

 const nconf = require("nconf");
 nconf.argv().env();

 if (nconf.get("NODE_ENV") === "production") {
     nconf.file("keys.prod.json");
 } else {
     nconf.file("keys.dev.json");
 }
 ...

.gitignore
中包含文件对GAE上的部署没有任何影响,该文件仅由
git
使用

如果要阻止将文件部署到GAE,则需要使用
app.yaml
文件中的
skip_files
选项:

跳过_文件

可选。skip_files元素指定 应用程序目录不会上载到应用程序引擎。价值 是正则表达式或正则表达式列表。任何 与任何正则表达式匹配的文件名将从中省略 上载应用程序时要上载的文件列表

例如,要跳过名称以.bak结尾的文件,请添加 跳过_文件部分,如下所示:

skip_files:
- ^(.*/)?\.bak$
旁注:

  • 如果我理解正确,您的应用程序会使用这些文件,因此在我看来,您必须将它们与应用程序一起部署
  • 即使文件部署在GAE上,您的应用程序也有责任(和完全控制)决定该文件是否暴露于外部请求
  • 如果您想确切知道展开中包括哪些文件,可以使用命令的
    --verbosity
    选项在展开过程中查看这些文件的显示

中包含文件。gitignore
对GAE上的部署没有任何影响,该文件仅由
git
使用

如果要阻止将文件部署到GAE,则需要使用
app.yaml
文件中的
skip_files
选项:

跳过_文件

可选。skip_files元素指定 应用程序目录不会上载到应用程序引擎。价值 是正则表达式或正则表达式列表。任何 与任何正则表达式匹配的文件名将从中省略 上载应用程序时要上载的文件列表

例如,要跳过名称以.bak结尾的文件,请添加 跳过_文件部分,如下所示:

skip_files:
- ^(.*/)?\.bak$
旁注:

  • 如果我理解正确,您的应用程序会使用这些文件,因此在我看来,您必须将它们与应用程序一起部署
  • 即使文件部署在GAE上,您的应用程序也有责任(和完全控制)决定该文件是否暴露于外部请求
  • 如果您想确切知道展开中包括哪些文件,可以使用命令的
    --verbosity
    选项在展开过程中查看这些文件的显示

谢谢,这解释了很多。我在路上跟着导游走。我不确定是否有任何魔法在进行,或者钥匙是否被部署在里面。GitIgnore谢谢,这解释了很多。我在路上跟着导游走。我不确定是否有任何魔法在进行,或者钥匙是否在.git中部署