Проверка подлинности на основе утверждений не выполняет проверку пользователя в SharePoint Server

 

**Применимо к:**SharePoint Foundation 2013, SharePoint Server 2013, SharePoint Server 2016

**Последнее изменение раздела:**2017-09-20

**Сводка.**Так как в SharePoint Server 2016 и SharePoint 2013 рекомендуется проверка подлинности на основе утверждений для доступа пользователей к веб-приложениям, в этой статье описываются средства и методики, с помощью которых можно исправлять неудачные попытки аутентификации пользователей на основе утверждений.

Когда пользователи пытаются подключиться к веб-приложению, в журналах регистрируются события неудачной проверки подлинности. Используя предоставляемые Майкрософт инструменты и систематический подход к изучению сбоев, можно определить общие проблемы, связанные с проверкой подлинности на основе утверждений, и устранить их.

Для успешного доступа к ресурсу SharePoint необходима как проверка подлинности, так и авторизация. При использовании утверждений процесс проверки подлинности проверяет правильность маркера безопасности. Процесс авторизации проверяет, разрешен ли доступ к ресурсу, на основе набора утверждений в маркере безопасности, а также настроенные разрешения для ресурса.

Чтобы определить, что является источником проблемы доступа, проверка подлинности или авторизация, внимательно изучите сообщение об ошибке в окне браузера.

  • Если сообщение об ошибке указывает, что пользователь не имеет доступа к сайту, то проверка подлинности выполнилась успешно, а авторизация завершилась неудачно. Для устранения неполадок авторизации попробуйте использовать следующие решения.

    • Самая распространенная причина неудачной авторизации при использовании проверки подлинности на основе утверждений SAML (Security Assertion Markup Language) заключается в том, что разрешения были назначены пользовательской учетной записи на основе Windows (домен\пользователь) вместо пользовательского идентификационного утверждения SAML.

    • Убедитесь, что было настроено использование соответствующих разрешений пользователем или группой, к которой принадлежит пользователь. Дополнительные сведения см. в статье Разрешения пользователей и уровни разрешений в SharePoint Server.

    • С помощью инструментов и методов, которые описываются в данной статье, установите набор утверждений в маркере безопасности пользователя, чтобы можно было сравнить его с настроенными разрешениями.

  • Если сообщение указывает, что проверка подлинности завершилась неудачно, то имеется проблема проверки подлинности. Если имеющийся в веб-приложении SharePoint ресурс использует проверку подлинности на основе утверждений, начните устранение неполадок с помощью сведений, которые приводятся в настоящей статье.

Инструменты устранения неполадок

Ниже перечислены основные средства устранения неполадок, предоставляемые корпорацией Майкрософт для сбора сведений о проверке подлинности на основе утверждений в SharePoint Server.

  • Чтобы получить подробные сведения о транзакциях проверки подлинности, можно использовать журналы единой службы ведения журналов (ULS).

  • Чтобы просмотреть сведения о параметрах проверки подлинности пользователей для веб-приложений и зон SharePoint и настроить уровни ведения журналов ULS, можно использовать центр администрирования.

  • Если в качестве поставщика федерации для проверки подлинности на основе утверждений SAML используются службы федерации Active Directory 2.0 (AD FS), то для определения утверждений в маркерах безопасности, которые выдаются AD FS компьютерам веб-клиента, можно использовать ведение журналов AD FS.

  • Для сбора и проверки сведений сетевого трафика проверки подлинности пользователей используйте сетевой монитор версии 3.4.

Установка уровня ведения журналов ULS для проверки подлинности пользователей

Приведенная ниже процедура предназначена для настройки SharePoint Server таким образом, чтобы в журнал заносилось как можно больше сведений о попытках проверки подлинности на основе утверждений.

Настройка SharePoint Server для занесения в журнал максимального объема сведений о проверке подлинности пользователей

  1. В панели быстрого запуска центра Центр администрирования щелкните элемент Мониторинг, а затем выберите элемент Настройка средств сбора данных диагностики.

  2. В списке категорий разверните узел SharePoint Foundation, а затем последовательно выберите элементы Авторизация проверки подлинности и Проверка подлинности на основе утверждений.

  3. В разделе Событие наименьшей важности для занесения в журнал событий выберите элемент Подробно.

  4. В разделе Событие наименьшей важности для занесения в журнал трассировки выберите элемент Подробно.

  5. Нажмите кнопку ОК.

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

Настройка SharePoint Server для занесения в журнал стандартного объема сведений о проверке подлинности пользователей

  1. В панели быстрого запуска центра Центр администрирования щелкните элемент Мониторинг, а затем выберите элемент Настройка средств сбора данных диагностики.

  2. В списке категорий разверните узел SharePoint Foundation, а затем последовательно выберите элементы Авторизация проверки подлинности и Проверка подлинности на основе утверждений.

  3. В разделе Событие наименьшей важности для занесения в журнал событий выберите элемент Information (Сведения).

  4. В разделе Событие наименьшей важности для занесения в журнал трассировки выберите элемент Medium (Среднее значение).

  5. Нажмите кнопку ОК.

Настройка ведения журналов AD FS

Даже после включения максимального уровня ведения журналов ULS SharePoint Server не регистрирует набор утверждений в полученном маркере безопасности. Если вы используете AD FS для проверки подлинности на основе утверждений SAML, можно включить ведение журналов AD FS и использовать средство просмотра событий, чтобы исследовать утверждения для маркеров безопасности, которые выдает SharePoint Server.

Включение ведения журналов AD FS

  1. На сервере AD FS в Просмотре событий щелкните элемент Представление, а затем установите флажок Отобразить аналитический и отладочный журналы.

  2. В дереве консоли Просмотра событий последовательно разверните Журналы приложений и служб/Трассировка AD FS 2.0.

  3. Щелкните правой кнопкой мыши элемент Отладка, а затем выберите Включить журнал.

  4. Откройте папку %ProgramFiles%\Active Directory Federation Services 2.0.

  5. С помощью программы "Блокнот" откройте файл Microsoft.IdentityServer.ServiceHost.Exe.Config.

  6. Последовательно выберите в меню пункты Правка и Найти, введите <source name=“Microsoft.IdentityModel“ switchValue="Off"> и нажмите кнопку ОК.

  7. Измените switchValue="Off" на switchValue="Verbose".

  8. Последовательно выберите в меню пункты Файл и Сохранить, а затем закройте блокнот.

  9. В оснастке служб щелкните правой кнопкой мыши элемент Служба AD FS 2.0 и выберите пункт Перезапустить.

Теперь с помощью Просмотра событий на сервере AD FS можно исследовать подробные сведения об утверждениях в узле "Журналы приложений и служб/Трассировка AD FS 2.0/Отладка". Найдите события с идентификатором 1001.

Вы также можете перечислить утверждения в HttpModule, веб-части или с помощью OperationContext. Дополнительные сведения см. в статье Получение всех пользовательских утверждений во время добавления утверждений в SharePoint 2010. Эти сведения, относящиеся к SharePoint 2010, также применимы и к SharePoint 2013.

Методика устранения неполадок для проверки подлинности пользователей на основе утверждений

Следующие действия помогут определить причину неудачных попыток проверки подлинности на основе утверждений.

Действие 1. Получение сведений о попытке неудачной проверки подлинности

Чтобы получить подробные и исчерпывающие сведения о неудачной попытке проверки подлинности, необходимо найти ее в журналах ULS SharePoint. Эти файлы журналов хранятся в папке %CommonProgramFiles%\Microsoft Shared\Web Server Extensions\15\LOGS.

Неудачную попытку проверки подлинности можно найти в файлах журналов ULS вручную или с помощью средства просмотра журналов ULS.

Поиск неудачной попытки проверки подлинности вручную

  1. Получите у пользователя имя учетной записи, которая создала неудачную попытку проверки подлинности.

  2. На сервере, на котором работает SharePoint Server или SharePoint Foundation, найдите папку %CommonProgramFiles%\Microsoft Shared\Web Server Extensions\16\LOGS или %CommonProgramFiles%\Microsoft Shared\Web Server Extensions\15\LOGS.

  3. В папке LOGS щелкните пункт Изменен, чтобы упорядочить содержимое папки по дате, начиная с с самых последних файлов.

  4. Попробуйте снова выполнить задачу проверки подлинности.

  5. В окне папки LOGS дважды щелкните файл журнала вверху списка, чтобы открыть его в блокноте.

  6. В меню программы Блокнот последовательно выберите пункты Правка и Найти, введите Authentication Authorization (Авторизация проверки подлинности) или Claims Authentication (Проверка подлинности на основе утверждений), а затем нажмите кнопку Найти далее.

  7. Нажмите кнопку Отмена, а затем прочтите содержимое столбца Message (Сообщение).

Чтобы воспользоваться средством просмотра ULS, скачайте его с этой страницы и сохраните в папке на сервере, на котором работает SharePoint Server или SharePoint Foundation. После установки этого средства выполните указанные ниже действия, чтобы найти неудачную попытку проверки подлинности.

Поиск неудачной попытки проверки подлинности с помощью средства просмотра ULS

  1. На сервере, на котором работает SharePoint Server или SharePoint Foundation, дважды щелкните программу Ulsviewer в папке, в которой она сохранена.

  2. В средстве просмотра ULS выберите в меню пункт Файл, переместите указатель в пункт Открыть из, а затем нажмите ULS.

  3. В диалоговом окне Настройка веб-канала среды выполнения ULS проверьте, указана ли папка %CommonProgramFiles%\Common Files\Microsoft Shared\Web Server Extensions\16\LOGS или \Common Files\Microsoft Shared\Web Server Extensions\15\LOGS в разделе Использовать веб-канал ULS из каталога файлов журналов по умолчанию. Если это не так, нажмите Использовать расположение каталога для веб-каналов в реальном времени и укажите папку %CommonProgramFiles%\Microsoft Shared\Web Server Extensions\16\LOGS или \Microsoft Shared\Web Server Extensions\15\LOGS в поле Расположение файла журнала.

    Вместо %CommonProgramFiles% подставьте значение из переменной среды CommonProgramFiles на сервере, на котором работает SharePoint Server или SharePoint Foundation. Например, если в качестве расположения задан диск C, значение %CommonProgramFiles% устанавливается в C:\Program Files\Common Files.

  4. Нажмите кнопку ОК.

  5. Щелкните элемент Правка и выберите команду Изменить фильтр.

  6. В диалоговом окне Фильтровать по в разделе Поле выберите элемент Категория.

  7. В поле Значение введите Authentication Authorization (Авторизация проверки подлинности) или Claims Authentication (Проверка подлинности на основе утверждений) и нажмите кнопку ОК.

  8. Повторите попытку проверки подлинности.

  9. В окне средства просмотра ULS дважды щелкайте отображенные строки, чтобы просмотреть часть Сообщение.

Сведения о кодировке утверждений в части строк, связанной с сообщением, для запросов, отличных от запросов OAuth, позволят определить способ проверки подлинности, а строка зашифрованного утверждения (например: i:0#.w|contoso\chris), — зашифрованное удостоверение пользователя. Дополнительные сведения см. в статье Шифрование утверждений в SharePoint 2013 и SharePoint 2010.

Действие 2. Проверка требований к конфигурации

С помощью Веб-сайт центра администрирования SharePoint можно определить, каким образом настроено веб-приложение или зона для поддержки одного или нескольких методов проверки подлинности на основе утверждений.

Проверка конфигурации проверки подлинности для веб-приложения или зоны

  1. В центре Центр администрирования в панели быстрого запуска последовательно выберите элементы Управление приложениями и Управление веб-приложениями.

  2. Щелкните имя веб-приложения, к которому пользователь пытается получить доступ, и в группе Безопасность на ленте щелкните элемент Поставщики проверки подлинности.

  3. В списке поставщиков проверки подлинности щелкните соответствующую зону (например, Default (По умолчанию)).

  4. В диалоговом окне Изменение параметров проверки подлинности в разделе Типы проверки подлинности на основе утверждений проверьте настройки для проверки подлинности на основе утверждений.

    • Для проверки подлинности на основе утверждений Windows проверьте, установлены ли флажки Включить проверку подлинности Windows и Встроенная проверка подлинности Windows, и выбрано ли NTLM или Согласование (Kerberos) в соответствии с требованиями. При необходимости установите флажок Обычная проверка подлинности.

    • Для проверки подлинности на основе форм убедитесь, что установлен флажок Разрешить проверку подлинности на основе форм (FBA). Проверьте значения в полях Имя поставщика контроля членства в ASP.NET и Имя диспетчера ролей ASP.NET. Эти значения должны соответствовать значениям поставщика членства и ролей, настроенным в файлах web.config для Веб-сайт центра администрирования SharePoint, веб-приложения и SharePoint Web Services\SecurityTokenServiceApplication. Дополнительные сведения см. в статье Настройка проверки подлинности на основе форм для веб-приложения на основе утверждений в SharePoint 2013.

    • Для проверки подлинности на основе утверждений SAML убедитесь, что выбран элемент Доверенный поставщик удостоверений и указано правильное имя доверенного поставщика. Дополнительные сведения см. в статье Настройка проверки подлинности на основе утверждений SAML с помощью AD FS в SharePoint 2013.

    • В разделе URL-адрес страницы входа проверьте параметр для страницы входа. Для страницы входа по умолчанию должен быть выбран параметр Страница входа по умолчанию. Для настраиваемой страницы входа проверьте ее указанный URL-адрес. Для этого скопируйте этот URL-адрес и попробуйте получить к нему доступ в веб-браузере.

  5. Нажмите кнопку Сохранить, чтобы сохранить изменения настроек проверки подлинности.

  6. Повторите попытку проверки подлинности. Появляется ли предполагаемая страница входа с правильными параметрами входа для проверки подлинности на основе форм или на основе SAML?

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

Действие 3. Проверка дополнительных элементов

После проверки файлов журналов и конфигурации веб-приложения проверьте следующее.

  • Поддерживаются ли утверждения в веб-браузере на компьютере веб-клиента. Дополнительные сведения см. в статье Планирование поддержки браузеров в SharePoint Server 2016.

  • Для проверки подлинности на основе утверждений Windows проверьте следующее.

    • Является ли компьютер, с которого пользователь выдает попытку проверки подлинности, членом того же домена, что и сервер, на котором размещается веб-приложение SharePoint, или членом домена, который имеет отношения доверия с размещающим сервером.

    • Вошел ли компьютер, с которого пользователь выдает попытку проверки подлинности, в свой домен доменных служб Active Directory (AD DS). Введите команду nltest /dsgetdc: /force в командной строке или в командной консоли Командная консоль SharePoint на компьютере веб-клиента, чтобы убедиться, что он может получить доступ к контроллеру домена. Если не перечислен ни один контроллер домена, устраните неполадку, препятствующую возможности обнаружения и подключения компьютера веб-клиента к контроллеру домена AD DS.

    • Вошел ли сервер, на котором работает SharePoint Server или SharePoint Foundation, в свой домен AD DS. Введите команду nltest /dsgetdc: /force в командной строке или в Командная консоль SharePoint на сервере, на котором работает SharePoint Server или SharePoint Foundation, чтобы убедиться, что он может получить доступ к контроллеру домена. Если не указан ни один контроллер домена, устраните неполадку, препятствующую обнаружению сервера, на котором работает SharePoint Server или SharePoint Foundation, и его подключению к контроллеру домена AD DS.

  • Для проверки подлинности на основе форм проверьте следующее.

    • Правильны ли учетные данные пользователя для настроенного поставщика членства и ролей ASP.NET.

    • Доступны ли в сети системы, в которых размещен поставщик членства и ролей ASP.NET.

    • Правильно ли настраиваемые страницы входа собирают и передают учетные данные пользователя. Чтобы протестировать это, настройте веб-приложение для временного использования страницы входа по умолчанию и проверьте, будет ли это работать.

  • Для проверки подлинности на основе утверждений SAML проверьте следующее.

    • Правильны ли учетные данные пользователя для настроенного поставщика удостоверений.

    • Доступны ли в сети системы, действующие в качестве поставщика федерации (например, AD FS) и поставщика удостоверений (такие как AD DS или сторонний поставщик удостоверений).

    • Правильно ли настраиваемые страницы входа собирают и передают учетные данные пользователя. Чтобы протестировать это, настройте веб-приложение для временного использования страницы входа по умолчанию и проверьте, будет ли это работать.

Действие 4. Использование веб-инструмента отладки для наблюдения за веб-трафиком и его анализа

С помощью таких инструментов, как HttpWatch или Fiddler, можно анализировать приведенные ниже типы HTTP-трафика.

  • Между компьютером веб-клиента и сервером, на котором работает SharePoint Server или SharePoint Foundation

    Например, можно наблюдать за HTTP-сообщениями перенаправления, отправляемыми сервером, на котором работает SharePoint Server или SharePoint Foundation, чтобы информировать компьютер веб-клиента о расположении сервера федерации (такого как AD FS).

  • Между компьютером веб-клиента и сервером федерации (таким как AD FS)

    Например, можно наблюдать за HTTP-сообщениями, отправляемыми компьютером веб-клиента, и ответами сервера федерации, которые могут содержать маркеры безопасности и их утверждения.

Примечание

Если вы применяете Fiddler, попытка проверки подлинности может завершиться сбоем после трех запросов на ввод учетных данных. Сведения о том, как предотвратить такое поведение, см. в статье Использование Fiddler с SAML и SharePoint для прохождения трех запросов проверки подлинности.

Действие 5. Сбор и анализ сетевого трафика проверки подлинности

С помощью такого инструмента анализа сетевого трафика, как Microsoft Network Monitor 3.4, можно собирать и анализировать трафик между компьютером веб-клиента, сервером с SharePoint Server или SharePoint Foundation, а также системами, которые используются для проверки подлинности на основе утверждений в случае SharePoint Server или SharePoint Foundation.

Примечание

В большинстве случаев при проверке подлинности на основе утверждений используются подключения на основе протокола HTTPS (Hypertext Transfer Protocol Secure), который шифрует сообщения, отправляемые между компьютерами. С помощью средства анализа сетевого трафика вы не можете видеть содержимое зашифрованных сообщений, не используя надстройку или расширение. Например, для сетевого монитора необходимо установить и настроить Network Monitor Decryption Expert (мастер расшифровки для сетевого монитора). В качестве более простой альтернативы для расшифровки HTTPS-сообщений используйте на сервере с SharePoint Server или SharePoint Foundation такой инструмент, как Fiddler, который может создавать отчет по незашифрованным HTTP-сообщениям.

Анализ сетевого трафика может выявить следующее.

  • Точный набор протоколов и сообщений, отправляемых между компьютерами, участвующими в процессе проверки подлинности на основе утверждений. Ответные сообщения могут содержать сведения об условиях ошибки, которые можно использовать для определения дополнительных действий по устранению неполадок.

  • Имеют ли сообщения-запросы соответствующие ответы. Несколько отправленных сообщений-запросов, не получивших ответы, могут указывать на то, что сетевой трафик не достигает своего места назначения. В этом случае проверьте наличие проблем с маршрутизацией пакетов, устройства фильтрации пакетов в пути (такие как брандмауэр) и фильтрацию пакетов в месте назначения (таком, как локальный брандмауэр).

  • Использовалось ли несколько методов на основе утверждений, и которые из них завершились неудачно.

Для проверки подлинности на основе утверждений Windows можно собирать и анализировать трафик между следующими компьютерами:

  • компьютером веб-клиента и сервером, на котором работает SharePoint Server или SharePoint Foundation;

  • сервером, на котором работает SharePoint Server или SharePoint Foundation, и его контроллером домена.

Для проверки подлинности на основе форм можно собирать и анализировать трафик между следующими компьютерами:

  • компьютером веб-клиента и сервером, на котором работает SharePoint Server или SharePoint Foundation;

  • сервером, на котором работает SharePoint Server или SharePoint Foundation, и поставщиком членства и ролей ASP.NET.

Для проверки подлинности на основе утверждений SAML можно собирать и анализировать трафик между следующими компьютерами:

  • компьютером веб-клиента и сервером, на котором работает SharePoint Server или SharePoint Foundation;

  • компьютером веб-клиента и его поставщиком удостоверений (таким как контроллер домена AD DS);

  • компьютером веб-клиента и поставщиком федерации (таким как AD FS).

See also

Настройка проверки подлинности на основе форм для веб-приложения на основе утверждений в SharePoint 2013
Настройка проверки подлинности на основе утверждений SAML с помощью AD FS в SharePoint 2013