В устаревшем коде, с которым я работаю, веб-служба обращается к спискам SharePoint.
Некоторые из этих списков требуют специальных разрешений, поэтому учетные данные пользователя запрашиваются при первом доступе.
Однако после того, как я добавил некоторые записи в приложение, я заметил, что на самом деле происходит следующее, когда пользователь пытается вызвать веб-сервис в первый раз:
- веб-сервис начинает работать нормально;
- когда элемент требует специальных разрешений, SharePoint отправляет HTTP 401, который превращается в
ThreadAbortException
;
- пользователю предоставлен ящик с учетными данными;
- после входа веб-служба вызывается еще раз, на этот раз без проблем.
По сути, это означает, что в этом сценарии код перед вызовами SharePoint выполняется дважды.
Как правильно отобразить поле для ввода учетных данных перед выполнением любого кода?
Это тот случай, когда анонимный доступ к IIS должен быть отключен? Я подозреваю, что так, но я слишком неопытен в настройке веб-проектов, поэтому я запутался.