我没有兴趣对我的客户进行身份验证。
但是,我确实希望确保到达我的FireBase的任何人都获得授权。也就是说,它只能通过我的Android应用程序。可以以某种方式完成吗?我在FireBase文档中找不到任何选项或备选方案。
我看到的最佳方法是让我的应用程序通过证书签名,并使用它进行自我评估。
答案 0 :(得分:1)
要验证您的应用,请使用FCM(但遗憾的是,它需要服务器代码):
/uids/$uid/enabled
。有规则要求它,例如:
".read" : "root.child('uids').child(auth.uid).child('enabled').val() == true"
FCM消息的原因是,为了发送这样的消息,应该应该“注册”应用程序,这意味着应用程序的开发人员签名证书是已知的。任何试图发送此类FCM消息而不通过您的应用程序的人都将失败 - 即使有人重新签名(并可能修改)您的应用程序。
缺点是,当然,您需要服务器接收FCM - 这在设备上非常容易,但在服务器端更难。