Partilhar via


Chaves de criptografia do SSRS – inicializar um servidor de relatório

No Reporting Services, um servidor inicializado é aquele que pode criptografar e descriptografar dados em um banco de dados de servidor de relatório. A inicialização é um requisito para a operação do servidor de relatório. A inicialização ocorre quando o serviço Servidor de Relatório é iniciado pela primeira vez. Também ocorre quando você associa o servidor de relatório à implantação existente ou quando recria manualmente as chaves como parte do processo de recuperação. Para obter mais informações sobre como e por que as chaves de criptografia são usadas, confira Configurar e gerenciar as chaves de criptografia (Gerenciador de Configurações do Servidor de Relatório) e Armazenar dados criptografados do servidor de relatório (Gerenciador de Configurações do Servidor de Relatório).

Em parte, as chaves de criptografia têm como base as informações de perfil do serviço Servidor de Relatório. Se você alterar a identidade de usuário usada para executar o serviço Servidor de Relatório, deverá atualizar as chaves adequadamente. Se você estiver usando a ferramenta Configuração do Reporting Services para alterar a identidade, essa etapa será tratada para você automaticamente.

Se a inicialização falhar por alguma razão, o servidor de relatório retornará um erro RSReportServerNotActivated em resposta a solicitações do usuário e do serviço. Nesse caso, poderá ser necessário solucionar o problema da configuração do sistema ou do servidor. Para obter mais informações, confira Solucionar problemas de relatório do Reporting Services.

Visão geral do processo de inicialização

O processo de inicialização cria e armazena uma chave simétrica usada para criptografia. A chave simétrica é criada pelos Serviços de Criptografia do Microsoft Windows e subsequentemente usada pelo serviço Servidor de Relatório para criptografar e descriptografar dados. A própria chave simétrica é criptografada com uma chave assimétrica.

As seguintes etapas descrevem o processo de inicialização:

  1. Na inicialização inicial, o serviço Servidor de Relatório lê o arquivo RSReportServer.config para obter o identificador da instalação e as informações de conexão com o banco de dados.

  2. O serviço Servidor de Relatório solicita uma chave pública aos Serviços de Criptografia. O Windows cria uma chave privada e uma pública e envia a chave pública ao serviço Servidor de Relatório.

  3. O serviço Servidor de Relatório conecta-se ao banco de dados do servidor de relatório e armazena os valores do identificador de instalação e da chave pública.

  4. O serviço Servidor de Relatório chama novamente os Serviços de Criptografia, desta vez para solicitar uma chave simétrica. O Windows cria a chave simétrica.

  5. O serviço Servidor de Relatório conecta-se novamente ao banco de dados do servidor de relatório e adiciona a chave simétrica aos valores do identificador de instalação e da chave pública que foram armazenados na etapa 3. Antes de armazená-la, o serviço Servidor de Relatório usa sua chave pública para criptografar a chave simétrica. Quando a chave simétrica for armazenada, o servidor de relatório será considerado inicializado e disponível para uso.

Inicializando um servidor de relatório para implantação de expansão

Reporting Services dá suporte a um modelo de implantação de expansão que compartilha um único banco de dados de servidor de relatório entre várias instâncias do servidor de relatório. Para associar-se a uma implantação de expansão, um servidor de relatório deve criar e armazenar sua cópia da chave simétrica no banco de dados compartilhado. Embora uma única chave simétrica seja usada pelos servidores que usam o banco de dados, cada servidor de relatório tem sua cópia da chave. Cada cópia varia no fato de que ela é criptografada exclusivamente usando a chave pública que possui.

O primeiro conjunto de etapas para a inicialização de um servidor de relatório para implantação de expansão é idêntico às três primeiras etapas que descrevem a inicialização para uma combinação de servidor único e banco de dados.

O processo de inicialização para uma implantação de expansão difere em como o servidor de relatório obtém a chave simétrica. Quando o primeiro servidor é inicializado, obtém a chave simétrica do Windows. Quando o segundo servidor é inicializado durante a configuração para implantação de expansão, ele obtém a chave simétrica do serviço Servidor de Relatório que já está inicializado. A primeira instância do servidor de relatório usa a chave pública da segunda instância para criar uma cópia criptografada da chave simétrica para a segunda instância do servidor de relatório. A chave simétrica nunca é exposta como texto sem-formatação em qualquer ponto nesse processo.

Como inicializar um servidor de relatório

Observação

RSKeymgmt é um aplicativo de console executado em uma linha de comando em um computador que hospeda uma instância do servidor de relatório que já faz parte de uma implantação escalável. Ao executar o utilitário, você especifica argumentos para selecionar uma instância do servidor de relatório que deseja inicializar.

Um servidor de relatório será inicializado apenas se houver uma correspondência entre o identificador da instalação e a chave pública. Se a correspondência obtiver êxito, será criada uma chave simétrica que permite criptografia reversível. Se a correspondência falhar, o servidor de relatório será desabilitado, caso no qual poderá ser necessário aplicar uma chave de backup ou excluir os dados criptografados se uma chave de backup não estiver disponível ou não for válida. Para obter mais informações sobre as chaves de criptografia usadas por um servidor de relatório, confira Configurar e gerenciar as chaves de criptografia (Gerenciador de Configurações do Servidor de Relatório).

Observação

Você também pode usar o provedor WMI (Instrumentação de Gerenciamento do Windows) do Reporting Services para inicializar um servidor de relatório de forma programática. Para obter mais informações, consulte Acessar o provedor WMI do Reporting Services.

Como confirmar a inicialização de um servidor de relatório

Para confirmar a inicialização do servidor de relatório, execute ping no serviço Web Servidor de Relatórios digitando https://<nomedoservidor>/reportserver na janela de comando. Se ocorrer o erro RSReportServerNotActivated , a inicialização falhou.