0

В FireBase консоли я установил ниже правила в базе данных:Google Аутентификация с Google Spread Sheet через App Script

enter image description here

и ниже является Script Editor из Google Spread листа:

enter image description here

Так как любой может записать в базу данных, не существует разрешение не требуется d до сих пор можно записать в базу данных.

Теперь я хочу только один пользовательский возможность записи в базу данных, так что я изменил правило:

{ 
    "rules": { 
    ".read": true, 
    ".write": "'User_UID_xyz' === auth.uid" 
    } 
} 

И я вошедшего в учетную запись с идентификатором пользователя 'User_UID_xyz', и работает один и тот же сценарий в Google Spreed Лист. Но я получаю разрешение отклонено. Итак, мне нужно, чтобы пользователь аутентифицировался здесь? Но он уже зарегистрирован в учетной записи, которая аутентифицирована FireBase.

//////////////////////////////
///////////// ///////////////
Кроме того, я прошел через ссылку:
https://sites.google.com/site/scriptsexamples/new-connectors-to-google-services/firebase/tutorials/using-secured-client-authentication-for-real-time-read-and-write-calls Но я запутался. Почему я должен использовать веб-приложение здесь?

ответ

2

Все вызовы на стороне сервера в базу данных считаются «администраторами» и могут читать и записывать в любое место в базе данных. В вашем примере кода отсутствует секрет firebase при подключении к базе данных. Он должен выглядеть так:

FirebaseApp.getDatabaseByUrl(firebaseURL, secret); 

Вы можете найти секрет на вкладке базы данных параметров проекта.

enter image description here enter image description here

Что касается этой статьи, это специально написано о веб-приложений Apps Script. В другой статье описываются вызовы на стороне сервера, хотя это был pre-google IO, и интерфейс был изменен, API вызывает повторный вызов.

https://sites.google.com/site/scriptsexamples/new-connectors-to-google-services/firebase/tutorials/read-and-write-data-in-firebase-from-apps-script

+0

Это сработало. Большое спасибо –

Смежные вопросы