2015-09-03 5 views
0

У меня есть приложение MVC4, установленное на Windows Server 2008 в моей компании (IIS 7.5). для удаленного доступа к серверу Windows мы используем (xxxxDMZ \ имя пользователя, пароль), которые являются той же аутентификацией Windows, которая необходима для доступа к определенной странице веб-сайта. Моя проблема заключается не в том, что у всех есть эта учетная запись «xxxxDMZ», поэтому они не могут получить доступ к этой странице, что я пытаюсь сделать, это добавить свои учетные данные для входа в Windows для доступа к этой странице (добавив только имя пользователя), которое было бы «xxxx» \ имя пользователя.Добавление пользователей олицетворения ASP.NET для определенного домена для проверки подлинности Windows

Я прочитал, что для этого мне нужно использовать олицетворение, но я не могу найти четкий способ его реализации.

Любая помощь с признательностью оценивается.

спасибо, что заблаговременно!

+0

олицетворения используется тор процесса IIS работает ваш сайт. Из того, что я читаю, вы хотите, чтобы пользователи из DomainA заходили на сайт, размещенный на веб-сервере xxxxDMZ. – NeerPatel

ответ

0

Вот функция, которую вы можете использовать. Но Домен должен быть доступен из DMZ ... что означает открытие портов между вашей DMZ и вашим контроллером домена.

public bool ValidateUser(string userName, string password) 
     { 
      bool validation; 
      try 
      { 
       LdapConnection ldc = new LdapConnection(new LdapDirectoryIdentifier((string)null, false, false)); 
       NetworkCredential nc = new NetworkCredential(userName, password, "DOMAIN NAME HERE"); 
       ldc.Credential = nc; 
       ldc.AuthType = AuthType.Negotiate; 
       ldc.Bind(nc); // user has authenticated at this point, as the credentials were used to login to the dc. 
       validation = true; 
      } 
      catch (LdapException) 
      { 
       validation = false; 
      } 
      return validation; 
     } 

исх: LDAP Authentication in ASP.Net MVC

+0

Большое спасибо за ваш ответ. В настоящее время я использую этот способ авторизации контроллера, я не уверен, как реализовать эту функцию и как открыть порт между доменом DMZ, который размещает веб-сайт и домен пользователя. [Авторизоваться] Публичный класс TheNoticesController: Контролер { Публичный отзыв о действии() { { return View(); } } –