使用自定义令牌的Firebase身份验证是否安全?

时间:2017-12-27 00:03:33

标签: android firebase firebase-authentication

我在java上使用Firebase Admin SDK来自定义具有自定义声明集的自定义令牌。我将这些发送回ANDROID应用程序,它是客户端界面,并使用以下命令登录:

signInWithCustomToken("foundtokenfromserver");

现在,用于签署令牌的服务帐户文件是安全且隐藏的。但是,由于数据库URL,API密钥和存储桶URL在Web部件上公开,我认为任何人都可以从中创建自己的应用程序。我确实有安全规则将用户限制在自己的节点上。

我主要担心的是:

如果有人拦截了铸造的自定义标记并保存了该标记。他们是否可以使用上述FirebaseApp(使用公开信息生成)使用该令牌登录?

有没有办法让firebase防止这种滥用(也许auth域可以阻止网络,但是localhost呢?)

1 个答案:

答案 0 :(得分:1)

通常,在向服务器发送一些auth声明后,您只会使自定义令牌成为现实。例如,您可能正在使用自己的自定义身份验证系统使用电子邮件/密码。另一个示例是您可能正在使用不受支持的OAuth提供程序,并假设提供程序已经验证了用户,并且仅在验证应用程序后返回了断言(OAuth凭据/授权代码等)。此外,您将使用安全的TLS连接来防止窃听。