Configure autenticação personalizada ou de formulários no servidor de relatórios

O Reporting Services oferece uma arquitetura extensível que permite inserir módulos de autenticação personalizados ou baseados em formulários. Pode considerar implementar uma extensão de autenticação personalizada se os requisitos de implementação não incluírem segurança integrada no Windows ou autenticação Básica. O cenário mais comum para usar autenticação personalizada é suportar acesso à Internet ou extranet a uma aplicação Web. Substituir a extensão padrão de autenticação do Windows por uma extensão de autenticação personalizada dá-lhe mais controlo sobre como os utilizadores externos têm acesso ao servidor de relatórios.

Na prática, a implementação de uma extensão de autenticação personalizada requer múltiplos passos que incluem copiar assemblies e ficheiros de aplicação, modificar ficheiros de configuração e testes. Este artigo foca-se apenas nas definições de autenticação que especifica nos ficheiros de configuração.

Note

Criar uma extensão de autenticação personalizada requer código personalizado e especialização em segurança ASP.NET. Se não quiser criar uma extensão de autenticação personalizada, pode usar grupos e contas de ID do Microsoft Entry, mas deve reduzir significativamente o âmbito de uma implementação de um servidor de relatórios. Para mais informações sobre autenticação personalizada, consulte Implementar uma extensão de segurança.

Além disso, pode usar autenticação por formulários ou uma extensão de autenticação personalizada num ambiente SQL Server Reporting Services integrado com um produto SharePoint. Para isso, deve configurar o site SharePoint para usar o método de autenticação que escolher. Para mais informações sobre a configuração da autenticação no SharePoint, consulte Exemplos de autenticação na Microsoft Developer Network (MSDN).

Configure um servidor de relatórios para usar autenticação personalizada

  1. Abre a rsreportserver.config num editor de texto.

  2. Encontre a <Authentication> secção.

  3. Copie a seguinte estrutura XML:

    <Authentication>
          <AuthenticationTypes>
                 <Custom />
          </AuthenticationTypes>
          <EnableAuthPersistence>true</EnableAuthPersistence>
    </Authentication>
    
  4. Cole por cima das entradas existentes da secção <Authentication>.

    Não podes usar Custom com outros tipos de autenticação.

  5. Salve o arquivo.

  6. Abra o ficheiro Web.config do servidor de relatórios. Por defeito, o ficheiro está localizado na mesma pasta que o ficheiro rsreportserver.config (ver RsReportServer.config ficheiro de configuração).

  7. Encontre authentication mode e defina para Forms.

    <authentication mode = "Forms" />
    
  8. Encontre identity impersonate e defina para False.

    <identity impersonate = "false" />  
    
  9. Adicione a estrutura do elemento PassThroughCookies ao ficheiro de configuração. Para mais informações, consulte Configurar o portal web para passar cookies de autenticação personalizados

  10. Salve o arquivo.

  11. Se configurou uma implementação escalonável, repita todos os passos anteriores para outros servidores de relatórios na implementação.

  12. Reinicie o servidor de relatórios para limpar todas as sessões que estejam atualmente abertas.