在Firestore安全规则的文档页面上,我发现它们通过CLI deployable。
我想知道是否有人知道一种无需使用CLI即可部署.rules
文件内容的方法。
我挖了一下,发现了这个firebase rules REST API,但事实证明这是完全不同的事情。
研究其CLI代码并编写一些脚本以导入其功能的时间很短,有人知道一个lib或已经有代码来执行此操作吗?
我希望能够将这些规则作为应用程序部署的一部分部署在AWS CodePipeline上,因此CLI在这里不合适。炮轰也不可取。
答案 0 :(得分:0)
您可以在ci管道中使用firebase admin sdk来部署firestore / storage / RTDB的规则。以下是Official Documentation
中的示例代码段 const source = `service cloud.firestore {
match /databases/{database}/documents {
match /carts/{cartID} {
allow create: if request.auth.uid == request.resource.data.ownerUID;
allow read, update, delete: if request.auth.uid == resource.data.ownerUID;
}
}
}`;
// Alternatively, load rules from a file
// const fs = require('fs');
// const source = fs.readFileSync('path/to/firestore.rules', 'utf8');
await admin.securityRules().releaseFirestoreRulesetFromSource(source);