Partilhar via


Configurar ligações TLS num servidor de relatórios em modo nativo

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

No modo nativo SQL Server Reporting Services (SSRS), pode usar o protocolo Transport Layer Security (TLS) para estabelecer ligações encriptadas a um servidor de relatórios. O TLS era anteriormente conhecido como Camada de Soquetes Seguros (SSL). Se tiver um ficheiro de certificado (.cer) instalado numa loja local de certificados no servidor de relatórios, pode vincular o certificado a uma reserva de URL SSRS para suportar ligações ao servidor de relatórios através de um canal encriptado.

Sugestão

Para mais informações sobre o modo SharePoint SSRS, consulte o Servidor de Relatórios de Serviços de Relatórios (modo SharePoint).

Como os Serviços de Informação da Internet (IIS) também usam TLS, existem questões significativas de interoperabilidade que deve ter em conta se executar IIS e SSRS no mesmo computador. Para orientação sobre como abordar estas questões, consulte a secção Questões de Interoperabilidade com o IIS , mais adiante neste artigo.

Pré-requisitos

  • Um servidor de relatórios em modo nativo configurado
  • Um certificado de servidor instalado no seu computador

Instalar um certificado de servidor

Deve instalar um certificado de servidor no seu servidor de relatórios na loja local. Certificados de cliente não são suportados.

O SSRS não fornece funcionalidades para solicitar, gerar, descarregar ou instalar um certificado. Cabe-lhe a si escolher as propriedades que especifica para o certificado e a autoridade certificadora de onde o obtém. Também decides as ferramentas e utilitários que usas para pedir e instalar o certificado.

Existem algumas possibilidades para obter um certificado:

  • O Windows Server disponibiliza um snap-in de Certificados que pode usar para solicitar um certificado a uma autoridade certificadora de confiança.

  • Se quiser gerar um certificado localmente para fins de teste, pode executar o seguinte script PowerShell.

    • Executa o script como administrador.
    • Substitua os marcadores por valores adequados ao seu ambiente.
    # Create a self-signed certificate in the local store.
    $newCertificate = New-SelfSignedCertificate -CertStoreLocation cert:\LocalMachine\My -DnsName <server-name> -FriendlyName "<friendly-name>"
    
    # Convert the report server password to a secure string.
    $secureStringPassword = ConvertTo-SecureString "<server-password>" -AsPlainText -Force
    
    # Set up a temporary folder if one doesn't exist.
    $folderPath = "C:\Temp"
    if (-not (Test-Path -Path $folderPath)) {
        New-Item -Path $folderPath -ItemType Directory
    }
    
    # Set up a variable for the path of a certificate file.
    $certificateFilePath = $folderPath, "\certificate-export.pfx" -join ""
    
    # Set up a variable for the path of the certificate's store location.
    $certificateStoreLocation = "cert:\LocalMachine\My\", $newCertificate.Thumbprint -join ""
    
    # Export the certificate to the file.
    Export-PFXCertificate -Cert $certificateStoreLocation -File $certificateFilePath -Password $secureStringPassword
    
    # Import the certificate from the file to the trusted root to avoid problems with the certificate not being trusted. 
    Import-PfxCertificate -FilePath $certificateFilePath cert:\LocalMachine\Root -Password $secureStringPassword
    

    O certificado está agora disponível para utilização no Gestor de Configuração do Servidor de Relatórios.

  • Se executares o IIS e o SSRS juntos no mesmo computador, podes usar a aplicação de consola do IIS Manager para pedir e instalar um certificado:

    1. No IIS Manager, crie e empacote um ficheiro de pedido de certificado (.crt) para processamento subsequente por uma autoridade certificadora de confiança. Para mais informações, consulte Solicitar um Certificado de Servidor.
    2. Depois de a autoridade certificadora lhe enviar o ficheiro de certificado (.cer), use o IIS Management para instalar o ficheiro de certificado na loja local. Para mais informações, consulte Instalar um Certificado de Servidor.

Questões de interoperabilidade com o IIS

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

  • Uma dependência é criada no IIS quando configuras URLs de servidores de relatórios para ligações TLS. O IIS, por sua vez, depende do World Wide Web Publishing Service. Como resultado, o World Wide Web Publishing Service deve estar a funcionar quando configura URLs de servidores de relatórios para ligações TLS.
  • Desinstalar o IIS pode interromper temporariamente o serviço de um URL de servidor de relatórios vinculado ao TLS. Depois de desinstalares o IIS, deves reiniciar o computador para limpar todas as sessões TLS da cache. Alguns sistemas operativos armazenam em cache sessões TLS até 10 horas. Como resultado, um URL ligado ao TLS pode continuar a funcionar depois de a ligação TLS ser removida da reserva de URL no repositório HTTP.sys. Reiniciar o computador fecha todas as ligações abertas que usam o canal.

Vincular TLS a uma reserva de URL SSRS

As reservas para o URL do serviço web do servidor de relatórios e para o portal web são configuradas de forma independente.

Configurar o acesso a serviços web através de um canal encriptado TLS

Para configurar uma URL que possa usar para aceder ao servidor de relatórios, siga os seguintes passos:

  1. Abre o Gestor de Configuração do Servidor de Relatórios e liga-te ao servidor de relatórios.

  2. Na página de Estado do Servidor de Relatório , selecione Parar.

    Captura de ecrã da página de Estado do Servidor de Relatórios na ferramenta de configuração. O botão Parar está destacado.

    Uma mensagem na janela de Resultados indica que o servidor está parado.

  3. Selecione Iniciar. Uma mensagem na janela de Resultados indica que o servidor está a funcionar.

  4. No painel Conectar , selecione URL do Web Service.

    Captura de ecrã da ferramenta de configuração. À esquerda, o URL do Web Service está destacado.

  5. Na lista de Certificados HTTPS , selecione o certificado que instalou.

    Captura de ecrã da ferramenta de configuração. Na lista de Certificados HTTPS, é destacado um certificado denominado Certificado de Teste.

  6. Selecione Aplicar. Mensagens na janela de Resultados indicam o progresso da ferramenta de configuração.

    Captura de ecrã da janela de Resultados na ferramenta de configuração. As mensagens indicam uma vinculação de certificado bem-sucedida.

  7. Em URLs do Serviço Web do Servidor de Relatórios, selecione a URL que reservou. Se for solicitado, introduza credenciais para o seu servidor de relatórios. Abre-se uma janela do navegador para dar acesso ao servidor de relatórios.

    Captura de ecrã de uma janela do navegador que mostra a página principal da pasta ReportServer do servidor de relatórios.

    Se o URL não se ligar ao servidor de relatórios, verifique a base de dados do servidor de relatórios. Para o URL funcionar, primeiro precisas de criar e configurar a base de dados.

Configurar o acesso a portais web através de um canal encriptado TLS

Se também quiser configurar o acesso ao portal web através de um canal encriptado TLS, siga os seguintes passos:

  1. No Gestor de Configuração do Servidor de Relatórios, no painel Conectar , selecione URL do Portal Web.

  2. Selecione Avançado.

  3. Em Múltiplas Identidades HTTPS para a funcionalidade atual de Serviços de Relatório, selecione Adicionar.

    Captura de ecrã da página de Configuração Avançada de Múltiplos Sites, com o botão Adicionar destacado para múltiplas identidades HTTPS.

  4. Na lista de Certificados, selecione o certificado que instalou e depois selecione OK.

    Captura de ecrã da janela Adicionar uma Ligação HTTPS do Servidor de Relatórios. O botão OK e um certificado da lista de certificados estão destacados.

    Mensagens na janela de Resultados indicam o progresso da ferramenta de configuração.

    Captura de ecrã da janela de Resultados na ferramenta de configuração. As mensagens indicam uma vinculação de certificado bem-sucedida para o portal web.

  5. Em Identificação do Site do Portal Web, selecione o URL que reservou. Se for solicitado, introduza credenciais para o seu servidor de relatórios. Uma janela do navegador abre-se e mostra a página inicial do SSRS.

    Captura de ecrã de uma janela do navegador que mostra a pasta principal do SSRS.

Como as ligações de certificados são armazenadas

As ligações de certificados são armazenadas no repositório HTTP.sys. Uma representação das ligações que define está armazenada na secção URLReservations do ficheiro RSReportServer.config.

As definições no ficheiro de configuração são apenas uma representação dos valores reais especificados noutros locais. Não modifiquem diretamente os valores no ficheiro de configuração.

As definições de configuração aparecem no ficheiro apenas depois de usar o Gestor de Configuração do Servidor de Relatórios ou o fornecedor de Instrumentação de Gestão do Windows (WMI) do Servidor de Relatórios para associar um certificado.

Observação

Se configurar uma ligação com um certificado TLS no SSRS e mais tarde quiser remover o certificado do computador, remova a ligação do SSRS antes de remover o certificado do computador. Caso contrário, não é possível remover a ligação usando o Gestor de Configuração do Servidor de Relatórios ou o WMI, e recebe uma mensagem de "Parâmetro inválido".

Depois de remover o certificado do computador, pode usar a ferramenta HttpCfg.exe para remover a ligação do repositório HTTP.sys. Para mais informações, consulte HttpCfg.exe.

As ligações TLS são um recurso partilhado no Windows. Quando usas o Report Server Configuration Manager ou outras ferramentas como o IIS Manager para alterar os bindings, essas alterações podem afetar outras aplicações no mesmo computador.

A melhor prática é usar a mesma ferramenta para criar e editar as encadernações. Por exemplo, se criar ligações TLS usando o Gestor de Configuração do Servidor de Relatórios, use também o Gestor de Configuração do Servidor de Relatórios para gerir o ciclo de vida das associações. Se usar o gestor IIS para criar bindings, use o gestor IIS para gerir o ciclo de vida das bindings.

Se instalar o IIS no seu computador antes de instalar o SSRS, é uma boa prática rever a configuração do TLS no IIS antes de configurar o SSRS.