1

所以,我已经厌倦了尝试在网上搜索我的问题。

我目前正在创建一个 ASP.NET 2.0 应用程序。该应用程序当前连接到一个数据库,该数据库存储了我需要存储的所有信息。我还可以连接到我工作场所的 LDAP 目录。我正在为我的应用程序使用 LDAP 目录,因为所有内容都由员工 ID 跟踪。我现在需要添加身份验证和授权。

由于我的工作场所很大,我需要能够限制谁可以访问公司内的网站以及允许他们在网站上做什么。我知道 ASP.NET 有某种身份验证和授权,但我完全不知道它是如何工作的。

我当前的解决方案是在我的数据库中添加一个包含两列(员工 id 和 access_id)的表。员工 ID 可用于在需要时从 LDAP 中提取有关员工的信息。access_id 是一组整数,表示允许用户在网站上看到的内容。

当用户第一次在我的网站上启动会话时,我使用他们的 nt id 并从 LDAP 中提取员工 id。然后,我查找所有 access_id 并将它们存储在会话的数组中。每次用户访问网站的一部分时,我都会检查他们是否具有与该部分关联的 access_id 并根据该部分允许或禁止他们。我的第一个 access_id 为 1 允许用户通过将 C# 中的可见性设置为来查看网页

if(access_id == 1)
  Enter.visible = true;.
4

1 回答 1

0

您使用的是哪种 LDAP 目录?如果是 Active Directory,请尝试:http: //msdn.microsoft.com/en-us/library/ff650308.aspxhttp://msdn.microsoft.com/en-us/library/ff647405

您也可以考虑:http: //msdn.microsoft.com/en-us/library/ff649313

如果不是 AD,您可以实现自己的 MembershipProvider:http: //msdn.microsoft.com/en-us/library/f1kyba5e.aspx

最好在可能的地方使用框架,并且只在必要时使用自己的代码。

于 2012-07-25T18:44:32.307 回答