2013-02-20 4 views
0

Я пытаюсь перенаправить HTTP-запрос с информацией заголовка MD5 в активный каталог для проверки учетных данных.Запрос переназначения перенаправления на активный каталог

У меня есть информация, предоставленная http-заголовком, как nonce и username. Моя проблема в том, что у меня нет ссылки, чтобы помещать эту информацию в объект PrincipalContext.

Я, очевидно, не могу использовать PrincipalContext.ValidateCredentials (имя пользователя, пароль), потому что для этого требуется пароль в виде простого текста.

Единственная проверка, которую я могу использовать, - UserPrincipal user = UserPrincipal.FindByIdentity(context, IdentityType.SamAccountName, username);, но это не включает пароль.

У меня есть объект HttpListenerContext. Но пользовательская переменная имеет значение NULL.

ответ

0

Tim, как только вы получите информацию, которую вы можете сделать что-то подобное, чтобы проверить, действителен или нет Если я понять, что вы хотите проверить, правильно, то попробуйте что-то вроде этого

, если вы работаете в этом с помощью кода или в службе у вас не должно быть проблем с паролем в отношении того, чтобы быть разоблаченным. Если вы обеспокоены этим, тогда вам нужно написать что-то, что расшифрует информацию заголовка MD5, где находится слово pass.

using(PrincipalContext prContext= new PrincipalContext(ContextType.Domain, "Your Domain")) 
{ 
    bool isValid = prContext.ValidateCredentials("Username", "Password"); 
} 
+0

Я не забочусь об открытии пароля. На самом деле я не знаю пароля. Мой клиент отправляет мой запрос на дайджест, имеющий md5 nonce piggybag. Мне нравится не расшифровывать этот md5, но сразу же использовать эту строку для проверки против активного каталога –

+0

ответ, который я предоставил, позволит вам проверять, но вы должны написать что-то, что расшифровывает md5. Я не верю, что AD поддерживает передачу или инъекция MD5 – MethodMan

+0

Вы не можете легко расшифровать MD5. Вот почему он используется для дешифрования. –

1

После того как я сказал мой сервер для пользователя AuthenticationSchemes.IntegratedWindowsAuthentication он автоматически deliveres в WindowsPrincipal, который предоставляет информацию из AD.

Смежные вопросы