我的登陆页面即将推出,其中包含用户名,电子邮件地址等用于订阅的呼叫。用户不需要认证即可订阅。他可以是任何访问此页面的随机人员。我觉得规则应该是“.read”:false,“.write”:true。但谷歌警告我说写:真正的将允许任何人写入数据库,即使不使用该应用程序的人。Firebase实时数据库:登陆页面的正确安全规则是什么?
我觉得这是很自然的,直到我把一个CAPTCHA什么的。这些问题是如何解决的(订阅中的垃圾邮件预防或即将推出的具有表格的页面)?
我的登陆页面即将推出,其中包含用户名,电子邮件地址等用于订阅的呼叫。用户不需要认证即可订阅。他可以是任何访问此页面的随机人员。我觉得规则应该是“.read”:false,“.write”:true。但谷歌警告我说写:真正的将允许任何人写入数据库,即使不使用该应用程序的人。Firebase实时数据库:登陆页面的正确安全规则是什么?
我觉得这是很自然的,直到我把一个CAPTCHA什么的。这些问题是如何解决的(订阅中的垃圾邮件预防或即将推出的具有表格的页面)?
您可以采取什么措施来防止滥用安全规则(它不会阻止各种垃圾邮件,因为您应该使用验证码和其他解决方案),您可以在Firebase上设置电子邮件身份验证,邮件确认。进入身份验证>登录方法>启用电子邮件。
将用户电子邮件和用户名保存到数据库时,可以在数据库中创建“用户”节点,并将其保存在Firebase分配给用户的用户ID下。
火力地堡会要求输入密码,因为你并不需要用户订阅,你只需要保持他们的电子邮件和密码,只需将模拟密码分配给所有用户。
它应该是这样的:
当你只是捕捉为自己的电子邮件和名字,你并不需要用户进行身份验证,我不明白为什么你会给用户写或读权限。只需执行程序中的逻辑即可保存这些数据。
然后你的规则是这样的:
{
"rules": {
".read": false,
".write": false
}
}
没有允许用户阅读或作为你自己管理其写入到数据库中。
总结起来:请求名称和电子邮件,指定一个密码,这个数据发送到 火力地堡作为一个新的用户登录,保存电子邮件和名义 /用户/ $ USER_ID