Идентификаторы аутентификации Firebase не обновляются на уровне правил пожарного хранилища безопасности - PullRequest
0 голосов
/ 14 октября 2018

Без триггеров на связывание новых провайдеров в облачных функциях firebase auth, я пытаюсь обновлять firestore и auth с помощью правил безопасности.

Глядя на doc , есть полекоторый содержит удостоверения, связанные с учетной записью пользователя.

firebase.identities: карта всех удостоверений, связанных с учетной записью этого пользователя.Ключи карты могут быть следующими: электронная почта, телефон, google.com, facebook.com, github.com, twitter.com.Значения карты представляют собой списки уникальных идентификаторов для каждого поставщика удостоверений, связанного с учетной записью.Например, request.auth.token.firebase.identities ["google.com"] [0] содержит первый идентификатор пользователя Google, связанный с учетной записью.

При всех моих попытках кажется, чтоОтмена связи провайдера из учетной записи пользователя не отражается в этом поле.

Например, я попытался с

function isProviderLinked(provider) {
    return provider in request.auth.token.firebase.identities && request.auth.token.firebase.identities[provider].size() > 0
    && request.auth.token.firebase.identities[provider][0] != null
}

, используя facebook.com в качестве провайдера, и после отмены связывания это приводит к значению isProviderLinked true.успешный процесс (регистрация результатов пользователя в провайдере Facebook исчезла).

Как я могу управлять этим?

...