{ "rules": { "admins": { ".read": "auth != null", ".write": "false", ".validate": "newData.val() !== null && newData.val() !== '' && newData.val() !== 'undefined'" }, "users": { ".read": "root.child('admins').child(auth.uid).exists()", "$user_id": { ".read": "auth.uid === $user_id || root.child('admins').child(auth.uid).exists()", ".write": "auth.uid === $user_id || $user_id === null || root.child('admins').child(auth.uid).exists()", ".validate": "newData.hasChildren(['displayName', 'provider'])" } } } }