Visão geral da segurança do Reporting Services no Modo Integrado do SharePoint
Ao configurar um servidor de relatório para ser executado no modo integrado do SharePoint, o servidor de relatório usa o provedor de autenticação e as permissões definidas no aplicativo da Web do SharePoint para controlar o acesso aos itens e às operações do servidor de relatório.
A permissão para acessar itens e operações é concedida por meio das diretivas de segurança do SharePoint que mapeiam uma conta de usuário ou grupo com um nível de permissão, em relação a um item. Conceitualmente, esse processo é idêntico ao uso das atribuição de função em uma implantação do servidor de relatório no modo nativo, onde uma atribuição de função mapeia uma conta de usuário ou grupo para um conjunto de tarefas permitidas em relação a um item. Como é comum na maioria dos modelos de autorização baseados em função, a segurança do SharePoint fornece uma herança de permissão para reduzir a complexidade e a sobrecarga da manutenção de um grande número de diretivas.
Se você estiver implantando os tipos de conteúdo de servidor de relatório em um site de SharePoint, precisará saber o seguinte:
Como são feitas conexões e solicitações entre os dois servidores. O provedor de autenticação usado no aplicativo da Web do SharePoint determina se é possível usar subseqüentemente a opção de segurança integrada do Windows para acessar fontes de dados externas usadas por um relatório.
Como usar a segurança padrão para adicionar, gerenciar e acessar itens e operações de servidor de relatório. Para obter mais informações, consulte Concedendo permissões para itens do Servidor de Relatório em um site do SharePoint e Usando segurança interna no Windows SharePoint Services para itens do servidor de relatório nos Manuais Online do SQL Server.
Como anular a segurança padrão definindo permissões em relatórios ou operações específicos. Para obter mais informações, consulte Como definir permissões para itens de servidor de relatório em um site do SharePoint (Reporting Services no modo integrado do SharePoint) nos Manuais Online do SQL Server.
Antes de definir permissões, você deve configurar cada servidor para integração. Para obter mais informações, consulte Configurando o Reporting Services para integração do SharePoint 3.0.
Provedores de autenticação em tecnologias do SharePoint
Um aplicativo da Web do SharePoint pode usar a Autenticação do Windows ou a autenticação de formulários. Um servidor de relatório processa solicitações de qualquer uma. Você pode configurar a autenticação com estas combinações:
Autenticação do Windows com segurança integrada (Kerberos habilitado)
Autenticação do Windows, sem representação ou delegação
Autenticação de formulários
Observação |
---|
O Reporting Services e os produtos de tecnologias do SharePoint suportam a autenticação de formulários. A implementação é diferente para cada grupo de produtos e eles não são compatíveis. As extensões de autenticação personalizadas do Reporting Services não são suportadas por servidores de relatório executados no modo de integração do SharePoint. |
A tabela a seguir resume os benefícios e as desvantagens de cada um dos provedores de autenticação:
Benefícios |
Desvantagens |
|
---|---|---|
Autenticação do Windows (com autenticação Kerberos habilitada) |
Funciona em cenários de implantação de um único servidor ou de vários servidores. Suporta o uso de credenciais integradas do Windows para fontes de dados externas. |
Não funciona com autenticação NTLM em implantações de vários servidores. |
Autenticação do Windows (sem o Kerberos habilitado) ou autenticação de Formulários |
Funciona com o Kerberos e todos os cenários de autenticação não Kerberos. |
Não suporta credenciais integradas do Windows para fontes de dados externas. |
Enviando solicitações para um servidor de relatório
Todas as solicitações para um item ou operação de servidor de relatório devem ser uma solicitação autenticada válida. O provedor de autenticação que você está usando determina como a solicitação é processada.
Segurança integrada do Windows
Se o aplicativo da Web do SharePoint estiver configurado para Autenticação do Windows e o Kerberos estiver habilitado, a conexão do aplicativo da Web do SharePoint com o servidor de relatório será estabelecida por meio de credenciais representadas ou delegadas do usuário atual do Windows. O diagrama a seguir mostra as conexões quando um servidor de relatório está configurado para a integração do SharePoint e o aplicativo da Web do SharePoint usa a Autenticação do Windows com o Kerberos habilitado.
Conexão 1
Um usuário acessa um site do SharePoint com o token de usuário criado quando efetuou logon na rede. Contém a identidade de usuário e a associação de grupo. O aplicativo da Web do SharePoint autentica o usuário. O usuário solicita um item ou operação de servidor de relatório.Conexão 2
O aplicativo da Web do SharePoint envia o token e a solicitação para o servidor de relatório. A solicitação de conexão é enviada com a identidade do Windows do usuário. O servidor de relatório valida se o usuário tem permissão para acessar o servidor de relatório.Conexão 3
Se a validação for bem-sucedida, o servidor de relatório confirmará que o usuário tem permissão para acessar o item ou a operação.Um servidor de relatório usa uma extensão de segurança interna para verificar permissões de usuário. O servidor de relatório usa a extensão para chamar o modelo de objeto Windows SharePoint Services para verificar as permissões que estão armazenadas nos bancos de dados de conteúdo do SharePoint. Você não pode configurar ou gerenciar essa extensão de segurança. É um componente interno usado para servidores de relatório executados no modo integrado do SharePoint.
Se o usuário tiver permissão para acessar o relatório ou outro item ou operação, a solicitação será atendida.
Usando a segurança integrada do Windows, é possível eliminar o problema clássico de “salto duplo” em que as credenciais do Windows expiram após uma única conexão. Ela também expande o conjunto de opções que estão disponíveis ao configurar conexões de fonte de dados para relatórios e modelos. Se a identidade de usuário do Windows for usada para estabelecer a conexão com o servidor de relatório, este poderá usá-la durante o processamento do relatório para recuperar dados de fontes de dados externas. Isso significa que, ao definir propriedades de fonte de dados em um relatório, é possível selecionar a opção Segurança integrada do Windows para a conexão de fonte de dados. Para obter mais informações, consulte Especificando informações de credencial e conexão para fontes de dados do relatório nos Manuais Online do SQL Server.
Autenticação do Windows ou de formulários e contas confiáveis
Se o aplicativo da Web do SharePoint estiver configurado para autenticação de formulários, a conexão com o servidor de relatório será enviada pela rede por meio de uma conta confiável que tem permissão para representar um usuário do SharePoint no servidor de relatório. A mesma abordagem será usada se o aplicativo da Web do SharePoint estiver configurado para Autenticação do Windows e o Kerberos não estiver habilitado. O diagrama a seguir mostra as conexões quando as contas confiáveis e as identidades de usuário do SharePoint são usadas.
Conexão 1
Um usuário efetua logon em um site do SharePoint. O aplicativo da Web do SharePoint autentica o usuário. O aplicativo da Web do SharePoint converte a identidade de usuário em uma identidade de usuário do SharePoint (SPUser). Um novo token de usuário é criado para esse usuário no contexto de SPUser. Contém a identidade de usuário e a associação de grupo. O usuário solicita um item ou operação de servidor de relatório.Conexão 2
O aplicativo da Web do SharePoint Web representa a identidade de usuário do SharePoint na solicitação para o servidor de relatório. A solicitação de conexão é enviada por uma conta confiável. A conta é a identidade de processo do aplicativo da Web do SharePoint.O servidor de relatório confirma se a solicitação de conexão é de uma conta confiável comparando-a com as informações da conta que o servidor de relatório recuperou dos bancos de dados de configuração do SharePoint quando foi iniciado. Em um servidor de relatório, a conta confiável é um usuário do Windows com permissão para representar o aplicativo da Web do SharePoint. Só é usada para representar SPUser. Não é permitido acessar itens e operações de servidor de relatório.
Conexão 3
Se a validação for bem-sucedida, o servidor de relatório confirmará que o SPUser tem permissão para acessar o item ou a operação.O servidor de relatório usa uma extensão de segurança interna para confirmar as permissões de usuário, para chamar o modelo de objeto Windows SharePoint Services e para verificar as permissões que estão armazenadas nos bancos de dados de conteúdo do SharePoint. Se o usuário tiver permissão para acessar o relatório ou outro item ou operação, a solicitação será atendida.
Expiração da conta e processamento de assinaturas
Ao criar uma assinatura em um relatório, o servidor de relatório armazena as informações da conta de SPUser de modo que possa confirmar que o usuário tem permissão para exibir o relatório no momento da entrega. Se a conta de SPUser tiver expirado, a assinatura falhará e retornará um erro rsSharePointError. Uma propriedade de nível de farm chamada TokenTimeout determina por quanto tempo SPUser é válido.
Configurar as contas administrativas e de serviço para usar contas de usuário de domínio exclusivo
Uma implantação de produto ou tecnologia do SharePoint usa várias contas para executar serviços e acessar servidores front-end e back-end. Quando for especificar contas de domínio em sua implantação, procure seguir as práticas recomendadas e especificar contas que sejam usadas exclusivamente pelo aplicativo Web do SharePoint. Não configure uma conta de serviço para ser executada sob a conta de usuário de domínio de uma pessoa real que acessará o site do SharePoint. Se acessar um site do SharePoint por meio de credenciais de serviço, você poderá encontrar erros. Para obter mais informações sobre os requisitos e as recomendações sobre a conta de serviço, consulte Plan for administrative and service accounts na documentação do produto Windows SharePoint Services 3.0.
Práticas recomendadas para a configuração de provedores de autenticação em uma implantação em expansão
Se você tiver uma implantação em expansão do Reporting Services e um produto ou tecnologia SharePoint, e tiver configurado provedores de autenticação diferentes para o ambiente, talvez tenha problemas com a autenticação de usuários. Por exemplo, se o ambiente de relatório usar autenticação de Formulários para conexões da Internet e autenticação do Windows para conexões de intranet, talvez a solicitação seja encaminhada para um computador front-end da Web com um provedor de autenticação que não corresponda ao tipo de autenticação da solicitação. Isso poderia fazer com que o Reporting Services negasse acesso à solicitação ou a solicitação poderia ser executada sob a identidade do pool de aplicativos, em vez do usuário que fez a solicitação.
Como prática recomendada, os usuários devem utilizar URLs diferentes para acessar o conteúdo da Internet e da intranet. Ou você pode configurar o arquivo de hosts nos computadores front-end da Web para substituir a pesquisa de DNS mapeando o endereço IP do site voltado para a Internet para a URL da Internet, de modo que as solicitações para a URL da Internet não sejam roteadas para a URL da intranet pelo DNS.
Como o servidor de relatório acessa os bancos de dados de conteúdo do SharePoint
O aplicativo da Web do SharePoint e o servidor de relatório estabelecem uma conexão com seus respectivos bancos de dados para armazenar o estado do aplicativo e outros dados, mas o servidor de relatório também deve se conectar com os bancos de dados do SharePoint para armazenar e recuperar itens, propriedades e configurações. O diagrama a seguir mostra as conexões de servidor com os vários bancos de dados.
Um aplicativo da Web do SharePoint pode usar um banco de dados local ou remoto para armazenamento interno. Se os bancos de dados do SharePoint estiverem em computadores remotos, uma conta de domínio deve ser usada para a conexão.
Um servidor de relatório pode usar um banco de dados local ou remoto para armazenamento interno. Em qualquer situação, a conexão de banco de dados pode ser feita por uma conta de domínio, um logon do SQL Server ou uma conta interna como Network Service ou Local System.
Conexão do servidor de relatório com os bancos de dados do SharePoint
No Reporting Services, o serviço Web e o serviço Windows precisam acessar os bancos de dados do SharePoint. As contas de serviço de ambos são executadas como usuários confiáveis em um aplicativo da Web do SharePoint e obtêm automaticamente permissão para acessar os bancos de dados do SharePoint.
A conexão é gerenciada internamente; é configurada quando você usa a Administração Central do SharePoint para apontar um aplicativo da Web do SharePoint para um servidor de relatório e definir as contas confiáveis. Em contraste com a conexão do servidor de relatório com seus próprios bancos de dados, que pode ser definida ou modificada com a ferramenta Configuração do Reporting Services, não é possível configurar ou gerenciar explicitamente a conexão do servidor de relatório com os bancos de dados do SharePoint.
A execução de um servidor de relatório no modo integrado do SharePoint impõe restrições no modo de configuração de contas de serviço no Reporting Services. Use estas diretrizes ao configurar contas de serviço:
Escolha contas que tenham permissões de logon de rede se for necessário conectar as contas de serviço Servidor de Relatório com os bancos de dados do SharePoint em um computador remoto.
Evite contas internas (como Sistema Local ou Serviço de Rede) se o servidor de relatório e os bancos de dados do SharePoint estiverem em um computador e o aplicativo da Web do SharePoint estiver em um computador remoto. Quando os bancos de dados do SharePoint são executados em um computador remoto, o aplicativo da Web do SharePoint nega explicitamente o acesso a contas internas definidas nesse computador remoto. Isto significa que todos os serviços executados com contas internas nesse computador não podem se conectar com bancos de dados do SharePoint.
Para todas as outras topologias que colocam os servidores e bancos de dados no mesmo computador ou em computadores diferentes, as contas de serviço do Reporting Services podem ser configuradas como contas de domínio ou contas internas.
Erros durante a conexão com bancos de dados do SharePoint
Se o servidor de relatório não conseguir acessar os bancos de dados do SharePoint e houver um erro de configuração (por exemplo, se as contas de serviço ou senhas não forem válidas ou se uma instância local do modelo de objeto do Windows SharePoint não estiver instalada), um erro rsServerConfigurationError ocorrerá. Para todos os outros erros de conexão, o erro rsSharePointError é retornado, junto com informações adicionais sobre o erro a partir da instância local do Windows SharePoint Services.
Histórico de alterações
Conteúdo atualizado |
---|
A tabela com os benefícios e as desvantagens dos provedores de autenticação foi adicionada à seção Provedores de autenticação nas tecnologias SharePoint. |
A seção "Práticas recomendadas para a configuração de provedores de autenticação em uma implantação em expansão" foi adicionada. |
Consulte também