用于本地身份验证的 .Net 目录服务

本文关键字:Net 目录服务 身份验证 用于 | 更新日期: 2023-09-27 18:34:00

我是第一次在.Net中使用目录服务。我想使用它在 asp.net 网站应用程序中对计算机上的本地用户进行身份验证代码如下

DirectoryEntry entry = new DirectoryEntry("WinNT://"+Environment.MachineName+"/administrator", txtBoxUserName.Text, txtBoxPWD.Text);

由于某种原因,我得到了"System.Runtime.InteropServices.COMException"的例外,尽管我为管理员用户使用了正确的用户名和密码。

任何帮助将不胜感激

用于本地身份验证的 .Net 目录服务

试试这个:


public bool IsAuthenticationValid(string userName, string password)
{
    using (var context = new PrincipalContext(ContextType.Machine))
    {
        return context.ValidateCredentials(userName, password);
    }
}

编辑:忘了提到您将需要System.DirectoryServices和System.DirectoryServices.AccountManagement参考。

如果您遇到相同的错误,请描述您在什么环境中运行此代码。我的意思是命令行、Web 应用程序等。再了解一些背景知识,看看我是否可以进一步帮助您。