Firebase Storage / Firestore неавторизованы из-за отсутствия объекта Auth в правилах - PullRequest
0 голосов
/ 18 июня 2020

Обновление

Я использую этот плагин для авторизации по телефону https://ionicframework.com/docs/native/firebase-authentication. Итак, как я могу передать эти данные Auth в AngulraFireAuth?

  async signIn(): Promise<void> {
      await this.firebaseAuthentication.signInWithVerificationId(verificationId, securityCode);   
  }

auth.service.ts

 onAuthStateChanged(): void {
    this.firebaseAuthentication.onAuthStateChanged().subscribe((res) => {

      this.zone.run(async () => {
        if (res) {
           // code
        });
    });
  }

Original

У меня есть разрешение на ведро Firebase Storage, например: То же самое и для Firestore.

service firebase.storage {
  match /b/{bucket}/o {
    match /{allPaths=**} {
      allow read, write:if request.auth != null;
    }
  }
}

Клиентский код: т.е. загрузить изображение

 console.log('user', await this.afAuth.currentUser); //null

 const filePath: string = `signatures/${user.uid}`;

 const afUploadTask: AngularFireUploadTask = afStorageReference.putString(imageDataUrl, 'data_url');

Но это не удается:

vendor. js: 44100 ОШИБКА Ошибка: неперехваченная (в обещании): FirebaseStorageError: {"code _": "storage / unauthorized", "message _": "Firebase Storage: у пользователя нет разрешения на доступ 'signatures / gx3TlaSFQoPhQXCnjk3QCrq2j9x1'. "," serverResponse _ ":" {\ n "error": {\ n "code": 403, \ n "message": "В разрешении отказано. Не удалось выполнить эту операцию "\ n} \ n}", "name _": "FirebaseError"}

Итак, как я могу настроить этот тип правила для хранилища? Без каких-либо правил вышеуказанный код работает нормально.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...