在我的Android应用中,我有两种类型的用户,即admin(只有一个)和user。在数据库中,我有一个布尔admin
,如下所示:
db
|_ Users
|_ uid
| |_ admin: true (only one)
|_ uid
| |_ admin: false
|_ uid
|_ admin: false
登录后,所有用户都将重定向到MainActivity。但是,如果用户是admin,我将在菜单中显示一个按钮,否则,其他用户将禁用该按钮。基本上,此按钮会打开一个活动,管理员可以在其中更改Firebase中的某些值。有聪明的方法吗?普通用户可以以某种方式打开该活动并执行管理员可以做的事情吗?谢谢
答案 0 :(得分:0)
出于安全性考虑,您应该假定某人能够进行反向工程并破坏您应用程序代码的代码。安全地阻止用户执行他们不应该做的事情的唯一方法是使用您控制的后端来检查其权限并在允许的情况下执行操作。
自从您将此问题标记为google-cloud-firestore以来,值得注意的是security rules还提供了控制措施,以确定谁可以在Firestore中进行哪些更改。