提问人:Özgün Özerk 提问时间:11/15/2023 更新时间:11/15/2023 访问量:50
如果有人修改并构建了我的 flutter 应用程序,它是否能够连接到我的 Firebase 后端?
If someone modifies and builds my flutter application, will it be able to connect to my Firebase backend?
问:
我正在使用 flutter 开发一个移动应用程序。我想让它开源。但是,我有以下顾虑:
- 有人可以很容易地分叉我的存储库,并更改客户端代码,并以某种方式访问一些高级功能
我能防止这种情况发生吗?我想到的是,也许我可以以某种方式让我的 firebase 后端只接受来自我签名的应用程序的连接?也许已经是这样了。我对为 android 和 iOS 签署应用程序不是很熟悉。
如果我能让构建失去对我的服务器的访问权限,如果它们不是由我构建的,这对我来说就足够了。
非常感谢有关该主题的任何帮助或澄清!
答:
1赞
Frank van Puffelen
11/15/2023
#1
当您使用 Firebase 时,访问后端服务所需的所有配置数据都存在于您的应用本身中(否则也无法调用这些服务)。
防止其他应用调用您的后端服务的最简单方法是在您的应用上启用应用检查,这样可以确保只有您自己的代码/应用才能在正版设备上调用后端服务。
另请参阅:
评论
1赞
Özgün Özerk
11/15/2023
我的后续问题是:我们所说的“在正版设备上只有您自己的代码/应用程序”是什么意思?应用程序检查如何验证它?我知道 apk 和 ios 捆绑包中的所有数据都可以以某种方式提取(包括 firebase 配置)。因此,如果有人分叉了我的代码库,构建了 apk,并在他们的 Android 设备上安装了该 apk,App Check 如何检测它不是我的代码?
0赞
Özgün Özerk
11/15/2023
我想,对于 android,当我使用 play-app-signing 时,如果有人更改了代码,签名将不再有效,并且证明将失败。它可能或多或少与iOS相同。这是 AppCheck 工作的主要原因吗?
0赞
Frank van Puffelen
11/15/2023
App Check 可与移动设备上的设备端证明提供商和 Web 的 re-CAPTCHA 配合使用。文档可能比我在这里给出的更好的解释。:)
0赞
Rod Rodrigues
11/15/2023
请看一下 freeRASP 软件包。我相信这将帮助您减轻担忧。软件包经常更新,GH 问题也会受到监控和响应。pub.dev/packages/freerasp
评论