Claims to Windows Token Service (C2WTS) e Reporting Services

Aplica-se a: SQL Server 2016 (13.x) Reporting Services e posterior SharePoint Servidor de Relatórios do Power BI

O C2WTS (Declarações para Serviço de Token do Windows) do SharePoint é obrigatório se você deseja exibir relatórios no modo nativo na web part do Visualizador de Relatórios do SQL Server Reporting Services.

O C2WTS também é obrigatório com o modo do SharePoint do SQL Server Reporting Services se você deseja usar a autenticação do Windows para fontes de dados que estão fora do farm do SharePoint. O C2WTS é necessário até mesmo quando as fontes de dados estão no mesmo computador que o serviço compartilhado. Entretanto, neste cenário, a delegação restrita não é necessária.

Observação

A integração do Reporting Services ao SharePoint não está mais disponível após o SQL Server 2016.

Configuração de Web part do Visualizador de Relatórios (Modo Nativo)

A web part do Visualizador de Relatórios é uma web part personalizada que pode ser usada para exibir relatórios do SQL Server Reporting Services (modo nativo) no site do SharePoint. Você pode usar a web part para exibir, navegar, imprimir e exportar relatórios em um servidor de relatório. A web part do Visualizador de Relatórios está associada a arquivos de definição de relatório (.rdl) processados por um servidor de relatório do SQL Server Reporting Services ou um Servidor de Relatórios do Power BI. Essa web part do Visualizador de Relatórios não pode ser usada com relatórios do Power BI hospedados no Servidor de Relatórios do Power BI.

O SharePoint Server 2013, SharePoint Server 2016 e SharePoint Server 2019 usam a autenticação de declarações. Como resultado, o C2WTS precisa ser configurado corretamente e o Reporting Services precisa ser configurado para autenticação Kerberos para que os relatórios sejam renderizados corretamente.

  1. Configure sua instância do Reporting Services (Modo Nativo) para autenticação Kerberos determinando a conta de serviço do SSRS, definindo um SPN e atualizando o arquivo rsreportserver.config para usar o tipo de autenticação RSWindowsNegotiate. Registrar um SPN (Nome da Entidade de Serviço) para um servidor de relatório

  2. Siga as etapas em Etapas necessárias para configurar o c2WTS

Integração de modo do SharePoint

Esta seção se aplica apenas ao SQL Server 2016 Reporting Services e anterior.

O C2WTS (Declarações para Serviço de Token do Windows) do SharePoint é obrigatório com o modo do SharePoint do SQL Server Reporting Services se você deseja usar a Autenticação do Windows para fontes de dados que estão fora do farm do SharePoint. Esse requisito também se aplica quando o usuário acessa as fontes de dados com a Autenticação do Windows porque a comunicação entre o WFE (front-end da Web) e o serviço compartilhado do Reporting Services sempre será uma Autenticação de Declarações.

Etapas necessárias para configurar o c2WTS

Os tokens criados por C2WTS somente funcionarão com a delegação restrita (restrições a serviços específicos) e a opção de configuração "usando qualquer protocolo de autenticação" (Transição de protocolo).

Se seu ambiente usar a delegação restrita de Kerberos, o serviço do SharePoint Server e as fontes de dados externas precisarão residir no mesmo domínio do Windows. Qualquer serviço que dependa do c2WTS (Declarações para Serviço de Token do Windows) deve usar a delegação restrita Kerberos para permitir que o c2WTS use a transição do protocolo Kerberos para traduzir declarações em credenciais do Windows. Estes requisitos são verdadeiros para todos os Serviços Compartilhados do SharePoint. Para obter mais informações, consulte Plano para autenticação Kerberos no SharePoint 2013.

  1. Configure a conta de domínio de serviço do C2WTS.

    Como melhor prática, o C2WTS deve ser executado com sua própria identidade de domínio.

    • Crie uma conta do Active Directory e registre a conta como uma conta gerenciada no SharePoint Server.

    • Configure o serviço do C2WTS para usar a conta gerenciada em Administração Central do SharePoint > Segurança > Configurar Contas de Serviço > Serviço Windows – Declarações do Serviço de Token do Windows

    Adicione a conta de serviço do C2WTS ao grupo de Administradores local em cada servidor a ser usado com o C2WTS. Para a web part do Visualizador de Relatórios, esses servidores serão os WFE (Front-end da Web). Para o modo integrado do SharePoint, eles serão os servidores de aplicativos em que o serviço Reporting Services está em execução.

    • Conceda à conta do C2WTS as seguintes permissões na política de segurança local em Políticas Locais > Atribuição de Direitos do Usuário:
      • Atuar como parte do sistema operacional
      • Representar um cliente após a autenticação
      • Entrada como um serviço
  2. Configure a delegação para a conta de serviço do C2WTS.

    A conta precisa da Delegação Restrita com Transição de Protocolo e de permissões para delegar aos serviços com os quais ela precisa se comunicar (ou seja, Mecanismo de Banco de Dados do SQL Server, SQL Server Analysis Services). Para configurar a delegação, você pode usar o snap-in Usuários e Computador do Active Directory e precisará ser um administrador de domínio.

    Importante

    Todas as configurações que você definir para a conta de serviço do C2WTS na guia Delegação precisarão corresponder à conta de serviço principal usada. Para a web part do Visualizador de Relatórios, essa será a conta de serviço do aplicativo Web do SharePoint. Para o modo integrado do SharePoint, essa será a conta de serviço do Reporting Services.

    Por exemplo, se você permitir que a conta de serviço do C2WTS delegue para um Serviço SQL, precisará fazer o mesmo na conta de serviço do Reporting Services para o modo integrado do SharePoint.

    • Clique com o botão direito do mouse em cada conta de serviço e abra a caixa de diálogo de propriedades. Na caixa de diálogo, selecione a guia Delegação.

      A guia Delegação só ficará visível se o objeto tiver um SPN (Nome da Entidade de Serviço) atribuído a ele. O C2WTS não exige um SPN na Conta do C2WTS; porém, sem um SPN, a guia Delegação não fica visível. Um modo alternativo de configurar a delegação restrita é usar um utilitário como ADSIEdit.

    • As principais opções de configuração na guia delegação são as seguintes:

      • Selecione Confiar neste usuário apenas para delegação a serviços especificados
      • Selecione Usar qualquer protocolo de autenticação
    • Selecione Adicionar para adicionar um serviço para delegação.

    • Selecione Usuários ou Computadores...* e insira a conta que hospeda o serviço. Por exemplo, se um SQL Server for executado em uma conta chamada sqlservice, insira sqlservice. Para a Web part do Visualizador de Relatórios, essa será a conta de serviço da Instância do Reporting Services (Modo Nativo).

    • Selecione a lista de serviços. Essa seleção mostrará os SPNs que estão disponíveis nessa conta. Se você não vir o serviço listado nessa conta, ele pode estar ausente ou colocado em uma conta diferente. Você pode usar o utilitário SetSPN para ajustar os SPNs. Para a Web part do Visualizador de Relatórios, você verá o SPN HTTP configurado em Configuração de Web part do Visualizador de Relatórios.

    • Selecione OK para sair das caixas de diálogo.

  3. Configure o AllowedCallers do C2WTS.

    O C2WTS exige que as identidades dos "chamadores" sejam explicitamente listadas no arquivo de configuração, C2WTShost.exe.config. O C2WTS não aceita solicitações de todos os usuários autenticados no sistema, a menos que você o configure para agir dessa maneira. Neste caso, o “chamador” é o grupo WSS_WPG do Windows. O arquivo C2WTShost.exe.confi é salvo no seguinte local:

    Ao alterar a conta de serviço na Administração Central do SharePoint, para o serviço C2WTS, você adiciona essa conta ao grupo WSS_WPG.

    \Arquivos de Programas\Windows Identity Foundation\v3.5\c2WTShost.exe.config

    O exemplo a seguir mostra como pode ser a aparência do arquivo de configuração:

    <configuration>
      <windowsTokenService>
        <!--  
            By default no callers are allowed to use the Windows Identity Foundation Claims To NT Token Service.  
            Add the identities you wish to allow below.  
          -->
        <allowedCallers>
          <clear/>
          <add value="WSS_WPG" />
        </allowedCallers>
      </windowsTokenService>
    </configuration>
    
  4. Inicie (pare e inicie se já estiver iniciado) as Declarações para Serviço de Token do Windows pela Administração Central do SharePoint na página Gerenciar Serviços no Servidor. O serviço deverá ser iniciado no servidor que executa a ação. Por exemplo, se você tiver um servidor que é um WFE e outro servidor que é um Servidor de Aplicativos que tem o serviço compartilhado SQL Server Reporting Services em execução, precisará apenar iniciar o C2WTS no Servidor de Aplicativos. O C2WTS só será obrigatório em um servidor WFE se você estiver executando a web part do Visualizador de Relatórios.

Mais perguntas? Experimente perguntar no fórum do Reporting Services.