Контекст
У меня есть экземпляр базы данных Oracle 11g и экземпляр SQL Server 2012, установленные на 2 разных серверах в одном домене. База данных Oracle настроена на прием соединения со встроенной безопасностью (например, аутентификация Active Directory). В SQL Server установлена и настроена функция служб Reporting Services. Службы Reporting Services будут подключаться к базе данных Oracle с помощью поставщика данных Oracle .NET. от Microsoft.
Проблема
При создании подключения к базе данных в Visual Studio у меня нет проблем с подключением к базе данных Oracle с помощью встроенной безопасности. Я настроил соединение с этой строкой подключения:
Data Source=INSTANCE_NAME;Integrated Security=True;Unicode=True
Но всякий раз, когда я пытаюсь создать источник данных в службах Reporting Services с веб-сайта SSRS, из построителя отчетов или из BIDS, я получаю сообщение об ошибке входа:
ORA-01017: invalid username/password; logon denied
Я попытался скопировать ту же строку подключения, но результат всегда был одинаковым. Похоже, службы Reporting Services игнорируют Integrated Security=True
вариант по неизвестной причине.
Ноты
Та же проблема возникает с SQL Server 2008 R2.
Поставщик данных Oracle .NET от Oracle нельзя использовать со службами Reporting Services.
Это сделано намеренно и может быть исследовано путем поиска Kerberos и проблемы двойного перехода. Вам необходимо включить делегирование Kerberos на сервере служб отчетов, а также настроить SPN, чтобы Kerberos мог передавать учетные данные пользователя, выполняющего отчет, вместо учетной записи службы для SSRS.