У меня есть приложение ASP.NET MVC3 С#.NET, работающее на IIS 7.5.
У нас есть учетная запись службы Windows NT, которую мы олицетворяем в нашем коде, чтобы читать/записывать документы в общий ресурс файла. Идентификатор пользователя скомпилирован в коде, а пароль учетной записи службы хранится в файле web.config.
Пароль содержит символ амперсанда (т.е.: p&ssword
).
Это сломало сайт. При обращении к сайту мы получили эту ошибку: "Извините, произошла ошибка при обработке вашего запроса".
Вот код, который использует пароль:
var password = ConfigurationManager.AppSettings.Get(Common.SVC_PWD);
bool isSuccess = LogonUser(
@"my_svc_acct",
"my.domain.net",
password,
LOGON32_LOGON_NEW_CREDENTIALS,
LOGON32_PROVIDER_DEFAULT, ref token
);
Почему это может привести к разорению сайта?