Partilhar via


Configurar uma ligação à base de dados de um servidor de relatórios (Gestor de Configuração do Servidor de Relatórios)

Aplica-se a: SQL Server 2016 (13.x) Serviços de Relatórios e versões posteriores Power BI Report Server

Para obter conteúdo relacionado a versões anteriores do SQL Server Reporting Services (SSRS), consulte O que é o SQL Server Reporting Services?

Neste artigo, aprende sobre a ligação à base de dados do servidor de relatórios SQL Server e informações essenciais sobre como funciona. Esta informação inclui como configurar a ligação e que considerações deve ter em conta durante a configuração.

Cada instância do servidor de relatórios requer uma ligação à base de dados do servidor de relatórios que armazena os relatórios, fontes de dados partilhadas, recursos e metadados geridos pelo servidor. Podes criar a ligação inicial durante a instalação de um servidor de relatórios se instalares a configuração predefinida. Na maioria dos casos, utilize a ferramenta de Configuração dos Serviços de Relatórios para configurar a ligação após a conclusão da configuração. Modifique a ligação a qualquer momento para alterar o tipo de conta ou redefinir credenciais. Para mais informações sobre como criar a base de dados e configurar a ligação, consulte Criar uma base de dados de servidor de relatórios em modo nativo (Gestor de Configuração do Servidor de Relatórios).

Quando configurar uma ligação à base de dados de um servidor de relatórios

Configure uma ligação à base de dados de um servidor de relatórios nas seguintes circunstâncias:

Como os Serviços de Relatórios se ligam ao motor de base de dados

O acesso de um servidor de relatórios a uma base de dados de servidor de relatórios depende de:

  • Credenciais e informações de ligação: Especificadas para a base de dados do servidor de relatórios e utilizadas exclusivamente pelo servidor de relatórios.
  • Chaves de encriptação: Necessárias para armazenar e recuperar dados sensíveis. Cria-se automaticamente quando configuras a base de dados pela primeira vez. Depois de criar as chaves, deve atualizá-las se alterar a identidade do serviço do Servidor de Relatórios. Para mais informações sobre como trabalhar com chaves de encriptação, consulte Configurar e gerir chaves de encriptação (Gestor de Configuração do Servidor de Relatórios).

A base de dados do servidor de relatórios é um componente interno, acedido apenas pelo servidor de relatórios. As credenciais e informações de ligação que especifica para a base de dados do servidor de relatórios são usadas exclusivamente pelo servidor de relatórios. Os utilizadores que solicitam relatórios não necessitam de permissões de base de dados nem de iniciar sessão na base de dados do servidor de relatórios.

Os Serviços de Relatórios utilizam o System.Data.SqlClient para se ligar ao Motor de Base de Dados que aloja a base de dados do servidor de relatórios. Se usar uma instância local do Motor de Base de Dados, o servidor de relatórios estabelece a ligação usando memória partilhada. Se usares um servidor de base de dados remoto para a base de dados do servidor de relatórios, podes ter de ativar ligações remotas dependendo da edição que usares. Se usares a edição Enterprise, as ligações remotas estão ativadas para TCP/IP por defeito.

Pode verificar que a instância aceita ligações remotas abrindo o SQL Server Configuration Manager e confirmando que o protocolo TCP/IP está ativado para cada serviço. Ativar ligações remotas também ativa os protocolos necessários de cliente e servidor. Para confirmar que estes protocolos estão ativados, abra o Gestor de Configuração do SQL Server, vá a Configuração de Rede do SQL Server no painel esquerdo e escolha Protocolos para MSSQLSERVER. Para mais informações, consulte Ativar ou desativar um protocolo de rede servidor no SQL Server.

Defina uma ligação a uma base de dados de servidor de relatórios

Para configurar a ligação, utilize a ferramenta Gestor de Configuração de Serviços de Relatórios ou a ferramenta de linha de comandos rsconfig . Um servidor de relatórios requer a seguinte informação de ligação:

  • Nome da instância do Motor de Base de Dados: O nome da instância do Motor de Base de Dados que hospeda a base de dados do servidor de relatórios.
  • Nome da base de dados do servidor de relatório: Ao criar uma ligação pela primeira vez, pode criar uma nova base de dados do servidor de relatórios ou selecionar uma base de dados existente. Para mais informações, consulte Criar uma base de dados de servidor de relatórios, Gestor de Configuração do Servidor de Relatórios.
  • Tipo de credencial: Pode usar as contas de serviço, uma conta de domínio Windows ou credenciais de login na base de dados SQL Server.
  • Nome de utilizador e palavra-passe: Obrigatório apenas se estiver a usar uma conta de domínio Windows ou credenciais de login do SQL Server.

As credenciais que fornecer devem ter permissão de acesso à base de dados do servidor de relatório. Se usar a ferramenta de Configuração dos Serviços de Relatórios, este passo ocorre automaticamente. Para mais informações sobre as permissões necessárias para aceder à base de dados, consulte a secção Como os Serviços de Relatórios se ligam ao motor da base de dados neste artigo.

Armazenar informação de ligação à base de dados

Os Serviços de Relatórios armazenam e encriptam a informação de ligação nas seguintes RSreportserver.config definições. Use a ferramenta de Configuração de Serviços de Relatórios ou a utilidade rsconfig para criar valores encriptados para estas definições.

Nem todos os valores estão definidos para todos os tipos de ligação. Se configurar a ligação usando os valores predefinidos das contas de serviço para criar a ligação, <LogonUser>, <LogonDomain> e <LogonCred> ficam vazios, da seguinte forma:

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

Se configurar a ligação para usar uma conta Windows específica ou credenciais de login na base de dados e depois alterar as credenciais da conta ou de iniciação de sessão, lembre-se de atualizar os valores armazenados.

Escolha um tipo de credencial

Existem três tipos de credenciais que pode usar numa ligação a uma base de dados de um servidor de relatórios:

  • O Windows integrou a segurança com a conta do serviço do Servidor de Relatórios: Como o servidor de relatórios é implementado como um único serviço, apenas a conta sob a qual o serviço corre necessita de acesso à base de dados.
  • Conta de utilizador Windows: Se o servidor de relatórios e a base de dados do servidor de relatórios estiverem instalados no mesmo computador, pode usar uma conta local. Caso contrário, usa uma conta de domínio.
  • Credenciais de início de sessão SQL Server: Use credenciais de login SQL Server para autenticar e ligar à base de dados do servidor de relatórios. Esta opção é útil quando o servidor de base de dados está num domínio diferente ou quando usa segurança de grupo de trabalho em vez de segurança de domínio.

Observação

Não podes usar uma extensão de autenticação personalizada para te ligares a uma base de dados de um servidor de relatórios. Extensões de autenticação personalizadas são usadas apenas para autenticar um principal num servidor de relatórios. Não afetam as ligações à base de dados do servidor de relatórios nem a fontes de dados externas que fornecem conteúdo aos relatórios.

Observação

Quando usa Azure SQL Managed Instance para alojar bases de dados de servidores de relatórios, a autenticação SQL Server é o único tipo de credencial suportado. Além disso, a Instância Gerida não pode alojar a instância do servidor de relatórios.

Use a segurança integrada do Windows com a conta de serviço do Servidor de Relatórios

Pode usar a segurança integrada do Windows para se ligar através da conta de serviço do Servidor de Relatórios. A conta é concedida direitos de acesso à base de dados do servidor de relatórios. Este tipo de credencial é o padrão escolhido pela Configuração se instalar os Serviços de Relatórios na configuração predefinida.

A conta de serviço é uma conta de confiança que oferece uma abordagem de baixa manutenção para gerir uma ligação à base de dados de um servidor de relatórios. Como a conta de serviço usa segurança integrada no Windows para fazer a ligação, as credenciais não precisam de ser armazenadas. No entanto, se depois alterar a palavra-passe ou identidade da conta de serviço, certifique-se de usar a ferramenta de Configuração dos Serviços de Relatórios para fazer a alteração. A ferramenta atualiza automaticamente as permissões da base de dados para usar a informação de conta atualizada. Para obter mais informações, consulte Configurar a conta de serviço do servidor de relatório (Gerenciador de Configuração do Servidor de Relatórios).

Se configurar a ligação à base de dados para usar a conta de serviço e a base de dados do servidor de relatórios estiver num computador remoto, a conta deve ter permissões de rede. Não uses a conta de serviço se a base de dados do servidor de relatórios estiver num domínio diferente, atrás de um firewall, ou se usares segurança de grupo de trabalho em vez de segurança de domínio. Use antes uma conta de utilizador de base de dados SQL Server.

Se configurar a instância do Motor de Base de Dados para Autenticação Windows, certifique-se de que a instância está no mesmo domínio ou num domínio confiável com o computador servidor de relatórios. Depois podes configurar a ligação para usar a conta de serviço. Em alternativa, pode usar uma conta de utilizador de domínio que gere como propriedade de ligação através da ferramenta de Configuração dos Serviços de Relatório. Se o servidor de base de dados estiver num domínio diferente, ou se usar segurança de grupo de trabalho, configure a ligação para usar credenciais de entrada de base de dados SQL Server. Neste caso, certifica-te de encriptar a ligação.

Use uma conta de utilizador do Windows

Pode especificar uma conta de utilizador Windows para a ligação do servidor de relatórios à base de dados do servidor de relatórios. Se usar uma conta local ou de domínio, atualize a ligação à base de dados do servidor de relatórios sempre que mudar a palavra-passe ou a conta. Use sempre a ferramenta de Configuração dos Serviços de Relatórios para atualizar a ligação.

Use credenciais de início de sessão do SQL Server

Pode especificar um conjunto de credenciais de login do SQL Server para se ligar à base de dados do servidor de relatórios. Se usar autenticação SQL Server e a base de dados do servidor de relatórios estiver num computador remoto, use o IPSec para ajudar a garantir a transmissão de dados entre os servidores. Se usar credenciais de login na base de dados, atualize a ligação ao servidor de relatórios sempre que mudar a palavra-passe ou a conta.

Permissões de banco de dados

As contas usadas para se ligar à base de dados do servidor de relatórios recebem as seguintes funções:

Base de dados Funções
ReportServer public
RSExecRole
master
msdb
ReportServerTempDB
RSExecRole

Quando utiliza a ferramenta de Configuração dos Serviços de Relatórios para criar ou modificar a ligação, estas permissões são concedidas automaticamente. Se usares a ferramenta rsconfig e especificares uma conta diferente para a ligação, atualiza as credenciais de login do SQL Server para essa nova conta. Pode criar ficheiros de script na ferramenta de Configuração dos Serviços de Relatórios que atualizam as credenciais de login do SQL Server para o servidor de relatórios.

Verificar o nome da base de dados

Use a ferramenta de Configuração de Serviços de Relatórios para determinar qual a base de dados do servidor de relatórios utilizada por uma determinada instância do servidor de relatórios. Para encontrar o nome, conecte-se à instância do servidor de relatórios e abra a página de Configuração da Base de Dados.

Use uma base de dados diferente de um servidor de relatórios ou mude uma base de dados de um servidor de relatórios

Pode configurar uma instância de servidor de relatórios para usar uma base de dados diferente de servidor de relatórios alterando a informação de ligação. Um caso comum para trocar de bases de dados é quando se implementa um servidor de relatórios de produção. A transição de uma base de dados de servidor de relatórios de teste para uma base de dados de servidor de relatórios de produção é tipicamente a forma como os servidores de produção são implementados. Também pode mover uma base de dados do servidor de relatórios para outro computador. Para mais informações, consulte Atualizar e migrar Serviços de Relatórios no SQL Server.

Configure múltiplos servidores de relatórios para usarem a mesma base de dados de servidores de relatórios

Pode configurar vários servidores de relatórios para usarem a mesma base de dados de servidores de relatórios. Esta configuração de implementação é chamada de implementação escalonável. Esta configuração é um pré-requisito se quiser executar múltiplos servidores de relatórios num cluster de servidores. No entanto, também pode usar esta configuração se quiser segmentar aplicações de serviço. Pode usá-lo para testar a instalação e as definições de uma nova instância de servidor de relatórios e compará-la com uma instalação existente de um servidor de relatórios. Para mais informações, consulte Configurar uma implementação escalonável de servidor de relatórios em modo nativo.