Как проверить доменные учетные данные?

79
задан Community 23 May 2017 в 12:34
поделиться

2 ответа

C# в.NET 3,5 использования Система. DirectoryServices. AccountManagement.

 bool valid = false;
 using (PrincipalContext context = new PrincipalContext(ContextType.Domain))
 {
     valid = context.ValidateCredentials( username, password );
 }

Это проверит против текущего домена. Проверьте параметризованного конструктора PrincipalContext для других опций.

122
ответ дан Ian Boyd 24 November 2019 в 10:13
поделиться
using System;
using System.Collections.Generic;
using System.Text;
using System.DirectoryServices.AccountManagement;

class WindowsCred
{
    private const string SPLIT_1 = "\\";

    public static bool ValidateW(string UserName, string Password)
    {
        bool valid = false;
        string Domain = "";

        if (UserName.IndexOf("\\") != -1)
        {
            string[] arrT = UserName.Split(SPLIT_1[0]);
            Domain = arrT[0];
            UserName = arrT[1];
        }

        if (Domain.Length == 0)
        {
            Domain = System.Environment.MachineName;
        }

        using (PrincipalContext context = new PrincipalContext(ContextType.Domain, Domain)) 
        {
            valid = context.ValidateCredentials(UserName, Password);
        }

        return valid;
    }
}

Kashif Mushtaq Оттава, Канада

-1
ответ дан Markus Safar 24 November 2019 в 10:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: