【问题标题】:users management用户管理
【发布时间】:2023-03-28 04:37:02
【问题描述】:

我需要构建一个管理用户的应用程序,我认为遵循现有的管理模型会很好,例如 Windows 或 linux 使用的具有用户、组、权限等的管理模型。

我在 Internet 上找不到任何地方来获得有关如何实现此功能的解释。

我的应用程序是一个 Web 应用程序,可能是管理用户的 asp.Net(不太重要的技术)。我的级别很少,目前是系统管理员、高级用户、组管理员和简单用户。

每个级别都提供特权,例如高级用户可以查看所有用户,可以将用户提升为组管理员,可以降级用户(权限低于他的权限)等。

有什么地方可以读到如何实现这样的系统?

【问题讨论】:

    标签: user-management


    【解决方案1】:

    可能使用ASP.NET membership provider 对您有用。您可以使用SqlMembershipProvider,它将安全信息存储在 Sql Server 数据库中。如果您需要更高级的功能(并且可能更安全),您可以使用 Active Directory 或 ADAMActiveDirectoryMembershipProvider。 ASP.NET 成员提供程序模型是可定制的,您可以实现自己的提供程序,但现有的提供程序非常强大。

    【讨论】:

    • 在选择如何实现之前,我想看看其他人是如何构建这种结构的。我的应用程序管理来自不同位置的用户和用户数据(外部 Web 服务、2 个 sql 服务器、Active Directory 等)。我需要找到一种方法来处理用户的权限。例如,一个简单的用户不能更改 Active Directory 中的数据,除了他的部分数据。另一个例子,组经理只能看到他的组详细信息和统计数据(我从网络服务获得的统计数据)等。我想阅读一些关于此的理论,但我找不到。
    • 您似乎需要处理自定义权限,而会员资格提供者只会帮助您进行用户管理和组会员资格。对于权限,我认为您需要实现 IPermission 接口。所需的方法是Demand。确实,MSDN 上的示例并不多,但很容易弄清楚:在您的Demand 实现中,获取当前主体并评估执行某些操作所需的权限。如果校长没有,请抛出SecurityException
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-09-16
    • 2015-03-07
    • 2017-01-08
    • 2010-12-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多