我想验证应用程序用户是否没有弄乱时间设置来欺骗我的交易应用程序上的交易时间。我正在使用Firestore作为数据库。什么是最聪明的解决方法?
确保您可以信任时间戳的最简单方法是use Firestore's built in server timestamp。从文档中:
db.collection("objects").document("some-id").updateData([ "lastUpdated": FieldValue.serverTimestamp(), ])
如果无法使用服务器时间戳,则可以使用Firestore的服务器端安全规则,至少确保客户端通过的时间戳在合理范围内。为此,请将内置request.time
variable与客户端指定的值进行比较。