Без триггеров на связывание новых провайдеров в облачных функциях 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 исчезла).
Как я могу управлять этим?