Firestore安全规则-允许公共创建访问

时间:2018-08-05 17:05:24

标签: google-cloud-firestore firebase-security-rules

“向我们发送反馈”按钮。我已经尝试过allow create;allow read; allow create;。两者均失败并返回“权限不足”。

allow write;确实有效,但允许删除。

问题:Firestore安全规则看起来像什么,它将允许公共/未经身份验证的用户写入特定的“反馈”集合?我只想限制对此集合的访问。没有列表,没有删除,没有更新。

以下是我的规则:

service cloud.firestore {
  match /databases/{database}/documents {
    match /{document=**} {
      allow read, write: if request.auth.token.admin == true;
    }
    match /feedback/{document=**} {
      allow create;
    }
  }
}

这是我的客户端JS:

function submitFeedback(val){
    var newFeedbackRef = db.collection('feedback').doc();
    try {
        if(firebase.auth().currentUser){
            newFeedbackRef.set({
                message: val,
                created: Date.now(),
                sender: firebase.auth().currentUser.displayName,
                senderEmail: firebase.auth().currentUser.email,
                senderUid: firebase.auth().currentUser.uid
            });            
        } else {
            newFeedbackRef.set({
                message: val,
                created: Date.now()
            });            
        }
        console.log("Got it. Thank you!");
    }
    catch (error) {
        console.error(error);
    }
}

0 个答案:

没有答案