Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Firebase rule: Enforce value to be Servervalue.TIMESTAMP

How can I make sure that a servervalue is written to firebase via firebase rules?

I am writing a message to the realtime database like so:

newMessageRef.set({
      id: newMessageRef.key,
      author: "Username",
      content: "Message",
      timestamp: firebase.database.ServerValue.TIMESTAMP
})

How can I make sure that the client doesnt modify my code and use a custom timestamp?

like image 876
ThatBrianDude Avatar asked Sep 16 '25 11:09

ThatBrianDude


1 Answers

For this you can use the now variable in Firebase security rules like this:

{
  "rules": {
    "Messages": {
      "$newMessageRef": {
        "timestamp": {
          ".validate": "newData.val() === now"
        }
      }
    }
  }
}
like image 60
André Kool Avatar answered Sep 18 '25 06:09

André Kool