根据Firebase文档,FirebaseUser
有多个属性,其中一个是电话号码。
https://firebase.google.com/docs/reference/js/firebase.User
只要用户登录,User
的所有属性都可以公开访问,无论用户使用哪个身份验证提供程序。
我担心如果我的应用程序同时使用电子邮件和电话身份验证,攻击者可能仅使用电子邮件和密码即可获取用户的电话号码信息。
例如,获取了各种受损电子邮件/密码凭据集的攻击者可能会登录到应用并能够看到完整的电话号码,因为用户登录后即可访问User
的所有属性。(假设用户链接了 EmailAuthCredential 和 PhoneAuthCredential(。
许多应用和网站只显示电话号码的最后几位数字,以便在帐户被盗用时保护用户的身份,Firebase 似乎无法做到这一点,这可能是一个安全问题。是否可以限制登录用户对User
的一个或部分属性(如电话号码(的访问?
如果有人为特定的 Firebase 身份验证用户提供了凭据,则他们可以访问该用户的完整个人资料。用户提供凭据的全部目的是证明其身份,然后允许他们访问该配置文件。没有办法屏蔽(部分(用户配置文件,因为它出于所有意图和目的他们自己的配置文件。
如果用户的凭据被盗,则应假定该用户的所有数据都存在风险。如果需要在应用程序中处理此问题,正确的做法是禁用用户帐户,并为他们提供带外方式,以便在他们重置凭据后重新启用它。