在iOS和Android上授予用户应用程序内部的管理员权限
我们的应用程序需要处理两种类型的用户:管理员和非管理员。管理员应该看到非管理员看不到的接口元素。管理员应该能够通过应用程序添加和更新在线数据库。非管理员应该只能在应用程序中查看数据库中的数据。我们如何在应用程序中最好地实现这一点,以及确定用户是否确实是管理员并将其存储以供以后使用的最佳解决方案是什么?最好的选择是处理您的安全性并从服务器授予权限 许多系统可以根据后端使用的技术来实现,基本上您需要用户的凭据(通常使用用户名/密码,但任何保证用户身份的东西都可以使用),服务器将使用这些凭据来授权某些操作并拒绝其他操作 例如,您可以使用基于令牌的身份验证,如下所述 然后,服务器可以在执行某些操作之前检查用户是否具有正确的权限在iOS和Android上授予用户应用程序内部的管理员权限,android,ios,database,permissions,Android,Ios,Database,Permissions,我们的应用程序需要处理两种类型的用户:管理员和非管理员。管理员应该看到非管理员看不到的接口元素。管理员应该能够通过应用程序添加和更新在线数据库。非管理员应该只能在应用程序中查看数据库中的数据。我们如何在应用程序中最好地实现这一点,以及确定用户是否确实是管理员并将其存储以供以后使用的最佳解决方案是什么?最好的选择是处理您的安全性并从服务器授予权限 许多系统可以根据后端使用的技术来实现,基本上您需要用户的凭据(通常使用用户名/密码,但任何保证用户身份的东西都可以使用),服务器将使用这些凭据来授权某些
许多系统已经存在,这完全取决于后端使用什么技术。最好的选择是处理您的安全性并从服务器授予权限 许多系统可以根据后端使用的技术来实现,基本上您需要用户的凭据(通常使用用户名/密码,但任何保证用户身份的东西都可以使用),服务器将使用这些凭据来授权某些操作并拒绝其他操作 例如,您可以使用基于令牌的身份验证,如下所述 然后,服务器可以在执行某些操作之前检查用户是否具有正确的权限
许多系统已经存在,这完全取决于在后端使用什么技术。IMO对于您的场景,最好的方法如下所示: 1)服务器端:
- 在
维护一个具有服务器端
访问权限的管理员
。这意味着您将创建一个用户,并将凭据提供给授权人员用户
- 在登录服务中,检查提供的凭据是否为admin。如果是admin,则返回一个标志,表示
isAdmin=true
- 为了以后使用,您只需将此标志保存在
中,作为处理有限的NSUSerDefaults
数据的最佳解决方案
- 如果
是用户
(管理员
),则设置适当的isAdmin=true
元素,并允许访问联机UI
数据库
- 如果
是非管理员,则更改用户
设置,并加载该用户界面
用户的本地
数据库
- 在
维护一个具有服务器端
访问权限的管理员
。这意味着您将创建一个用户,并将凭据提供给授权人员用户
- 在登录服务中,检查提供的凭据是否为admin。如果是admin,则返回一个标志,表示
isAdmin=true
- 为了以后使用,您只需将此标志保存在
中,作为处理有限的NSUSerDefaults
数据的最佳解决方案
- 如果
是用户
(管理员
),则设置适当的isAdmin=true
元素,并允许访问联机UI
数据库
- 如果
是非管理员,则更改用户
设置,并加载该用户界面
用户的本地
数据库