为什么是Firebase存储;规则版本=';2'&引用;被推翻?
我在文档后面的存储规则中添加了以下行:为什么是Firebase存储;规则版本=';2'&引用;被推翻?,firebase,google-cloud-storage,firebase-security,Firebase,Google Cloud Storage,Firebase Security,我在文档后面的存储规则中添加了以下行: rules_version='2' 此外,我现在的规则是: rules_version = '2'; service firebase.storage { match /b/{bucket}/o { match /{allPaths=**} { allow read, write: if request.auth != null; } } } 此外,我能够使用listAll列出文件夹中的文件,这是版本2独有的功能 但
rules_version='2'代码>
此外,我现在的规则是:
rules_version = '2';
service firebase.storage {
match /b/{bucket}/o {
match /{allPaths=**} {
allow read, write: if request.auth != null;
}
}
}
此外,我能够使用listAll
列出文件夹中的文件,这是版本2独有的功能
但是,每天我都会回到我的仪表板,发现我的规则更新到以前的版本,即:
service firebase.storage {
match /b/{bucket}/o {
match /{allPaths=**} {
allow read, write: if request.auth != null;
}
}
}
这是怎么发生的,为什么会发生?更重要的是,如何解决此问题?有:
使用Firebase控制台
使用Firebase CLI从本地文件部署规则
使用Firebase管理SDK
如果您的规则正在改变,并且您绝对确定它不是来自这两种方法中的一种,请寻求帮助。在Firebase的Jonathan的帮助下,他非常友好地提醒我,我几乎每天都在部署,我发现了问题所在。事实证明,作为我持续部署的一部分,我也在部署Firebase存储规则,因此我间接地覆盖了我自己的规则
现在一个显而易见且简单的解决方案就是在本地更新storage.rules文件 此外,这同样适用于firestore.rules
。