记录AD用户

时间:2014-04-16 21:00:55

标签: c# winforms active-directory

我有一个用C#编写的登录表单,我只希望AD用户能够登录 我该怎么做?

string UserName = "";
string Pass = "";

3 个答案:

答案 0 :(得分:0)

我确信这不是最佳做法,但是,根据您的安全需求,您可以通过只检查UserDomainName中的Form_Load来允许所有域用户并排除本地用户。这种简单的方法可以依赖于他们的计算机登录,并且没有任何LDAP / AD调用的复杂性。

if (SystemInformation.UserDomainName.ToString() == "myDomain")
{
    // your normal form load code here
}
else
{
   form1.Close(); //this is a simple but effective to pull the rug out from 
                  //under them if they do not have the permissions
   //TODO email the application administrator the `SystemInformation.UserName` of the user who was not given permissions
}

在我的环境中,由于我们的内部应用程序是通过ClickOnce部署的(每台计算机按用户安装),因此类似的方法(我们也比较用户名)对我们来说已经足够了。

答案 1 :(得分:0)

虽然它不是ASP.Net应用程序,但活动目录成员资格提供程序可以正常工作。

以下是有关如何使用此库的信息:

http://msdn.microsoft.com/en-us/library/system.web.security.activedirectorymembershipprovider.aspx

以下是更多信息:

http://msdn.microsoft.com/en-us/library/ff650308.aspx

答案 2 :(得分:0)

如果您想知道如何验证Active Directory的凭据以便在您的应用程序中允许AD用户,您应该检查this

您将找到如何验证文本框的内容并验证用户名和passowrd是否匹配(直接与AD匹配)。