我想创建一个时事通讯订阅表格。这意味着用户无需创建帐户即可注册我的新闻通讯。
我想做一个简单的插入。但确保其安全的最佳方法是什么?
我已经实现了“匿名登录”(https://firebase.google.com/docs/auth/web/anonymous-auth)
我需要基本规则,read检查用户是否已注册并将write用户数据推送到实时数据库中。
{
"rules": {
".read": "auth != null",
".write": "auth != null"
}
}
Run Code Online (Sandbox Code Playgroud)
匿名登录完成后,我将推送到实时数据库。
let dbConnection = firebase.database().ref('/newsletter_user');
dbConnection.push(datas).then(callback);
Run Code Online (Sandbox Code Playgroud)
问题是匿名身份验证不检查身份验证域。(如何在 firebase 中阻止 localhost?)
这意味着用户可以获取我的 ApiKey 并向我的 realbase 数据库执行插入或读取数据。
那么它对我来说似乎并不真正安全。我可以做什么来提高安全性?