База данных служб аналитики работает с сервером разработки ASP.NET, но НЕ с IIS. - PullRequest
1 голос
/ 15 февраля 2011

У меня есть приложение ASP.NET, которое необходимо подключиться к базе данных служб Analysis Services.Все компоненты находятся на одном компьютере:

  • Веб-приложение
  • IIS
  • Visual Studio 2008
  • SQL Server 2008

Моя учетная запись домена (DOMAINNAME \ MyWindowsUsername) является администратором на SQL Server, а также в группе «Администраторы» на локальном компьютере.

Веб-приложение использует проверку подлинности Windows и удостоверение личности impersonate = "true".

Мои параметры проверки подлинности Windows IIS (я также пробовал другие комбинации, но безуспешно ...):

  • Расширенная защита: выкл.
  • Включить проверку подлинности в режиме ядра:true
  • Включает поставщиков: NTLM



Когда я использую веб-приложение на сервере ASP.NET Development Server (развернутом из Visual Studio), тогдавсе работает нормальноМоя учетная запись домена и соответствующие роли базы данных распознаются правильно, и безопасность работает так, как определено в ролях базы данных.

Но при развертывании того же веб-приложения (без каких-либо изменений в коде) в IIS я получаю сообщение об ошибке (в браузере):

На транспортном уровне обнаружена ошибка.Узел преждевременно закрыл соединение.



В SQL Profiler (для случая IIS, когда соединение не удается установить), я получаю только эти два события:

Аудит входа в систему MyWindowsUsername DOMAINNAME

Аудит выхода из системы MyWindowsUsername DOMAINNAME

Кажется, что службы Analysis Services распознают олицетворенную учетную запись, но соединение разрывается.

Я заметил, что ASP.NET Development Server работает под DOMAINNAME \ MyWindowsUsername, а IIS под LocalSystem (настройка по умолчанию).Я пытался поиграть с учетными записями, добавив различные системные / сетевые учетные записи в качестве администраторов служб аналитики (просто чтобы понять логику этого), но также безуспешно (всегда одна и та же ошибка).

1 Ответ

1 голос
/ 20 февраля 2011

Вы должны использовать делегирование для передачи учетных данных пользователя из веб-браузера в SSAS,

http://msdn.microsoft.com/en-us/library/ff647404.aspx

Сервер разработки ASP.NET просто запускается под вашей учетной записью, что не позволяет вам заметить эту проблему ранее.

...