Last active
May 23, 2021 19:07
-
-
Save jhonsore/37763cc74b08e3b9cca3427cf5c087b3 to your computer and use it in GitHub Desktop.
Firebase Realtime Database rules examples
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| /** | |
| * libera a leitura e nega a escrita, apenas poderá ser feita a escrita diretamente no dashboard do firebase | |
| */ | |
| { | |
| "rules": { | |
| "infos": { | |
| ".read": "true", | |
| ".write": "false" | |
| } | |
| } | |
| } | |
| /** | |
| * libera a leitura apenas para usuários autenticados | |
| */ | |
| { | |
| "rules": { | |
| "infos": { | |
| ".read": "auth != null", | |
| ".write": "false" | |
| } | |
| } | |
| } | |
| /** | |
| * somente usuários autenticados podem escrever | |
| * somente usuários autenticados podem ler e o id precisa ser o do usuário | |
| */ | |
| { | |
| "rules": { | |
| "users": { | |
| "$uid": { | |
| ".write": "auth != null", | |
| ".read": "auth != null && auth.uid == $uid" | |
| } | |
| } | |
| } | |
| } | |
| /** | |
| * Validando campos e sua integridade | |
| * Situação: no nó de produtos, a descrição de um produto pode ser apenas do tipo string e conter menos que 400 caracteres | |
| * a regra abaixo faz essa validação de um campo específico de um documento | |
| */ | |
| { | |
| "rules": { | |
| "produtos": { | |
| "$uid": { | |
| ".write": "auth != null", | |
| ".read": "auth != null", | |
| ".validate": "newData.child('descricao').isString() && newData.child('descricao').val().length < 400" | |
| } | |
| } | |
| } | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment