Я пытаюсь запросить токен и использовать его для чтения / записи данных из базы данных Cloud Firestore.
Чтобы запросить токен, я отправляю POST через Postman со следующим синтаксисом:
https://www.googleapis.com/identitytoolkit/v3/relyingparty/verifyPassword?key={API_KEY}
и добавьте к телу следующее:
{"email":"{YOUR_EMAIL_ADDRESS}","password":"{PASSWORD}","returnSecureToken":true}
Итак, я получаю свой API_KEY, перейдя в консоль Firebase -> Настройки -> Конфигурация проекта.
Тогда мой POST для запроса токена выглядит следующим образом: (не волнуйтесь, здесь нет конфиденциальных данных, они были изменены)
Затем я получаю ответ:
{
"kind": "identitytoolkit#VerifyPasswordResponse",
"localId": "jGEL4WSI9wRPU11yx9k9ZpAUac73",
"email": "jeferson.pehls@gmail.com",
"displayName": "",
"idToken": "eyJhbGciOiJSUzI1NiIsImtpZCI6IjI1OTc0MmQyNjlhY2IzNWZiNjU3YzBjNGRkMmM3YjcyYWEzMTRiNTAiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJodHRwczovL3NlY3VyZXRva2VuLmdvb2dsZS5jb20vZWxldHJvbmljYS1hYjZiMSIsImF1ZCI6ImVsZXRyb25pY2EtYWI2YjEiLCJhdXRoX3RpbWUiOjE1ODA5NTIxOTMsInVzZXJfaWQiOiJqR0VMNFdTSTl3UlBVMTF5eDlrOVpwQVVhYzczIiwic3ViIjoiakdFTDRXU0k5d1JQVTExeXg5azlacEFVYWM3MyIsImlhdCI6MTU4MDk1MjE5MywiZXhwIjoxNTgwOTU1NzkzLCJlbWFpbCI6ImplZmVyc29uLnBlaGxzQGdtYWlsLmNvbSIsImVtYWlsX3ZlcmlmaWVkIjpmYWxzZSwiZmlyZWJhc2UiOnsiaWRlbnRpdGllcyI6eyJlbWFpbCI6WyJqZWZlcnNvbi5wZWhsc0BnbWFpbC5jb20iXX0sInNpZ25faW5fcHJvdmlkZXIiOiJwYXNzd29yZCJ9fQ.H0Mj3J7q_8L9IDAK2-zCZFaN1NP9tG6PKPpmEtjlNcSpT2zxXXPpHN-lxgVhyj_2EDxT1_ZikX2_l4EFBmy2ctYmYOxZF0Pm1UnFaLnXFRMFg7kFxkk6wLZlwI_cFp1TGmYZdgwJBhoude_ItmGlbGFSQGjwyO00DVyHq1nRIh-zl-NUXdMABLE_hbGYlXPYO6VlHLZ-ROXx4n-OnQ2bamNo4l0kp9YRV1z44jYR9ngbkW-eWgu4O7lRSlHgY0rBKF8lnPA__vKEgLyU-hheMwIFVdn7jVJkoKWkWm_-q6MVTCv9YKc0JNDlJm07QGBjss5xBbNWwlPfQ-MBejReoQ",
"registered": true,
"refreshToken": "AEu4IL2RMDFBsoQ5FEsN6rSznT2oElkKSxude28oFWspMHBAzY0J084TbIPfhTtOoKFePO3lnBFpExLraVVE2E2CW2JMSJQ7FFXlrExqULkYdG3n1OxHk8VU01GvBMwJdDTC6i48OOinouYRludjz0tA6xvmaOgfhmm9-NXj3SYU1AIkSXJi5ghYxRuiO4STwg_GpjvRP0Z-NdisYX01wHxmuETHu80VVA",
"expiresIn": "3600"
}
Затем я попытаюсь использовать этот токен, который было получено:
На Почтальоне я делаю GET https://firestore.googleapis.com/v1/projects/eletronica-ab6b1/databases/(default)/documents/colA/docA.json
, где colA - КОЛЛЕКЦИЯ, а docA - ДОКУМЕНТ. Тело этого запроса выбрано как «нет». Затем я нажимаю на вкладку «Авторизация», выбираю ТИП «Toarer Token» и в поле Token вставляю строку токена, полученную по предыдущему запросу. Затем нажмите кнопку ОТПРАВИТЬ. И получите этот ответ:
{
"error": {
"code": 403,
"message": "Missing or insufficient permissions.",
"status": "PERMISSION_DENIED"
}
}
В чем может быть причина этой ошибки? Чего не хватает?
Может быть, это правила? Мои текущие правила таковы, я не менял их в любое время, они являются исходными значениями с тех пор, как я создал базу данных.
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write: if false;
}
}
}
С уважением.