0

所以我继承了这个项目,它有大约 20 个表单、数百个控件和数万行代码。我已经研究了一段时间,现在我的老板要求添加用户帐户。

基本上,会有不同的级别,例如UserSupervisorAdministrator。当您启动应用程序时,您必须登录,它会根据某种数据库检查您的登录凭据,并确定您拥有什么样的权限。

User将在主窗体上禁用除Go按钮之外的所有控件(这样做的好方法吗?)。Supervisor将启用所有内容并可以创建用户帐户(仅以某种形式)。Administrator相同Supervisor但也可以备份用户帐户。

现在我的问题是我不确定如何实现这一点。我无法查询在线服务或数据库,因为该程序必须在没有互联网连接的情况下才能使用。在计算机上拥有外部文件的问题是有人可以编辑或删除它。

我的想法是将用户帐户存储在Settings应用程序的类中,但即使存储外部配置文件。我想我需要它能够存储在可执行文件中,但也需要作为文件保存和导入。

显然,密码也必须在此文件中进行哈希处理。有谁知道任何好的且易于使用的类(最好是没有使用限制的类,因为此应用程序将在商业上出售)。用户名也应该被散列吗?因为如果有人掌握了该文件,他们也不应该知道所有用户名,因为这样可以更容易猜测密码。

4

1 回答 1

0

你的老板要求对你的申请进行重大调整。

在不了解您的所有要求的情况下,我无法真正将您推向一个方向或另一个方向。查看智能客户端架构和设计指南(也提供PDF 格式),它应该可以帮助您了解您要完成的工作的范围,并确定您需要考虑的一些设计/架构模式。

第 5 章处理安全注意事项并描述不同的身份验证模型。这至少应该给你一个很好的起点。

于 2012-11-09T15:45:25.027 回答