Firebase Firestore规则不断变化
我正在为我的项目使用Firestore,并更新了我的规则:Firebase Firestore规则不断变化,firebase,google-cloud-firestore,firebase-security,Firebase,Google Cloud Firestore,Firebase Security,我正在为我的项目使用Firestore,并更新了我的规则: rules_version = '2'; service cloud.firestore { match /databases/{database}/documents { match /{document=**} { allow read, write: if request.auth != null; } } } 然而,任何时候firestore发生变化时,它都会发生如
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write: if request.auth != null;
}
}
}
然而,任何时候firestore发生变化时,它都会发生如下变化:
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write: if
request.time < timestamp.date(2020, 11, 26);
}
}
}
我的猜测是,在部署函数时,您正在部署一个本地过时的规则文件
检查您的
firebase.json
以获取对Firestore规则文件的引用,和/或运行firebase deploy--only functions
我猜您在部署函数时部署的是本地过时的规则文件
检查您的
firebase.json
以获取对Firestore规则文件的引用,和/或运行firebase部署--仅函数
您是否有可能通过firebase CLI部署云函数?没有,我一直在使用控制台部署这些规则。那会有区别吗?不会。我“希望”规则更新会来自CLI,但如果您不使用CLI,那就不可能了。嗯,现在它似乎还在继续。我只是想弄明白为什么会发生变化。我真的不希望它在我发表之后改变!我与工程团队进行了检查,他们确认:我们的后端自动设置规则的唯一时间是在项目/db创建期间(当您选择安全模型时)。我真的很想知道你是否触发了CLI,然后它会部署一个过时的规则配置。你是否有可能通过Firebase CLI部署云功能?没有,我一直在使用控制台部署这些规则。那会有区别吗?不会。我“希望”规则更新会来自CLI,但如果您不使用CLI,那就不可能了。嗯,现在它似乎还在继续。我只是想弄明白为什么会发生变化。我真的不希望它在我发表之后改变!我与工程团队进行了检查,他们确认:我们的后端自动设置规则的唯一时间是在项目/db创建期间(当您选择安全模型时)。我真的很想知道你是否触发了CLI,然后它部署了一个过时的规则配置。我包括了我的package.json,我找不到任何规则文件的引用。看起来这就是问题所在,我测试了在使用和不使用--only functions
标志的情况下进行部署,它似乎一直在更改我的规则。我包括了我的package.json,我找不到任何规则文件的引用。看起来这就是问题所在,我测试了在使用和不使用--only functions
标志的情况下部署,它似乎一直在更改我的规则。
{
"name": "functions",
"description": "Cloud Functions for Firebase",
"scripts": {
"lint": "eslint .",
"serve": "firebase emulators:start --only functions",
"shell": "firebase functions:shell",
"start": "npm run shell",
"deploy": "firebase deploy --only functions",
"logs": "firebase functions:log"
},
"engines": {
"node": "12"
},
"main": "index.js",
"dependencies": {
"firebase-admin": "^9.2.0",
"firebase-functions": "^3.11.0",
"bad-words": "^3.0.3"
},
"devDependencies": {
"eslint": "^5.12.0",
"eslint-plugin-promise": "^4.0.1",
"firebase-functions-test": "^0.2.0"
},
"private": true
}