如果我将google-services.json赠送给我的外包开发人员,以便他可以构建与Firestore交互的组件,我是否会泄露太多信息?我所拥有的Firestore数据库仍处于开发模式,我计划完成eveyrhting是创建一个新的firestore数据库,但我担心json文件有更多测试所需的信息。
让我知道你将如何处理这种情况 感谢
答案 0 :(得分:1)
使用Firebase Admin SDK,服务帐户将包含对Cloud Firestore数据库的完全访问权限。您可以在开发人员完成工作后撤消该帐户,并且他们将无法再访问该帐户。
您很有可能需要不断开发新功能。我建议创建多个项目:
然后,您可以在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,则您不需要提供服务帐户密钥。