1

我正在 WPF/MVVM 中编写一个新版本的 Delphi 应用程序。它不是从头开始的完全重新设计,而只是将 Delphi 代码替换为 WPF 代码,并进行了一些现代化更改。我目前只能访问正在运行的 Delphi 应用程序,而不是源代码,但很快就会有。

目前,身份验证使用数据库查询来查询用户名和散列 - 我怀疑这不是一种方法,但必须在今天晚些时候解决这个问题 - 密码。如何存储用户已通过身份验证,以检查对所有应用程序命令和数据的访问?视图模型中的一个简单的私有布尔值User,一个包含在顶层、应用程序、视图模型中的实例?或者,也许当我扩展到授权时,仅仅是User视图模型被分配了一个空权限列表这一事实?通常在这里做什么?

该应用程序是一个非常大的国际公司的访问控制和考勤管理应用程序,因此安全级别需要相当高。由于同样庞大的用户群和访问权限列表,此时使用 AD 是不可行的,并且重写具有非常高的优先级。

4

1 回答 1

0

实际上,这不是一个简单的问题。

这不适合作为评论,所以我将其发布为答案:

  • 您的应用程序的架构是什么?2层?3层?
  • 您是否使用 WCF 进行通信?
  • 谁是您的应用程序的用户?Windows 用户?
  • 从哪里使用您的应用程序?在 Windows 域中?通过互联网?

这些问题可能会帮助您决定走哪条路。

例如,如果您使用 3 层架构、用于通信的 WCF、在 Windows 域上使用的应用程序,您可能对非自定义身份验证感兴趣(您可以使用 Windows 身份验证)。请参阅MSDN(WCF 中的身份验证、授权和身份)

于 2013-11-06T13:30:14.793 回答