То, что вы спрашиваете, действительно сложно для новичка.
Поскольку вы начинаете и используете asp.net, я бы порекомендовал вам начать с ASP.NET Core , который представляет собой новый веб-фреймворк, построенный на основе .Net Core.
Существует множество ресурсов и курсов. Я бы порекомендовал вам получить подписку Pluralsight , есть много курсов, и они действительно хороши, почти все преподаватели являются MVP. Есть путь (вроде как карьера) для Сборка базовых приложений ASP.NET: .
Я работал с несколькими группами активных каталогов и пользователями в ядре .net, но сначала вам нужно понять основы.
Следующий код состоит из нескольких методов, которые я использовал для проверки пользователей с активным каталогом, а также получения списка всех компьютеров внутри каталога, но, как я уже сказал, сначала вам нужно понять основы, чтобы чтобы этот код правильно работал внутри вашего приложения
public bool ValidateWithActiveDirectory(string domainUrl, string userName, string password) {
using (var context = new PrincipalContext(ContextType.Domain, domainUrl)) {
UserPrincipal UserPrincipal1 = new UserPrincipal(context);
PrincipalSearcher search = new PrincipalSearcher(UserPrincipal1);
foreach (UserPrincipal result in search.FindAll()) {
}
if (context.ValidateCredentials(userName, password)) {
return true;
}
}
return false;
}
public IEnumerable<Computer> GetActiveDirectoryComputers(string domainUrl) {
IList<Computer> computers = new List<Computer>();
PrincipalContext context = new PrincipalContext(ContextType.Domain, domainUrl);
ComputerPrincipal computerPrincipal = new ComputerPrincipal(context);
PrincipalSearcher search = new PrincipalSearcher(computerPrincipal);
foreach (ComputerPrincipal result in search.FindAll()) {
computers.Add(new Computer(result.Name));
}
return computers;
}
Примечание: Если вы присоединитесь к Visual Studio Dev Essentials , они предоставят вам бесплатную подписку на 1 месяц.