我正在 WPF/MVVM 中编写一个新版本的 Delphi 应用程序。它不是从头开始的完全重新设计,而只是将 Delphi 代码替换为 WPF 代码,并进行了一些现代化更改。我目前只能访问正在运行的 Delphi 应用程序,而不是源代码,但很快就会有。
目前,身份验证使用数据库查询来查询用户名和散列 - 我怀疑这不是一种方法,但必须在今天晚些时候解决这个问题 - 密码。如何存储用户已通过身份验证,以检查对所有应用程序命令和数据的访问?视图模型中的一个简单的私有布尔值User
,一个包含在顶层、应用程序、视图模型中的实例?或者,也许当我扩展到授权时,仅仅是User
视图模型被分配了一个空权限列表这一事实?通常在这里做什么?
该应用程序是一个非常大的国际公司的访问控制和考勤管理应用程序,因此安全级别需要相当高。由于同样庞大的用户群和访问权限列表,此时使用 AD 是不可行的,并且重写具有非常高的优先级。