json文件是否包含更多私人信息

时间:2018-04-11 07:28:09

标签: firebase google-cloud-firestore

如果我将google-services.json赠送给我的外包开发人员,以便他可以构建与Firestore交互的组件,我是否会泄露太多信息?我所拥有的Firestore数据库仍处于开发模式,我计划完成eveyrhting是创建一个新的firestore数据库,但我担心json文件有更多测试所需的信息。

让我知道你将如何处理这种情况 感谢

1 个答案:

答案 0 :(得分:1)

使用Firebase Admin SDK,服务帐户将包含对Cloud Firestore数据库的完全访问权限。您可以在开发人员完成工作后撤消该帐户,并且他们将无法再访问该帐户。

您很有可能需要不断开发新功能。我建议创建多个项目:

  • myProject的-dev的
  • myProject的-α
  • myProject的-β
  • myProject的稳定

然后,您可以在Git存储库中创建单独的分支,并确保在存储库中包含任何服务帐户。保持它们分开存储并使用环境变量进行连接。

使用环境变量示例的服务帐户

const firebase = require('firebase-admin');
const serviceAccount = process.env.MY_CREDENTIALS;

firebase.initializeApp({
    credential: firebase.credential.cert(JSON.parse(serviceAccount))
});
const firestore = firebase.firestore();

然后,您可以使用:export MY_CREDENTIALS=$(cat ./path/to/service/account.json)

设置用于测试的环境变量

如果您需要从同一GCP项目(计算引擎实例/ Kubernetes /云功能)中访问Cloud FIrestore,则您不需要提供服务帐户密钥。