Я пытаюсь записать файл на сервере (web05) с классического сайта asp, работающего на Windows 2008 serer на IIS7 (webadmin). Это терпит неудачу, и web05 регистрирует попытку анонимного входа в систему во время операции сохранения.Проблема классического ASP-олицетворения на сервере IIS7 Windows 2008
Сайт Webadmin работает в пуле приложений в классическом режиме с пользователем домена в качестве учетной записи процесса. У учетной записи процесса есть права: «Доверять этому пользователю делегирование любой службе (только Kerberos)». То же самое относится к серверам web05 и webadmin.
Сайт использует проверку подлинности Windows, и идея заключается в том, что при входе на сайт с моим доменным пользователем права моего пользователя должны определять, что мне разрешено делать в контексте сайта IIS. Если я включу Basic Authentication, все будет хорошо.
Я также использовал setspn.exe, чтобы добавить SPN для URL. Если я печатаю setspn.exe -L WebAdmin, я получаю:
HTTP/webadmin.companyname.com
TERMSRV/webadmin
TERMSRV/webadmin.companypub.local
HOST/webadmin
HOST/webadmin.companypub.local
Так от того, что я понимаю, что SPNs настроены правильно.
Если я запускаю processmonitor на webadmin во время выполнения операции сохранения, он говорит, что процесс действительно олицетворяет пользователя моего домена - но получение «Access denied» (и, как я уже говорил, web05 регистрирует попытку анонимного входа в систему).
Любая идея, что вызывает это?
С наилучшими пожеланиями, Саймон
Вы совершенно правы, когда меня путают с олицетворением. Поэтому, если я вернусь, чтобы начать и спросить себя, что я пытаюсь сделать: я хочу, чтобы мой пользователь домена был аутентифицирован, поэтому я могу позволить классическому сайту ASP использовать учетные данные пользователей домена для записи в файл на другом сервере. Я нахожусь на правильном пути, как я это сделал с помощью проверки подлинности Windows? Анонимная аутентификация не включена. Я пытаюсь сохранить файл из объекта потока ADODB. Ошибка FileSytemObject. – nitech
Да, вы на правильном пути, если вы хотите, чтобы активность, выполняемая под идентификатором пользователя клиента, отключила анонимный доступ, по крайней мере, для страницы, содержащей ваш код, и включил встроенную защиту Windows. Предполагая, что пользователь имеет правильные разрешения, код должен работать. – AnthonyWJones
Это хорошо. Однако я уже отключил анонимный доступ и включил проверку подлинности Windows. Я могу войти в систему с моим пользователем домена на сайте - пользователь даже аутентифицирует доступ к базе данных (система dsn с проверкой подлинности Windows), но я не могу сохранить файл на удаленном сервере, даже если у зарегистрированного пользователя есть соответствующий прав. – nitech