哪种身份验证方法更适合我的应用程序?

时间:2011-08-18 18:41:45

标签: asp.net forms authentication

我们将构建一个基于asp.net web的应用程序,但是我们无法决定应该使用哪种身份验证方法? (Active Directory身份验证或表单身份验证提供程序)

80%的应用程序将在公司内部使用(所有用户都是活动目录的一部分),其余20将从外部使用。该应用程序将具有基于用户的强烈许可(可能是控制级别。即网格可能具有用户A的不同列而不是同一页面上的用户B)

我只是想知道最好的方法是什么?

3 个答案:

答案 0 :(得分:5)

没有理由不能将LDAP与表单身份验证一起使用。我一直这样做。基本上,我使用LDAP对用户进行身份验证,并获取与我的应用程序相关的任何组。我使用表单来管理cookie和特定于应用程序的权限。您可以根据需要提供其他形式的身份验证,您只需要为应用程序提供一种知道何时使用LDAP或备用方法的方法。

答案 1 :(得分:1)

许多公司都非常严格地控制谁可以管理他们的LDAP权限(这是正确的)。根据您需要为用户添加/删除/更改权限的频率,以及在LDAP系统中进行这些更改所需的繁琐和痛苦程度,这可能是该方法的一个重大缺陷。

显然,这不应该是你唯一的决定点 - 但它可能值得包含在你的优缺点列表中。

答案 2 :(得分:0)

我不会使用LDAP进行身份验证。它易于实现,但是日志记录不太可靠,因为用户不能简单地注销应用程序,这意味着如果其他人出现并开始进行更改,那么这些更改将被跟踪到登录到计算机的用户。用户应该能够单击页面上某处的“注销”按钮并完成它。

您可以将Windows身份与FormsAuth一起使用,这似乎在这两种方法之间取得了一个舒适的媒介。 Windows身份验证的好处在于它强制与应用程序和域之间的用户名保持一致,但在某些情况下,这也不是一件好事。