Проблемы с проверкой подлинности Kerberos, когда пользователь входит в несколько групп

Support for Windows XP has ended

Microsoft ended support for Windows XP on April 8, 2014. This change has affected your software updates and security options. Learn what this means for you and how to stay protected.

Support for Windows Server 2003 ended on July 14, 2015

Microsoft ended support for Windows Server 2003 on July 14, 2015. This change has affected your software updates and security options. Learn what this means for you and how to stay protected.

ВНИМАНИЕ! Данная статья переведена с использованием программного обеспечения Майкрософт для машинного перевода и, возможно, отредактирована посредством технологии Community Translation Framework (CTF). Корпорация Майкрософт предлагает вам статьи, обработанные средствами машинного перевода, отредактированные членами сообщества Майкрософт и переведенные профессиональными переводчиками, чтобы вы могли ознакомиться со всеми статьями нашей базы знаний на нескольких языках. Статьи, переведенные с использованием средств машинного перевода и отредактированные сообществом, могут содержать смысловое, синтаксические и (или) грамматические ошибки. Корпорация Майкрософт не несет ответственности за любые неточности, ошибки или ущерб, вызванные неправильным переводом контента или его использованием нашими клиентами. Подробнее об CTF можно узнать по адресу http://support.microsoft.com/gp/machine-translation-corrections/ru.

Эта статья на английском языке: 327825
Поддержка заканчивается Пакет обновления 1 (SP1) для Windows Vista на 12 июля 2011 г. Чтобы продолжить получать обновления для системы безопасности для Windows, убедитесь, что вы используете Windows Vista с пакетом обновления 2 (SP2). Дополнительные сведения можно найти эту веб-страницу Майкрософт: Заканчивается поддержка для некоторых версий Windows.
Проблема
Когда пользователь входит в несколько групп, что пользователь может иметь проблемы с проверкой подлинности или параметры групповой политики. Следующих статей базы знаний Майкрософт описывается более подробно эти симптомы:

269643 Проверка подлинности Internet Explorer Kerberos не работает из-за недостаточного размера буфера, подключаясь к службам IIS
280380 С расширенных хранимых процедур можно воспользоваться переполнения буфера
2020943 Ошибка «HTTP 400 - Ошибочный запрос (запрос заголовка слишком длинный)» в служб (IIS)
Решение, описанное в этих статьях указывает, что необходимо изменить значение параметра реестра MaxTokenSize. Улучшение сделан на это разрешение. Если исправление, описанное в данной статье, не может потребоваться изменить значение MaxTokenSize по умолчанию.

Исправление, описанное в данной статье, заменяет исправления, описанные в статьях базы знаний Майкрософт, которые перечислены в этом разделе.
Причина
Не удается проверить подлинность пользователя, поскольку имеет фиксированный максимальный размер маркера Kerberos, созданный во время проверки подлинности. Транспортов, таких как удаленный вызов процедур (RPC) и HTTP используют значение MaxTokenSize при их выделения буферов для проверки подлинности. В Windows 2000 (исходная версия) значение MaxTokenSize — 8000 байт. В Windows 2000 Пакет обновления 2 (SP2) и Windows Server 2003 значение MaxTokenSize — 12 000 байт.

Kerberos использует поле сертификата атрибутов привилегий (PAC) пакета Kerberos для транспорта членства в группе Active Directory. Начиная с Windows Server 2012, это также относится к Active Directory заявок поля сведений (динамического контроля доступа). Если существует много принадлежность к группам для пользователя, и существует много утверждений для пользователя или устройства, которое используется, эти поля могут занимать много места в пакете.

Если пользователь является членом более чем 120 групп, буфера, который определяется значение MaxTokenSize недостаточен. Таким образом пользователи не могут проходить проверку подлинности, и появляется сообщение об ошибке «Недостаточно памяти». Прежде чем применить исправление, описанное в данной статье, каждая группа, добавляемой учетной записи пользователя увеличивает этот буфер 40 байт.

Примечание Во многих сценариях проверки подлинности Windows NTLM работает, как ожидалось. Проблема проверки подлинности Kerberos без анализа может отсутствовать. Однако сценарии, в которых применяются параметры групповой политики не могут работать должным образом.
Решение
Важно: Чтобы устранить эту проблему, необходимо установить значение реестра MaxTokenSize для всех компьютеров, участвующих в процессе проверки подлинности Kerberos. К ним относятся клиенты SQL Server. (То есть раздел реестра имеет для каждого компьютера, участвующего в поток запроса или ответа. Таким образом Если клиент SQL Server, на котором основан веб-приложения или имеет маркер пользователя должны быть переданы серверной базы данных SQL Server, имеет раздел реестра для установки на клиентском компьютере SQL Server компьютер базы данных SQL Server, а также клиентский компьютер, на котором запущен обозреватель Internet Explorer, веб-сервера, выполняется IIS и т. д.)

Примечание В следующих версиях Windows включает исправление для этой проблемы:
  • Windows 8
  • Windows Server 2012
  • Windows 7
  • Windows Server 2008 R2
  • Windows Server 2003
  • Windows Vista
  • Windows Server 2008
  • Windows XP Professional

Сведения о пакете обновления

Чтобы устранить эту проблему, получите последний пакет обновления для Microsoft Windows 2000. Для получения дополнительных сведений щелкните следующий номер статьи базы знаний Майкрософт:
260910 Как получить последний пакет обновления для Windows 2000

Сведения об исправлении

Исправление от корпорации Майкрософт доступно. Тем не менее он предназначен только для устранения проблемы, описанной в этой статье. Предлагаемое исправление должно применяться исключительно в системах, в которых обнаружена эта специфическая неполадка. Это исправление может проходить дополнительное тестирование. Таким образом Если вы не подвержены серьезно эту проблему, рекомендуется дождаться следующего пакета обновления Windows 2000, содержащего это исправление.

Для немедленного решения этой проблемы обратитесь в службу поддержки пользователей Майкрософт для получения исправления. Для полный список телефонных номеров службы поддержки клиентов Майкрософт и сведения о стоимости поддержки посетите следующий веб-узел корпорации Майкрософт:Примечание В особых случаях оплата, предусмотренная за обращение в службу поддержки может быть отменена, если специалист службы технической поддержки Майкрософт определит, что обновление будет решением проблемы. Затраты на обычные услуги службы поддержки будут применяться к дополнительным вопросам и проблемам, которые не охватываются конкретным обновлением.Английская версия данного исправления содержит атрибуты файла (или более поздние атрибуты файлов), приведенные в следующей таблице. Дата и время для этих файлов указаны в формате общего скоординированного времени (UTC). При просмотре сведений о файле, он преобразуется в локальное время. Чтобы узнать разницу между временем по Гринвичу и местным временем, откройте вкладку Часовой пояс элемента "Дата и время" панели управления.
Статус
Корпорация Майкрософт подтверждает, что это проблема продуктов Майкрософт, перечисленных в разделе "Относится к". Впервые эта ошибка была исправлена в Microsoft Windows 2000 Пакет обновления 4.
Дополнительная информация

Маркер, расчет размера Windows 2000 на Windows Server 2008 R2

Если исправление, описанное в данной статье, нет необходимости изменять значение реестра MaxTokenSize в большинстве случаев. Однако существуют некоторые сценарии, в которых необходимо изменить значение MaxTokenSize реестра после установки исправления. После установки данного исправления на все контроллеры домена, чтобы определить, нужно ли изменять значение MaxTokenSize можно используйте следующую формулу:
TokenSize = 1200 + 40 d + цифры
Эта формула использует следующие значения:
  • d: число локальных групп домена, членом которого является пользователь, а также число универсальных групп вне пользователя учетной записи домена, членом которого является пользователь плюс число групп представлены в безопасности журнала идентификатор (SID).
  • s: число глобальных групп безопасности, членом которого является пользователь плюс число универсальных групп пользователя учетной записи домена, членом которого является пользователь.
  • 1200: Оценочная стоимость билетов затраты. Это значение может изменяться в зависимости от таких факторов, как длина имени домена DNS, имя клиента и других факторов.
В сценариях, в которых используется делегирование (например, когда проверка подлинности пользователей на контроллере домена) мы рекомендуем что увеличении вдвое размера маркера.

Когда следует создавать запись в реестре

Если размер маркера, вычисления по данной формуле меньше 12 000 байт (размер по умолчанию), нет необходимости изменить значение MaxTokenSize реестра на компьютерах домена. Если значение является более 12 000 байт, обратитесь к следующей статье базы знаний Майкрософт описание того, как изменить значение параметра реестра MaxTokenSize:

263693 Групповой политики не могут быть применены для пользователей из многих групп

Заметки
  • Если изменить значение MaxTokenSize, необходимо перезагрузить компьютер, чтобы изменение вступает в силу.
Рекомендуемое значение параметра реестра MaxTokenSize — 65535 десятичное или шестнадцатеричное FFFF. Значение MaxTokenSize указывает основных билет Kerberos получать буфер, который содержит идентификаторы SID, представляющие группы, членом которых является учетная запись.

Использовать безопасный размер, можно задать MaxTokenSize 48000после обсуждения ограничения, представленные размер заголовка HTTP далее в этой статье. В зависимости от того, какое значение вы используете сначала возникла проблема с событий ошибок Kerberos и ошибки IIS HTTP 400.

Известные проблемы, которые могут возникнуть

Известные проблемы для размера маркера доступа:

Служба локального администратора безопасности (LSA) создает маркер доступа пользователя из этого буфера SID. Жестко запрограммированный предел клиента, определяемые идентификаторы безопасности для данного токена 1,015, эта статья БАЗЫ знаний см.:
328889 пользователи, являющиеся членами групп более чем 1,015 может произойти сбой проверки подлинности
http://support.Microsoft.com/kb/328889/en-US

Таким образом значение MaxTokenSize 1015 более эффективных идентификаторов SID не полезно. В следующей формуле:
MaxTokenSize = 1200 + 40 d + цифры
40d означает, что 40 байт для группы SID локального домена. цифры для SID домена глобальная или универсальная группа означает 8 байт.

Таким образом Если значение MaxTokenSize 0x0000FFFF (64 КБ), можно в буфер приблизительно 1600 локальные группы SID домена или приблизительно 8000 домена глобальная или универсальная группа кодов безопасности. При использовании учетных записей «доверенный для делегирования» требование буфера для каждого кода безопасности может удваивается. В этих случаях можно сохранить только около 800 локальные группы SID домена при использовании MaxTokenSize значение 64 КБ. Тем не менее только локальные группы SID домена не типичный сценарий. Значение 64 КБ, будет достаточно даже для сценариев делегирования.

Известные проблемыпри использовании значений больше 65535 MaxTokenSize

Предыдущие версии данной статьи описаны значения до 100000 байт для MaxTokenSize. Мы обнаружили, что версии для администратора SMS возникают при MaxTokenSize 100000 или больше. Также мы определили, что протокол IPSEC IKE не допускает безопасности BLOB становится больше, чем 66536 байт, и произойдет сбой и когда MaxTokenSize большее значение.

Известные проблемы, связанные с HTTP сервера информации Интернет буфера приема

Размер буфера ограниченной запрос использует Internet Information Server (IIS) для снижения отказ службы атаки 64 КБ. Тем не менее, билет Kerberos в HTTP-запросе кодировке Base64 (6 бит развернуты восемь бит). Кроме того билет Kerberos используется 133% от исходного размера. Таким образом когда максимальный размер буфера составляет 64 КБ, в службах IIS, может использоваться 48 Кбайт билета Kerberos.

Если запись реестра MaxTokenSize присвоено значение, превышающее 48000 и размер буфера используется для SID, может произойти ошибка IIS. Однако если значение записи реестра MaxTokenSize 48000, может возникнуть ошибок Kerberos.

Дополнительные сведения о размерах буфера IIS щелкните приведенные ниже номера статей базы знаний Майкрософт:
310156 Как ограничить размер заголовка передачи HTTP, службы IIS принимает от клиента в Windows 2000

920862 Сообщение об ошибке при попытке доступа к почтовому ящику в Exchange Server 2003 пользователя веб-клиента Outlook: «HTTP 400 Ошибочный запрос (слишком длинный заголовок запроса) "

Изменения в Windows Server 2012

Windows Server 2012 моменты этот буфер представлены следующие изменения:
  • По умолчанию для MaxTokenSize становится 48000 байт.
  • Имеется новая схема сжатия в идентификационные коды безопасности
  • Динамический элемент управления Microsoft Access добавляет Active Directory заявок билет. Таким образом вычисление размеров ожидаемых билет больше не является простым. Ожидается, что билетов, выданных контроллеры домена Windows Server 2012, меньше, чем же билеты, выданные из более старых версий операционной системы. Заявки увеличивают размер билета. Однако после файловых серверов Windows Server 2012 широко используются утверждения, можно ожидать постепенной замены значительное количество групп, контролировать доступ к файлам для монтажа размеры билета.

Дополнительные сведения об изменениях в Windows Server 2012 посетите следующий веб-узел Microsoft TechNet:

Примеры проблем при превышении размера билета

Для получения дополнительных сведений щелкните следующий номер статьи базы знаний Майкрософт:
277741 Internet Explorer заканчивается неудачно из-за недостаточного размера буфера для Kerberos
313661 Сообщение об ошибке: «Время ожидания истекло» происходит при подключении к SQL Server по протоколу TCP/IP и Kerberos MaxTokenSize больше, чем 0xFFFF

Поскольку возможно сценариев входа в систему между доменами в лесу значение следует установить на всех системах Windows леса. Поэтому рекомендуется обеспечить максимальное значение MaxTokenSize значение 64 КБ.

Важно: На клиентах SQL Server может появиться следующее сообщение об ошибке при возникновении этой проблемы:
Не удается создать контекст SSPI
Чтобы устранить эту проблему, необходимо установить значение реестра MaxTokenSize для всех компьютеров, участвующих в процессе проверки подлинности Kerberos. К ним относятся клиенты SQL Server.

Свойства

Номер статьи: 327825 — последний просмотр: 11/22/2015 09:15:00 — редакция: 5.0

Microsoft Windows XP Professional, Microsoft Windows XP Professional x64 Edition, Microsoft Windows Server 2003 Service Pack 2, Windows Vista Business, Windows Vista Enterprise, Windows Vista Ultimate, Windows Server 2008 Datacenter, Windows Server 2008 Enterprise, Windows Server 2008 Standard, Windows Web Server 2008, Windows Server 2008 R2 Enterprise, Windows Server 2008 R2 Foundation, Windows Server 2008 R2 Standard, Windows 7 Корпоративная, Windows 7 Профессиональная, Windows 7 Максимальная, Windows Server 2012 Datacenter, Windows Server 2012 Essentials, Windows Server 2012 Foundation, Windows Server 2012 Standard, Windows 8 Enterprise, Windows 8 Pro, Microsoft Windows Server 2003 R2 Datacenter Edition (32-Bit x86), Microsoft Windows Server 2003 R2 Datacenter x64 Edition, Microsoft Windows Server 2003 R2 Enterprise Edition (32-Bit x86), Microsoft Windows Server 2003 R2 Enterprise x64 Edition, Microsoft Windows Server 2003 R2 Standard Edition (32-bit x86), Microsoft Windows Server 2003 R2 Standard x64 Edition, Windows 8.1 Enterprise, Windows 8.1 Pro, Windows Server 2012 R2 Datacenter, Windows Server 2012 R2 Essentials, Windows Server 2012 R2 Foundation, Windows Server 2012 R2 Standard

  • kbqfe kbhotfixserver kbsecurity kbwin2ksp4fix kbbug kbfix kbwin2000presp3fix kbwin2000presp4fix kbmt KB327825 KbMtru
Отзывы и предложения