我刚刚部署了一个网站到Firebase主机上,它工作得很好--设置非常简单。
然而,我的问题是,有没有什么方法可以使访问网站受到身份验证的限制?这是一个管理面板,只有我的团队才能访问。有没有办法我可以密码保护或私有化我的网站托管在Firebase上?
谢谢!
发布于 2017-06-01 07:09:39
这在目前是不可能的,尽管它已经是一个流行的特性请求。我们对如何解决这样的问题有一些想法,但目前没有什么可宣布的。
发布于 2017-08-14 14:33:14
来晚了,但在想要创建一个仅对我们域中的用户可用(但不想管理个人帐户)的仪表板时,遇到了类似的问题。
最终使用了标准的google auth流,但通过DB规则限制了数据访问。为了查看用户是否获得授权,我们尝试在登录后(在向用户报告之前)直接访问数据。如果由于身份验证而失败,我们的用户就是一个局外人。
Firebase数据库规则:
{
"rules": {
".read": "auth.token.email_verified == true && auth.token.email.matches(/.*@ourdomain.org$/)",
".write": false
}
}请参阅https://firebase.google.com/docs/reference/security/database/
注意:由于我们的组织通过gsuite运行邮件,这无疑使这变得更容易,但是在此选项不可用的情况下,您可以轻松地定义更细粒度的规则。
发布于 2019-08-15 03:37:12
对我来说,解决这个问题最简单的方法是将我的应用程序从Firebase迁移到AWS Amplify。它允许你对应用程序进行密码保护。在访问控制下,将其从“可公开查看”更改为“受限”。如果你正在寻找一种类似但在我看来比firebase身份验证更强大的功能,那么将AWS cognito集成到你的应用程序中;使用AWS cognito,你可以阻止新用户注册,并将新用户电子邮件限制在特定的域中。
https://stackoverflow.com/questions/44292599
复制相似问题