Firebase Realtime Database Rules Denied Permission

I am registering user using Email/Password Sign-In-Method. So after successfully registration and loge in, I can't read and write my data in Firebase Real Time.

I'm new to Firebase so I can't really figure out what the main problem is or which steps I have missed.

This rule is obviously working fine:

{
       "rules": {
              ".read": "auth == null",
              ".write": "auth == null"
        }
   }

However, this rule is not working, although my user is already registered and has got a UID.

{
       "rules": {
              ".read": "auth != null",
              ".write": "auth != null"
        }
   }

It always shows the following error:

Exception occured while processing the request.
Url: https://App-Name-6ssd2.firebaseio.com/Appointments/-MUAG-CHWBFSv-Vrtsoc/.json?print=silent

Request Data: {
 "UID":"AqsqQqLsmHSStjnK3EtHKmfEpqt2",
 "AppointmentID":"663158e9-d536-4923-8131-511c4b5e3037",
 "Name":"John",
 "PhoneNumber":"14540049190",
 "Title":"hello World ",
 "Date":"23.02.2021",
 "Time":"16:00"
}

Response: {
  "error" : "Permission denied"
}

What I currently want is to allow ANY registered user to read/write everybody's information, but it always denied the permission.

Screenshots:

enter image description here

enter image description here

enter image description here

My implementation for getting Firebase Data. The error is also pointing to the this method.

  public async Task<List<Appointment>> GetUserAppointment(string userId)
        {
            var appointments = (await Firebase.Child("Appointments")
              .OnceAsync<Appointment>()).Where(a => a.Object.UID == userId).Select(item =>
              new Appointment
              {
                  UID = item.Object.UID,
                  AppointmentID = item.Object.AppointmentID,
                  Title = item.Object.Title,
                  Date = item.Object.Date,
                  Time = item.Object.Time,
                  Status = item.Object.Status,
                  ReasonText = item.Object.ReasonText

              }).ToList();
            return appointments;


Read more here: https://stackoverflow.com/questions/66323189/firebase-realtime-database-rules-denied-permission

Content Attribution

This content was originally published by Hashmat at Recent Questions - Stack Overflow, and is syndicated here via their RSS feed. You can read the original post over there.

%d bloggers like this: