Как веб-приложение справляется с периодическими изменениями паролей учетных записей Windows? - PullRequest
0 голосов
/ 08 декабря 2011

У меня есть веб-сайт, настроенный для анонимного доступа, содержащий HttpHandler, который размещается с помощью кода в EndUserSite.Для выполнения своей работы HttpHandler.ashx устанавливает явные учетные данные перед вызовом веб-службы (настроенной на еще одном сайте, ожидающем аутентификацию Windows).Последовательно, он выглядит следующим образом:

  1. EndUserSite ... использует проверку подлинности с помощью форм .... затем в конечном итоге POST будет ...
  2. HttpHandlerSite ...
  3. srv.Credentials = new System.Net.NetworkCredential («пользователь», «проход», «домен»);// в настоящее время жестко закодировано
  4. srv.webMethodName (...
  5. WebServiceSite ... webservice выполняет API-вызов к ApplicationService (на другом компьютере)
  6. Служба приложения возвращается кего вызывающая сторона (веб-служба)
  7. веб-служба возвращается к своей вызывающей стороне (HttpHandler)
  8. потоки HttpHandlerSite возвращают содержимое обратно в текущий HttpContext, который является пользователем EndUserSite

Thisвся операция выполняется НЕ в домене, а на 2 серверах в рабочей группе и «связана» с помощью «согласованного» удостоверения Windows.

  • ApplicationService (ServerA) настроен для работы с определеннымУчетная запись Windows
  • WebServiceSite (ServerW) настроена для работы с соответствующей учетной записью Windows
  • HttpHandlerSite (ServerW), настроенной для анонимного доступа, но "знает" специальные имя пользователя и пароль для WebServiceSite (чьи учетные данные "совпадают" по имени пользователя и паролю с ApplicationService

В настоящее время учетные данные жестко закодированы в HttpHandler.ashx, который собран в bin / webclient.dll;надежный пароль также используется.

Пока все это работает, «проблемы с обслуживанием» возникают, когда «магический пароль» должен измениться.Короче говоря, пароль необходимо менять в нескольких местах, и эти изменения необходимо тщательно координировать.

Существует ли более элегантный подход к дизайну?

Больше всего меня беспокоит необходимость изменить исходный код, перестроить HttpHandler и заново развернуть .DLL (другие изменения могут быть обработаны системным администратором).

Я видел несколько огромныхрецензии на безопасность доступа к коду.Это поможет?

...