没有触发在Firebase身份验证云功能中链接新提供程序的触发器,我正在尝试通过安全规则来更新Firestore和Auth。
看看doc,有一个包含与用户帐户相关联的身份的字段。
firebase.identities:与该用户帐户关联的所有身份的映射。地图的键可以是以下任意键:电子邮件,电话,google.com,facebook.com,github.com,twitter.com。映射的值是与该帐户关联的每个身份提供者的唯一标识符的列表。例如,request.auth.token.firebase.identities [“ google.com”] [0]包含与该帐户关联的第一个Google用户ID。
在我所有的尝试中,取消提供者与用户帐户的链接似乎并不反映该字段。
例如,我尝试了
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作为提供者,并且在成功取消链接过程(在Facebook提供者中记录用户结果消失)后,结果为isProviderLinked true。
我该如何管理?