我正试图把我所有的后端都放在Firestore上。
每次用户登录时,我都想更新lastConnectionDate
集合中的users
。
我的问题是所有这些数据都是通过Javascript发送的,因此不安全。我怎样才能确定用户不会作弊并说他的lastConnectionDate是50年前的?
使用“经典”后端,我只需添加当前后端日期而不要求用户提供它。
我如何使用Firebase / Firestore保护此过程?
有一个特殊的FieldValue.serverTimestamp()
marker value来设置Firestore写操作中的服务器端日期。
在安全规则中,有一个包含当前时间的特殊request.time
variable。
通过在安全规则中比较这两者,您可以验证写入的任何值是否与服务器上的当前时间相同。
使用firebase函数设置lastConnectionDate。也许使用身份验证触发器