Почему я не могу принудительно установить SSL для служб отчетов Sql Server? - PullRequest
4 голосов
/ 11 июня 2009

Я пытаюсь настроить SSRS 2008 на Windows Server 2008. Кажется, он работает, как и ожидалось, когда я получаю доступ к веб-интерфейсу через HTTP, но при использовании HTTPS я получаю следующую ошибку: «Базовое соединение было закрыто: при отправке произошла непредвиденная ошибка. "

Из анализа файлов журнала видно, что внутренним исключением является «System.Net.Sockets.SocketException: существующее соединение было принудительно закрыто удаленным хостом». Это заставляет меня думать, что ошибка возникает во время вызова службы из диспетчера отчетов в веб-службу.

Я настроил для веб-службы и диспетчера отчетов SSL-привязку к порту не по умолчанию (8091) с использованием сертификата, подписанного с использованием моего собственного сертификата CA. Сертификат сервера установлен (и используется) IIS7, а сертификат CA добавлен в «Доверенные корневые центры сертификации» в хранилище сертификатов «Локальный компьютер».

Поиск в сети конкретных сообщений об ошибках дает мне много информации о том, как решать проблему, если клиентское приложение является моим собственным .NET-приложением. Наиболее распространенным решением, по-видимому, является установка для свойства «ServicePointManager.SecurityProtocol» значения «SecurityProtocolType.Ssl3», но я полагаю, что это невозможно для меня, когда клиент является предварительно скомпилированным веб-приложением (диспетчер отчетов).

Есть идеи?

ОБНОВЛЕНИЕ: Запросы теперь не выполняются с состоянием HTTP 401: неавторизовано. "Трассировка стека в файле журнала сообщает мне, что исключение происходит в SoapHttpClientProtocol.ReadResponse, который я ожидаю, чтобы быть" позже "в SOAP-обработка, чем ошибка, которую я имел раньше.

Есть новые идеи?

Ответы [ 2 ]

2 голосов
/ 01 июля 2009

Решение этой проблемы было найдено здесь: http://prologika.com/CS/forums/t/946.aspx

В rsreportserver.config я заменил этот раздел:

<AuthenticationTypes>
  <RSWindowsNegotiate/>
  <RSWindowsNTLM/>
</AuthenticationTypes>

с этим:

<AuthenticationTypes>
  <RSWindowsBasic/>
</AuthenticationTypes>

и все теперь работает.

1 голос
/ 18 июня 2009

Проверьте эта ссылка , помогла мне сузить мою проблему (которая, я думаю, отличалась от вашей).

...