Configurar conexões TLS em um servidor de relatório no modo nativo

Aplica-se a: SQL Server 2016 (13.x) Reporting Services e posterior Power BI Report Server

O modo nativo do Reporting Services usa o serviço de HTTP do protocolo SSL para estabelecer conexões criptografadas com um servidor de relatório. O protocolo TLS era anteriormente conhecido como protocolo SSL. Se tiver um arquivo de certificado (.cer) instalado em um repositório de certificados local no computador do servidor de relatórios, você poderá associar o certificado a uma reserva de URL do Reporting Services para dar suporte a conexões do servidor de relatórios por meio de um canal criptografado.

Dica

Para obter mais informações sobre o modo do SharePoint do Reporting Services, confira a documentação do SharePoint. Por exemplo, Como habilitar o TLS em um aplicativo Web do SharePoint 2010.

Como o IIS (Serviços de Informações da Internet) também usa HTTP SSL, existem problemas de interoperabilidade consideráveis que você deve considerar se for executar o IIS e o Reporting Services no mesmo computador. Leia a seção Problemas de interoperabilidade com IIS para obter orientação sobre como lidar com esses problemas.

Requisitos de certificado do servidor

É necessário haver um certificado do servidor instalado no computador (certificados do cliente não são compatíveis). O Reporting Services não fornece funcionalidade de solicitação, geração, download ou instalação de um certificado. O Windows Server 2012 e posterior fornece um snap-in de Certificados que pode ser usado para solicitar um certificado de uma autoridade de certificação confiável.

Para fins de teste, você pode gerar um certificado localmente. Se você usar o utilitário MakeCert e o comando de exemplo como modelo, especifique o nome do seu servidor como o host e remova todas as quebras de linha antes de executar o comando. Caso execute o comando em uma janela do DOS, poderá ser necessário aumentar o tamanho do buffer da janela para acomodar o comando inteiro.

Se estiver executando o IIS e o Reporting Services juntos no mesmo computador, poderá usar o aplicativo de console do Gerenciador do IIS para obter o certificado instalado em seu computador. O Gerenciador do IIS inclui opções para criar e empacotar um arquivo de solicitação de certificado (.crt) para processamento posterior por uma autoridade de certificação confiável. A autoridade de certificação usada por você gera um arquivo de certificado (.cer) e o envia de volta para você. Você pode usar o Console de Gerenciamento do IIS para instalar o arquivo de certificado no repositório local. Para obter mais informações, confira Usar SSL para criptografar dados confidenciais no Technet.

Problemas de interoperabilidade com o IIS

A presença do IIS no mesmo computador que o Reporting Services afeta significativamente as conexões TLS com um servidor de relatório:

  • Se o IIS estiver instalado, o serviço World Wide Web (W3SVC) sempre deverá estar em execução. O serviço HTTP SSL cria uma dependência do IIS caso detecte que ele está em execução. Essa dependência significa que o serviço W3SVC (World Wide Web) deverá estar em execução sempre que o IIS e o Reporting Services estiverem instalados no mesmo computador e que você estiver configurando URLs de servidor de relatório para conexões TLS.

  • A desinstalação do IIS pode interromper o serviço temporariamente em uma URL de servidor de relatório associada por TLS. Por esse motivo, reinicie o computador após a desinstalação do IIS.

    A reinicialização do computador é necessária para apagar todas as sessões TLS do cache. Alguns sistemas operacionais armazenam as sessões TLS em cache por até 10 horas, fazendo com que uma URL https:// continue a funcionar mesmo depois que a associação TLS seja removida da reserva de URL em HTTP.SYS. A reinicialização do computador fecha todas as conexões abertas que usam o canal.

Associar o TLS a uma reserva de URL dos serviços de relatório

As etapas a seguir não incluem instruções sobre como solicitar, gerar, baixar ou instalar um certificado. Você deve ter um certificado instalado e disponível para uso. As propriedades do certificado especificadas, a autoridade de certificação da qual ele é obtido e as ferramentas e os utilitários que você usa para instalar o certificado são os de sua preferência.

Você pode usar a ferramenta Configuração do Reporting Services para associar o certificado. Se o certificado estiver instalado corretamente no repositório do computador local, a ferramenta de Configuração do Reporting Services detecta e exibe na lista Certificados SSL das páginas URL do Serviço Web e URL do Portal da Web.

Configurar a URL de um servidor de relatório para TLS

  1. Inicie a ferramenta Configuração do Reporting Services e conecte-se ao servidor de relatório.

  2. Selecione URL do Serviço Web.

  3. Expanda a lista de certificados TLS/SSL. O Reporting Services detecta certificados de autenticação de servidor no repositório local. Se você instalou um certificado mas ele não aparece na lista, talvez seja necessário reiniciar o serviço. Para reiniciar o serviço, use os botões Parar e Iniciar da página Status do Servidor de Relatório na ferramenta Configuração do Reporting Services (página superior).

  4. Selecione o certificado.

  5. Escolha Aplicar.

  6. Selecione a URL para verificar se está funcionando.

A configuração de banco de dados do servidor de relatório é um requisito para testar a URL. Se você ainda não estiver criando o banco de dados do servidor de relatório, faça-o antes de testar a URL.

As reservas de URL da URL do Portal da Web e da URL dos Serviços Web do Servidor de Relatórios são configuradas de maneira independente. Se você também quiser configurar o acesso ao portal da Web por meio de um canal criptografado por TLS, continue com as próximas etapas:

  1. Acesse a URL do portal da Web.

  2. Selecione Avançado.

  3. Em Múltiplas Identidades HTTPS para o recurso Reporting Services atual, selecione Adicionar.

  4. Escolha o certificado, selecione OK e depois Aplicar.

  5. Teste a URL para verificar se está funcionando.

Como as associações de certificado são armazenadas

As associações de certificado são armazenadas em HTTP.SYS. Uma representação das associações definidas são armazenadas na seção URLReservations do arquivo RSReportServer.config. As configurações no arquivo de configuração são apenas uma representação dos valores reais especificados em outros lugares. Não modifique os valores diretamente no arquivo de configuração. Os parâmetros de configuração só serão exibidos no arquivo depois que você usar a ferramenta Configuração do Reporting Services ou o provedor WMI (Instrumentação de Gerenciamento do Windows) do Servidor de Relatório para associar um certificado.

Observação

Se você configurar uma associação com um certificado TLS/SSL no Reporting Services e depois quiser remover o certificado do computador, não se esqueça de remover a associação do Reporting Services antes de remover o certificado do computador. Caso contrário, você não poderá remover a associação usando a ferramenta Configuração do Reporting Services ou o WMI, e receberá um erro de "Parâmetro inválido". Caso você já tenha removido o certificado do computador, use a ferramenta Httpcfg.exe para remover a associação de HTTP.SYS. Para obter mais informações sobre Httpcfg.exe, consulte a documentação de produto do Windows.

As associações TLS são um recurso compartilhado no Microsoft Windows. As alterações feitas pelo Gerenciador de Configurações do Reporting Services ou outras ferramentas como o Gerenciador do IIS podem afetar outros aplicativos no mesmo computador. A melhor prática é usar a mesma ferramenta para editar associações que você usou para criar as associações. Por exemplo, se você criou associações TLS usando o Configuration Manager, é necessário usar o Configuration Manager para gerenciar o ciclo de vida das associações. Se você usar o Gerenciador do IIS para criar associações, é necessário usar o Gerenciador do IIS para gerenciar o ciclo de vida das associações. Se o IIS estiver instalado no computador antes da instalação do Reporting Services, é recomendável revisar a configuração do TLS no IIS antes de configurar o Reporting Services.

Se você remover as associações TLS do Reporting Services usando o Configuration Manager do Servidor de Relatório, o TLS poderá deixar de funcionar nos sites em um servidor que esteja executando o IIS (Serviços de Informações da Internet) ou em outro servidor HTTP.SYS. O Gerenciador de Configurações do Reporting Services remove a seguinte chave do Registro: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP\Parameters\SslBindingInfo\0.0.0.0:443. Quando essa chave do Registro é removida, o mesmo ocorre com a associação TLS para o IIS. Sem essa associação, o TLS não é fornecido para o protocolo HTTPS. Para diagnosticar esse problema, use o Gerenciador do IIS ou o utilitário de linha de comando HTTPCFG.exe. Para resolver o problema, restaure a associação TLS de seus sites usando o Gerenciador do IIS. Para evitar esse problema no futuro, use o Gerenciador do IIS para remover as associações TLS e, em seguida, use o Gerenciador do IIS para restaurar a associação dos sites desejados. Para saber mais, veja o artigo da base de dados de conhecimento O SSL não funciona mais depois de remover uma associação SSL (https://support.microsoft.com/kb/956209/n).

Autenticação com o servidor de relatório
Configurar e administrar um servidor de relatório (modo nativo do SSRS)
Arquivo de configuração RsReportServer.config
Configurar URLs do servidor de relatório (Gerenciador de Configurações do Servidor de Relatório)