2013-05-14 1 views
0

У меня есть сервер SSRS, настроенный на использование базовой аутентификации - с использованием имени пользователя и пароля. Когда я нахожусь в интерфейсе веб-управления (https://alpha.myserver.com/Reports), я получаю диалог имени пользователя и пароля, вводя имя пользователя и пароль, которые я настроил, и система дает мне доступ. Аналогично, если я посещаю URL-адрес веб-служб (https://alpha.myserver.com/reportservice), я получаю тот же диалог входа в систему, а затем система предоставит мне доступ.Почему SSRS разрешает доступ несколько раз, но не другие?

Теперь, что странно, я внедряю средство просмотра отчетов в приложение MVC. Это приложение настроило учетные данные, которые отправляются вместе с запросами. Приложение использует URL-адрес веб-службы для некоторых вещей (получить список отчетов, папок и т. Д.) И «отображаемые» URL-адреса для отображения отчетов.

Когда я запускаю приложение локально на своей машине dev, настроенной для разговора с удаленным сервером SSRS, все работает нормально. Вчера я сделал первое развертывание приложения на тестовом сервере, и я получаю код ответа «401 не авторизованный», когда я вызываю вызов веб-сервисов для отображения отчетов. Я не понимаю, почему в тех же случаях учетные данные работают, а в других случаях - нет. У меня есть двойная и тройная проверка, что я использую один и тот же домен, имя пользователя и пароль в каждом случае.

ответ

1

SSRS имеет множество уровней проверки подлинности:

  1. счета хостинг услуги
  2. строку подключения для «источника данных»
  3. полномочий для доступа к веб-сервису
  4. учетные данные для уровня позиции (источник данных, набор данных, отчет и т. д.)

I Если вы добавляете еще один слой к этому, например, к службе WCF или что-то еще, это могут быть учетные данные, связанные с этой службой, которые не выполняются на ожидаемой учетной записи домена. SSRS очень очень придирчив ко всему, что нужно для каждого уровня. Слишком много, поэтому я бы сказал. Если вы можете запускать код из одного сервера или dev, а не другого, я бы предположил, что служба или учетная запись - это не тот же уровень доступа с компьютера. Можете ли вы попасть на машину, получив ошибку ограничения, войдите в систему с этой учетной записью, попробуйте перейти к URL-адресу отчета?

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

Смежные вопросы