Я использую свою электронную таблицу в качестве интерфейса администратора для моего приложения Firebase, где я могу авторизовать некоторые пользовательские транзакции в приложении. В электронной таблице используются сценарии приложений Google и облачные функции.
. Я могу отправлять данные в электронную таблицу и на свой сервер и обратно, а теперь необходимо заблокировать доступ к облачным функциям HTTP-URL для авторизованных пользователей. с атрибутом admin в пользовательских утверждениях, установленным в true.
Для этого я надеюсь отправить маркер OAuth пользователя, полученный из API скриптов Google Apps (ScriptApp.getOAuthToken ()), как часть полезной нагрузки запроса и использовать firebaseМетод API rest https://identitytoolkit.googleapis.com/v1/accounts:signInWithIdp?key=[API_KEY] для получения токена идентификатора пользователя и других учетных данных для проверки и авторизации пользователя-администратора и транзакции.
const credentials = {
postBody: `id_token=${token}&providerId=google.com`,
requestUri: oAuthCredentials.web.redirect_uris[0],
returnIdpCredential: false,
returnSecureToken: true
}
APIRequest(IdentityUrls.signInWithOAuth, {
headers: {
'Content-Type': "application/json"
},
method: 'POST',
body: JSON.stringify(credentials)
}, (error, res) => {
...// perform actions here
})
Проблема в том, что я продолжаю получать INVALID_IDP_RESPONSE : предоставленные идентификационные данные неверны или устарели. Я не уверен, почему это так, и был бы признателен за помощь