Настройка соединения с базой данных сервера отчетов

Для функционирования каждого экземпляра сервера отчетов необходимо соединение с базой данных сервера отчетов, в которой хранятся отчеты, модели отчетов, общие источники данных, ресурсы, а также метаданные, управляемые сервером. Исходное соединение может быть создано во время установки сервера отчетов, если производится установка конфигурации по умолчанию. В большинстве случаев после завершения установки настройка соединения осуществляется при помощи программы настройки служб Службы Reporting Services. Такие параметры соединения, как тип учетной записи и учетные данные, можно изменять в любое время. Пошаговые инструкции по созданию базы данных и настройке соединения см. в разделе Как создать базу данных сервера отчетов (настройка служб Reporting Services).

Соединения с базой данных сервера отчетов необходимо настраивать в следующих случаях.

  • Первоначальная настройка сервера отчетов.

  • Настройка сервера отчетов на использование другой базы данных сервера отчетов.

  • Изменение учетной записи пользователя или пароля, используемых при соединении с базой данных. Подключение к базе данных необходимо обновлять только в том случае, если данные об учетных записях хранятся в файле RSReportServer.config. При использовании в соединении учетной записи службы (в ней в качестве типа учетных данных используется встроенная безопасность Windows) пароль не сохраняется, поэтому нет необходимости обновлять сведения о соединении. Дополнительные сведения об изменении учетных записей см. в разделе Настройка учетной записи службы сервера отчетов.

  • Настройка сервера отчетов с масштабным развертыванием. Настройка масштабного развертывания требует создания нескольких соединений с базой данных сервера отчетов. Дополнительные сведения о том, как выполнять эту операцию, см. в разделе Как настроить масштабное развертывание сервера отчетов (настройка служб Reporting Services).

Подключение служб Reporting Services к компоненту Database Engine

Доступ сервера отчетов к базе данных сервера отчетов определяется учетными данными и сведениями о соединении, а также ключами шифрования, доступными серверу отчетов. Для хранения и получения конфиденциальных данных необходимо иметь допустимый ключ шифрования. Ключи шифрования создаются автоматически при первичной настройке базы данных. После создания эти ключи необходимо обновить при изменении идентификатора службы сервера отчетов. Дополнительные сведения о работе с ключами шифрования см. в разделе Настройка и управление ключами шифрования.

База данных сервера отчетов является внутренним компонентом, доступ к которому имеется только у сервера отчетов. Учетные данные и сведения о соединении, указываемые для базы данных сервера отчетов, используются исключительно сервером отчетов. Пользователям, запрашивающим отчеты, не требуются разрешения для баз данных или имя входа для базы данных сервера отчетов.

Чтобы подключиться к компоненту Database Engine, на котором расположена база данных сервера отчетов, службы Службы Reporting Services используют System.Data.SqlClient. При работе с локальным экземпляром компонента Database Engine сервер отчетов устанавливает соединение при помощи общей памяти. Если для базы данных сервера отчетов используется удаленный сервер баз данных, в зависимости от используемого выпуска может потребоваться включить удаленные соединения. В выпуске Developer Edition удаленные соединения по умолчанию отключены. В выпуске Enterprise Edition удаленные соединения по умолчанию разрешены для протокола TCP/IP.

Чтобы проверить, допускает ли экземпляр удаленные соединения, нажмите кнопку Пуск, последовательно выберите пункты Все программы, Microsoft SQL Server 2008 R2, Средства настройки, а затем запустите Диспетчер конфигурации SQL Server и убедитесь, что для каждой из служб включен протокол TCP/IP.

При включении удаленных соединений включаются также клиентские и серверные протоколы. Чтобы проверить включенные протоколы, нажмите кнопку Пуск, выберите пункт Все программы, затем Microsoft SQL Server 2008 R2, Средства настройки, затем пункт Диспетчер конфигурации SQL Server, далее пункт Сетевая конфигурация SQL Server, а затем выберите пункт Протоколы для MSSQLSERVER. Дополнительные сведения см. в разделе Как включить или отключить протокол SNP (диспетчер конфигурации SQL Server) электронной документации по SQL Server.

Определение соединения с базой данных сервера отчетов

Чтобы настроить соединение, можно использовать диспетчер конфигурации служб Службы Reporting Services или программу командной строки rsconfig. Для функционирования сервера отчетов требуются следующие сведения о соединении.

  • Имя экземпляра компонента Database Engine, на котором содержится база данных сервера отчетов.

  • Имя базы данных сервера отчетов. При создании нового соединения можно создать новую базу данных сервера отчетов либо выбрать одну из существующих. Дополнительные сведения см. в разделе Создание базы данных сервера отчетов.

  • Тип учетных данных. Могут быть использованы учетные записи службы, учетная запись домена Windows или имя входа базы данных SQL Server.

  • Имя пользователя и пароль (требуется только для учетной записи домена Windows или имени входа для SQL Server).

Заданные учетные данные должны иметь доступ к базе данных сервера отчетов. При использовании программы настройки служб Службы Reporting Services этот шаг выполняется автоматически. Дополнительные сведения о разрешениях, необходимых для доступа к базе данных, см. в разделе «Разрешения базы данных» данного подраздела.

Хранение сведений о подключении к базе данных

Службы Службы Reporting Services хранят зашифрованные сведения о соединениях в представленных ниже установках RSreportserver.config. Чтобы создать зашифрованные значения указанных установок, необходимо использовать программу настройки служб Службы Reporting Services или программу rsconfig.

Не все из этих значений указываются для каждого из типов соединений. Если подключение настраивается при использовании значений по умолчанию (например, при использовании учетных записей служб), параметры <LogonUser>, <LogonDomain> и <LogonCred> будут пусты, например:

<Dsn></Dsn>
<ConnectionType></ConnectionType>
<LogonUser></LogonUser>
<LogonDomain></LogonDomain>
<LogonCred></LogonCred>

Если соединение настраивается на использование определенной учетной записи Windows или имени входа в базу данных, не забудьте обновить эти сохраненные значения при изменении учетной записи или имени входа.

Выбор типа учетных данных

В подключении к базе данных сервера отчетов используются следующие три типа учетных данных.

  • Встроенная безопасность Windows, использующая учетную запись службы сервера отчетов. Поскольку сервер отчетов реализован в виде отдельной службы, доступ к базе данных требуется только для той учетной записи, для которой запущена эта служба.

  • Учетная запись пользователя Windows. Если сервер отчетов и его база данных установлены на том же компьютере, можно пользоваться локальной учетной записью. В противном случае необходимо использовать учетную запись домена.

  • Имя входа для SQL Server.

ПримечаниеПримечание

Запрещается проводить нестандартную проверку подлинности для подключения к базе данных сервера отчетов. Нестандартная проверка подлинности используется только для главного подключения к серверу отчетов. Старайтесь не оказывать воздействия на соединения с базой данных сервера отчетов или с внешними источниками данных, предоставляющими содержимое отчетов.

Если экземпляр компонента Database Engine настроен для использования проверки подлинности Windows и экземпляр находится в том же домене, что и компьютер сервера отчетов (или в доверенном домене для этого домена), то соединение можно настроить для использования учетной записи службы или учетной записи пользователя домена, которые с помощью программы настройки служб Службы Reporting Services обрабатываются как свойство соединения. Если сервер базы данных находится в другом домене либо в случае применения безопасности рабочих групп, соединение нужно настроить на использование имени входа в базу данных SQL Server. Соединение при этом должно быть обязательно зашифровано. Дополнительные сведения см. в разделе Шифрование соединений с SQL Server электронной документации по SQL Server.

Использование учетных записей служб и встроенной безопасности

Встроенная безопасность Windows позволяет устанавливать соединение с использованием учетной записи службы сервера отчетов. Этой учетной записи предоставляются права доступа к базе данных сервера отчетов. При установке служб Службы Reporting Services в стандартной конфигурации этот тип учетных данных выбирается программой установки по умолчанию.

Учетная запись службы представляет собой доверенную учетную запись, обеспечивающую простоту управления соединением с базой данных сервера отчетов. Поскольку для соединения учетная запись службы использует встроенную безопасность Windows, необходимости в сохранении учетных данных нет. Однако при последующем изменении пароля или идентификатора учетной записи службы (например, при переключении типа учетной записи со встроенной на доменную) необходимо внести изменения при помощи программы настройки служб Службы Reporting Services. Эта средство автоматически обновляет измененные сведения учетной записи в разрешениях базы данных. Дополнительные сведения см. в разделе Настройка учетной записи службы сервера отчетов.

При настройке соединения с базой данных с использованием учетной записи службы этой учетной записи должны быть предоставлены сетевые разрешения, если база данных сервера отчетов располагается на удаленном компьютере. Не используйте служебную учетную запись, если база данных сервера отчетов находится на другом домене, защищена брандмауэром, либо в случае применения безопасности рабочих групп, а не безопасности домена. Используйте вместо этого учетную запись пользователя базы данных SQL Server.

Использование учетной записи «Пользователь домена»

Укажите учетную запись пользователя Windows для соединения сервера отчетов с базой данных сервера отчетов. Если используется локальная учетная запись или учетная запись домена, соединение с базой данных необходимо обновлять всякий раз, когда изменяется пароль для нее. Обновление соединения осуществляйте всегда при помощи программы настройки служб Службы Reporting Services.

Использование имени входа SQL Server

Чтобы подключиться к базе данных сервера отчетов, можно задать единое имя входа SQL Server. Если используется проверка подлинности SQL Server, а база данных сервера отчетов находится на удаленном компьютере, то в целях обеспечения безопасности передачи данных между серверами следует использовать IPSec. При использовании имени входа базы данных необходимо обновлять соединение с базой данных каждый раз, когда меняется пароль или учетная запись.

Разрешения базы данных

Учетные записи, предоставляемые для подключения к базе данных сервера отчетов, выполняют следующие функции:

  • Роли public и RSExecRole для базы данных ReportServer.

  • Роль RSExecRole для баз данных master, msdb и ReportServerTempDB.

Когда соединение создается или изменяется посредством программы настройки служб Службы Reporting Services, указанные разрешения предоставляются автоматически. Если используется программа rsconfig и для соединения была указана другая учетная запись, то для указанной новой учетной записи необходимо обновить имя входа SQL Server. С помощью программы настройки служб Службы Reporting Services можно создать файлы-сценарии, обновляющие имя входа SQL Server для сервера отчетов.

Проверка имени базы данных

Чтобы выяснить, какая база данных сервера отчетов используется конкретным экземпляром сервера отчетов, используйте программу настройки служб Службы Reporting Services. Чтобы найти имя, необходимо подключиться к экземпляру сервера отчетов и открыть страницу установки базы данных.

Использование другой базы данных сервера отчетов или перемещение базы данных сервера отчетов

Чтобы настроить сервер отчетов на использование другой базы данных сервера отчетов, необходимо изменить сведения о подключении. Обычно переключение между базами данных происходит при развертывании рабочего сервера отчетов. Переключение с тестовой базы данных сервера отчета на рабочую базу данных обычно происходит при развертывании рабочего сервера. Также можно перемещать базу данных сервера отчета на другой компьютер. Дополнительные сведения см. в разделах Перемещение баз данных сервера отчетов на другой компьютер и Миграция (службы Reporting Services) электронной документации по SQL Server.

Настройка нескольких серверов отчетов для использования общей базы данных сервера отчетов

Можно настроить несколько серверов отчетов на использование общей базы данных сервера отчетов. Такая настройка развертывания называется масштабным развертыванием. При необходимости запуска нескольких серверов отчетов в кластере сервера такая настройка является обязательной. Однако данную конфигурацию можно использовать также для сегментирования приложений службы или для проверки установки и настроек нового экземпляра сервера отчетов и сравнения его с уже существующим экземпляром сервера отчетов. Дополнительные сведения см. в разделе Настройка служб Reporting Services для масштабного развертывания.