2014-04-11 9 views
7

Il titolo dice tutto. Voglio concedere le autorizzazioni per inserire nuovi oggetti in un determinato database in stile elenco, ma non voglio consentire autorizzazioni di scrittura complete. In questo possibile?In firebase, posso impostare le autorizzazioni per consentire solo le operazioni PUSH a un determinato oggetto?

+0

Per una variante di questa domanda, vedi anche http://stackoverflow.com/questions/20779134/firebase-delete-child-with-security -rule-data-exists-on-write/20787137 # 20787137 – Kato

risposta

18

Non sono sicuro che cosa significhi "non consentire autorizzazioni di scrittura complete" o che il titolo in effetti lo dica tutto. Ma supponiamo che questo voglia essere in grado di aggiungere record ma non cancellarli o modificarli? Fare questi presupposti, si può semplicemente fare una regola di scrittura come segue:

// !data.exists(): only push once, no edits 
// newData.exists(): cannot delete 
".write": "!data.exists()" 
+0

Questo è esattamente ciò che dovevo sapere. Grazie! – Abe

+0

Felice di aiutare! Alcune delle ricette di firebase.com/docs includono esempi di regole di sicurezza che potrebbero anche darti delle buone idee. – Kato

+1

Il controllo newData.exists() non è necessario? Se! Data.exists() allora sicuramente staresti cercando di cancellare qualcosa che non c'è ?! – pperrin

Problemi correlati