Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Windows Challenge/Response (NTLM) — это протокол проверки подлинности, используемый в сетях, включающих системы под управлением операционной системы Windows и автономных систем. NTLM — это пакет безопасности , обеспечивающий проверку подлинности, целостность и конфиденциальность приложений. Он используется для проверки подлинности пользователей и компьютеров в домене Windows или автономных системах.
Проверка подлинности NTLM
Пакет безопасности Microsoft Kerberos добавляет большую безопасность, чем NTLM, в системы в сети. Хотя Microsoft Kerberos является протоколом выбора, NTLM по-прежнему поддерживается. NTLM также необходимо использовать для проверки подлинности входа в автономные системы. Дополнительные сведения о Kerberos см. в статье Microsoft Kerberos.
Учетные данные NTLM основаны на данных, полученных во время интерактивного входа, и состоят из доменного имени, имени пользователя и одностороннего хэша пароля пользователя. NTLM использует зашифрованный протокол запроса/ответа для проверки подлинности пользователя без отправки пароля пользователя по сети. Вместо этого система, запрашивающая проверку подлинности, должна выполнить вычисление, которое подтверждает, что у нее есть доступ к защищенным учетным данным NTLM.
Интерактивная проверка подлинности NTLM по сети обычно включает две системы: клиентскую систему, где пользователь запрашивает проверку подлинности, а также контроллер домена, где хранятся сведения, связанные с паролем пользователя. Неинтерактивная проверка подлинности, которая может потребоваться для разрешения уже вошедшего в систему пользователя для доступа к ресурсу, такому как серверное приложение, обычно включает в себя три системы: клиент, сервер и контроллер домена, который выполняет вычисления проверки подлинности от имени сервера.
Неинтерактивная аутентификация NTLM
Ниже приведена структура неинтерактивной проверки подлинности NTLM. Первый шаг предоставляет учетные данные NTLM пользователя и выполняется только в рамках процесса интерактивной проверки подлинности (входа). Остальные шаги выполняются клиентом, сервером и контроллером домена для завершения процесса проверки подлинности.
- (только интерактивная проверка подлинности) Пользователь обращается к клиентскому компьютеру и предоставляет доменное имя, имя пользователя и пароль. Клиент вычисляет криптографический хэш пароля и удаляет фактический пароль.
- Клиент отправляет имя пользователя серверу (в виде обычного текста).
- Сервер генерирует 8-байтовое случайное число, называемое челленджем или нонс, и отправляет его клиенту.
- Клиент шифрует эту проблему хэшом пароля пользователя и возвращает результат серверу. Это называется ответом.
- Сервер отправляет следующие три элемента контроллеру домена:
- Имя пользователя
- Вызов, отправленный клиенту
- Ответ, полученный от клиента
- Контроллер домена использует имя пользователя для получения хэша пароля пользователя из базы данных диспетчера учетных записей безопасности. Он использует этот хэш паролей для шифрования проблемы.
- Контроллер домена сравнивает зашифрованную проблему, вычисленную (на шаге 6) с ответом, вычисляемым клиентом (на шаге 4). Если они идентичны, проверка подлинности выполнена успешно.
Приложение не должно напрямую обращаться к пакету безопасности NTLM; Вместо этого он должен использовать пакет безопасности "Согласование ". Согласование позволяет приложению использовать более сложные протоколы безопасности , если они поддерживаются системами, участвующими в проверке подлинности. В настоящее время пакет безопасности "Согласование" выбирает между Kerberos и NTLM. Согласование выбирает Kerberos, если он не может использоваться одной из систем, участвующих в проверке подлинности.