我正在创建使用Firebase身份验证的Flutter应用。我添加了一个更改电子邮件选项,并对会话有一些疑问。
首先,当用户更改电子邮件时,刷新令牌将被吊销。 Firebase文档示例利用实时数据库来跟踪令牌被吊销的时间。然后在数据库规则中检查它们。
可以在下面看到更新数据库的示例const metadataRef = admin.database().ref('metadata/' + uid);
metadataRef.set({revokeTime: utcRevocationTimeSecs})
.then(() => {
console.log('Database updated successfully.');
});
https://firebase.google.com/docs/auth/admin/manage-sessions#detect_id_token_revocation_in_the_sdk
当通过客户端SDK更改电子邮件地址时,我不确定在哪里调用此代码。是否有电子邮件更新过的firebase函数触发器,我在哪里可以写出此时间戳?
我考虑过只调用firebase函数,但是阻止了它在攻击者更新电子邮件之前被注释掉。
谢谢。