Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Um servidor de relatórios utiliza credenciais para se ligar a fontes de dados externas que fornecem conteúdo aos relatórios ou informação do destinatário a uma subscrição orientada por dados. Pode especificar credenciais que usem Autenticação Windows, autenticação de base de dados, sem autenticação ou autenticação personalizada. Quando o servidor de relatórios envia um pedido de ligação pela rede, ou se faz passar por uma conta de utilizador ou pela conta de execução não assistida. Para mais informações sobre o contexto de segurança sob o qual um pedido de ligação é feito, consulte Configuração da fonte de dados e ligações de rede neste artigo.
Note
As credenciais também são usadas para autenticar utilizadores que acedem a um servidor de relatórios. Para mais informações sobre como autenticar utilizadores num servidor de relatórios, consulte Autenticação num servidor de relatórios.
A ligação a uma fonte de dados externa é definida quando cria o relatório. Pode geri-lo separadamente após a publicação do relatório. Pode especificar uma cadeia de ligação estática ou uma expressão que permita aos utilizadores selecionar uma fonte de dados a partir de uma lista dinâmica. Para mais informações sobre como especificar um tipo de fonte de dados e uma cadeia de ligação, consulte Criar cadeias de ligação de dados no Report Builder.
Credenciais usadas no Report Builder
No Report Builder, as credenciais são frequentemente usadas quando se liga a um servidor de relatórios. Também os utiliza para tarefas relacionadas com dados, como criar uma fonte de dados incorporada, executar uma consulta de conjunto de dados ou pré-visualizar um relatório. As credenciais não estão armazenadas no relatório. São geridos separadamente no servidor de relatórios ou no cliente local. A lista seguinte descreve os tipos de credenciais que poderá precisar de fornecer, onde são armazenadas e como são usadas:
Reporte as credenciais do servidor que introduzir na caixa de diálogo de início de sessão do Reporting Services.
Quando guardar, publicar ou navegar num servidor de relatórios ou site SharePoint, pode ser necessário inserir as suas credenciais. As credenciais que introduzir são usadas até ao fim da sessão do Report Builder. Se optar por guardar as credenciais, elas são guardadas de forma segura nas definições de utilizador do seu computador. Em sessões subsequentes do Report Builder, as credenciais guardadas são usadas para se ligar ao mesmo servidor de relatórios ou site SharePoint. O administrador do servidor de relatórios ou Administrador do SharePoint especifica que tipo de credenciais utilizar.
Credenciais de fonte de dados que introduz na caixa de diálogo Propriedades da Fonte de Dados para uma fonte de dados embutida.
Estas credenciais são usadas pelo servidor de relatórios para estabelecer uma ligação de dados à fonte de dados externa. Para alguns tipos de fontes de dados, as credenciais podem ser armazenadas de forma segura no servidor de relatórios. Estas credenciais permitem que outros utilizadores executem o relatório sem fornecer credenciais para a ligação de dados subjacente.
Credenciais de fonte de dados que introduz na caixa de diálogo Introduzir Credenciais de Fonte de Dados quando executa uma consulta ao conjunto de dados, atualiza os campos do conjunto de dados ou pré-visualiza o relatório.
Estas credenciais são usadas para fazer uma ligação de dados do Report Builder à fonte de dados externa ou para pré-visualizar um relatório configurado para pedir credenciais. As credenciais que introduz nesta caixa de diálogo não estão armazenadas no servidor de relatórios e não estão disponíveis para uso por outros utilizadores. O Report Builder armazena as credenciais em cache durante a sessão de edição do relatório para que não precise de as introduzir sempre que executa a consulta ou faz uma visualização do relatório.
Para fontes de dados partilhadas, use a opção Guardar a minha palavra-passe para guardar as credenciais localmente com as definições de utilizador no seu computador. O Report Builder utiliza as credenciais guardadas sempre que uma ligação é feita à fonte de dados externa correspondente.
Para mais informações, consulte Relatórios de pré-visualização em Report Builder.
Fontes de dados remotas
Se o relatório recuperar dados de um servidor de base de dados remoto, deve verificar:
As credenciais fornecidas ao servidor de base de dados são válidas. Se usar credenciais de utilizador do Windows, certifique-se de que o utilizador tem permissão para o servidor e a base de dados.
As portas usadas pelo servidor de base de dados estão abertas. Se estiver a aceder a bases de dados relacionais do SQL Server em computadores externos, deve abrir as portas 1433 e 1434 no computador externo. Também deve abrir estas portas se a base de dados do servidor de relatórios estiver numa instância externa do SQL Server. Certifica-te de reiniciar o servidor depois de abrires as portas. Para mais informações, consulte Configurar um firewall Windows para acesso ao Database Engine.
As ligações remotas devem estar ativadas. Se estiver a aceder a bases de dados relacionais do SQL Server em computadores externos, pode usar a ferramenta Gestor de Configuração do SQL Server para verificar se as ligações remotas através do Transmission Control Protocol (TCP) estão ativadas.
Especifique credenciais para ligação a fontes de dados remotas
As fontes de dados que fornecem conteúdo aos relatórios estão alojadas em servidores remotos. Para recuperar dados para um relatório, um servidor de relatórios deve ligar-se ao servidor com um conjunto de credenciais fornecidas previamente ou obtidas em tempo de execução. Ao configurar uma fonte de dados, pode especificar credenciais das seguintes formas:
- Solicite ao utilizador as credenciais.
- Guardar credenciais.
- Use a segurança integrada do Windows.
- Não utilize credenciais.
O ambiente de rede determina os tipos de ligações que pode suportar. Por exemplo, se o protocolo Kerberos versão 5 estiver ativado, poderá conseguir usar as funcionalidades de delegação e personificação disponíveis no Windows Authentication para suportar ligações entre vários servidores. Se a sua rede não suporta estas funcionalidades de segurança, precisa de contornar as limitações de ligação. Se a delegação e a personificação não estiverem ativadas, as credenciais do Windows podem ser passadas por uma ligação de computador antes de expirarem. Uma ligação de utilizador de um computador cliente para um computador servidor de relatórios conta como a primeira ligação. Se o utilizador abrir um relatório que recupera dados de um servidor remoto, esse início de sessão conta como uma segunda ligação. A conexão falha então se tiver especificado que utilizasse segurança integrada com delegação desativada.
Se forem necessárias múltiplas ligações para completar uma ida e volta do computador cliente para uma fonte de dados externa de relatório, escolha entre as seguintes estratégias para que as ligações tenham sucesso.
Ative funcionalidades de personificação e delegação no seu domínio para que as credenciais possam ser delegadas a outros computadores sem limites.
Use credenciais armazenadas ou credenciais solicitadas para consultar fontes de dados externas para obter dados de relatórios. As credenciais podem ser uma conta de domínio Windows ou um login de base de dados.
Credenciais pedidas
Quando configura uma ligação à fonte de dados de um relatório para usar credenciais solicitadas, cada utilizador que acede ao relatório deve introduzir um nome de utilizador e uma palavra-passe para recuperar os dados. Esta abordagem é recomendada para relatórios que contenham dados confidenciais. As credenciais solicitadas só podem ser usadas em relatórios que correm sob demanda. As credenciais solicitadas podem ser uma conta Windows ou um início de sessão numa base de dados. Para usar a Autenticação Windows, deve selecionar Usar como credenciais do Windows. Caso contrário, o servidor de relatórios transmite credenciais ao servidor de base de dados para autenticação do utilizador. Se o servidor da base de dados não conseguir autenticar as credenciais que fornece, a ligação falha.
Segurança Integrada do Windows
Quando utiliza a opção Windows Integrated Security, o servidor de relatórios passa o token de segurança do utilizador que acede ao relatório para o servidor que aloja a fonte de dados externa. Neste caso, o utilizador não é solicitado a introduzir um nome de utilizador ou palavra-passe. Esta abordagem é recomendada se as funcionalidades de imitação e delegação estiverem ativadas. Se estas funcionalidades não estiverem ativadas, só deve usar esta abordagem se todos os servidores a que pretende aceder estiverem localizados no mesmo computador.
Credenciais armazenadas
Pode armazenar as credenciais usadas para aceder a uma fonte de dados externa. As credenciais são armazenadas em encriptação reversível na base de dados do servidor de relatórios. Pode especificar um conjunto de credenciais armazenadas para cada fonte de dados usada num relatório. As credenciais que forneces recuperam os mesmos dados de cada utilizador que executa o relatório.
Note
Quando usa credenciais armazenadas, todos os utilizadores que executam o relatório recuperam dados sob a mesma identidade, pelo que o relatório não pode impor acesso a dados por utilizador. Para restringir os dados que cada utilizador pode ver, utilize a segurança integrada do Windows e configure a segurança na fonte de dados. Um relatório não é um limite de segurança – veja Relatórios e recursos seguros.
As credenciais armazenadas são recomendadas como parte de uma estratégia para aceder a servidores de bases de dados remotos. Credenciais armazenadas são necessárias se quiser suportar subscrições, ou agendar geração de histórico de relatórios ou atualizações de snapshots de relatórios. Quando um relatório é executado como processo em segundo plano, o servidor de relatórios é o agente que executa o relatório. Como não existe contexto de utilizador definido, o servidor de relatórios tem de obter informações de credenciais da base de dados do servidor de relatórios para se ligar a uma fonte de dados.
O nome de utilizador e a palavra-passe que especificar podem ser credenciais do Windows ou um login de base de dados. Se especificar credenciais do Windows, o servidor de relatórios passa as credenciais para o Windows para autenticação subsequente. Caso contrário, as credenciais são passadas ao servidor de base de dados para autenticação.
Conceder permissões de "Permitir iniciar sessão localmente" a contas de utilizadores de domínio
Se usar credenciais armazenadas para se ligar a uma fonte de dados externa, a conta de utilizador do domínio Windows deve ter permissão para iniciar sessão localmente. Esta permissão permite que o servidor de relatórios se faça passar pelo utilizador no servidor de relatórios e envie o pedido para a fonte de dados externa como esse utilizador suplantado.
Para conceder esta permissão no servidor de relatórios, vá a Ferramentas Administrativas e adicione a conta do Windows que pretende utilizar para o início de sessão interativo em Política de Segurança Local>Definições de Segurança>Políticas Locais>Atribuição de Direitos de Utilizador. Certifica-te de que a conta que selecionaste não tem permissões de recusa.
Para mais informações, consulte Configurar definições de políticas de segurança e Permitir iniciar sessão localmente - definição de política de segurança.
Personificação com credenciais armazenadas
Também pode usar credenciais para se fazer passar pela identidade de outro utilizador. Para bases de dados SQL Server, as opções de personificação definem a SETUSER função.
Importante
Não use personificação para relatórios que suportem subscrições ou que usem agendas para gerar histórico de relatórios ou atualizar um instantâneo de execução de relatório.
Sem credenciais
Podes configurar uma ligação de fonte de dados para não usar credenciais. Deves sempre usar credenciais para aceder a uma fonte de dados. No entanto, pode optar por gerar um relatório sem credenciais nos seguintes casos:
- A fonte de dados remota não requer credenciais.
- As credenciais são passadas na cadeia de ligação (recomendada apenas para ligações seguras).
- O relatório é um subrelatório que utiliza as credenciais do relatório parental.
Nestas condições, o servidor de relatórios liga-se a uma fonte de dados remota usando a conta de execução não assistida que deve definir antecipadamente. Como o servidor de relatórios não se liga a um servidor remoto usando as suas credenciais de serviço, deve especificar uma conta que o servidor de relatórios possa usar para fazer a ligação. Para mais informações sobre a criação desta conta, consulte Configurar a conta de execução não assistida (Gestor de Configuração do Servidor de Relatórios).
Login por nome de utilizador e palavra-passe
Quando seleciona Usar este nome de utilizador e palavra-passe, deve ser fornecido um nome de utilizador e uma palavra-passe para aceder à fonte de dados. Para uma base de dados SQL Server, as credenciais podem ser para iniciar sessão numa base de dados. As credenciais são encaminhadas para a fonte de dados para autenticação.
Configuração da fonte de dados e ligações de rede
A tabela seguinte mostra como são feitas ligações para combinações específicas de tipos de credenciais e extensões de processamento de dados. Se usar uma extensão personalizada de processamento de dados, veja Especificar ligações para extensões personalizadas de processamento de dados.
| Type | Contexto para a ligação à rede |
Tipos de Fonte de Dados (SQL Server, Oracle, ODBC, OLE DB, Analysis Services, XML, SAP NetWeaver BI, Hyperion Essbase) |
|---|---|---|
| Segurança integrada | Fazer-se passar pelo utilizador atual. | Para todos os tipos de fontes de dados, ligue-se usando a conta de utilizador atual. |
| Credenciais do Windows | Fazer-se passar pelo utilizador especificado. | Para SQL Server, Oracle, Open Database Connectivity (ODBC) e Object Linking and Embedding, Database (OLE DB): conecte-se usando a conta de utilizador imitada. |
| Credenciais do banco de dados | Suplantar a conta de execução não assistida ou a conta de serviço. (O Reporting Services remove permissões de administrador ao enviar o pedido de ligação usando a identidade do serviço). |
Para SQL Server, Oracle, ODBC e OLE DB: Adicione o nome de utilizador e a palavra-passe à cadeia de ligação. Para Serviços de Análise: A ligação tem sucesso se usares o protocolo TCP/IP, caso contrário falha. Para XML: Falhe a ligação no servidor de relatórios se forem usadas credenciais da base de dados. |
| None | Fazer-se passar pela conta da execução desatendida. | Para SQL Server, Oracle, ODBC e OLE DB: Utilize as credenciais definidas na cadeia de ligação. A ligação falha no servidor de relatórios se a conta de execução não assistida estiver indefinida. Para Serviços de Análise: Falhe sempre a ligação se não forem especificadas credenciais, mesmo que a conta de execução não assistida esteja definida. Para XML: Ligue-se como Utilizador Anónimo se a conta de execução não assistida estiver definida; caso contrário, falha a ligação. |
Definir credenciais programaticamente
Podes definir credenciais no teu código para controlar o acesso a relatórios e ao servidor de relatórios. Para mais informações, consulte Fontes de dados e métodos de ligação.