我在我的 iOS 应用程序中使用 Firebase 身份验证。当用户使用 Firebase 登录我的应用程序然后注销该用户的所有其他设备( session )时,Firebase 中有什么方法吗?我可以使用 Firebase admin SDK 做到这一点吗?
最佳答案
当我遇到这个问题时,我用云函数解决了它 请访问此链接了解更多详情 https://firebase.google.com/docs/auth/admin/manage-sessions#revoke_refresh_tokens
执行以下操作;
- 使用 Firebase 云功能设置 Web 服务器(如果不存在)
- 使用 admin sdk(这是此方法唯一有效的方法)- [访问此链接] ( (https://firebase.google.com/docs/admin/setup#initialize_the_sdk)。
- 创建一个 api 来接收 uid 并撤销上面第一个链接中指定的当前 session
admin.auth().revokeRefreshTokens(uid)
.then(() => {
return admin.auth().getUser(uid);
})
.then((userRecord) => {
return new Date(userRecord.tokensValidAfterTime).getTime() / 1000;
})
.then((timestamp) => {
//return valid response to ios app to continue the user's login process
});
瞧,用户注销了。我希望这有助于解决问题
关于javascript - Firebase 注销用户所有 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54704253/