Partilhar via


Usando arquivos de diretiva de segurança do Reporting Services

O Reporting Services armazena informações de diretiva de segurança de componentes em três arquivos de configuração que são copiados no sistema de arquivos durante a instalação. Estes arquivos de configuração podem conter uma combinação de diretivas de segurança de uso interno e definidas pelo usuário assemblies de código no Reporting Services. Os três arquivos de configuração correspondem a três componentes de segurança do Reporting Services: o servidor de relatório e o serviço do Windows, o aplicativo Web do Gerenciador de Relatórios e a janela de exibição do Designer de Relatórios.

ObservaçãoObservação

Há dois modos de exibição para o Designer de Relatórios: a guia Visualizar e a janela pop-up Visualizar que é iniciada quando o Projeto de Relatório é inicializado no modo DebugLocal. A guia Visualizar não é um componente de segurança e não aplica configurações de diretiva de segurança. A janela de exibição foi desenvolvida para simular a funcionalidade do servidor de relatório e, portanto, tem um arquivo de configuração de diretiva que você ou um administrador devem modificar para usar assemblies e extensões personalizadas no Designer de Relatórios.

Os arquivos de configuração de diretiva de segurança contêm informações sobre a classe de segurança, alguns conjuntos nomeados padrão de permissões e os grupos de código para os assemblies do Reporting Services. Os arquivos de configuração de diretiva do Reporting Services são similares ao arquivo Security.config que determina a hierarquia de grupos de código e os conjuntos de permissões associados às diretivas do nível corporativo e de máquina do .NET Framework. O local deste arquivo é C:\WINDOWS\Microsoft.NET\Framework\v1.2.21213\CONFIG\security.config.

Arquivos de diretiva do Reporting Services

A tabela a seguir lista os arquivos de configuração de diretiva do Reporting Services, sua localização (supondo uma instalação padrão) e suas respectivas funções.

Nome do arquivo

Local (instalação padrão)

Descrição

rssrvpolicy.config

C:\Arquivos de Programas\Microsoft SQL Server\MSSQL\Reporting Services\ReportServer

O arquivo de configuração de diretiva de servidor de relatório. Estas diretivas de segurança afetam principalmente expressões de relatório e assemblies personalizados após um relatório ser implantado em um servidor de relatório. Este arquivo de diretiva também afeta dados personalizados, extensões de entrega, renderização e segurança implantados no servidor de relatório.

rsmgrpolicy.config

C:\Arquivos de Programas\Microsoft SQL Server\MSSQL\Reporting Services\ReportManager

Arquivo de configuração de diretiva do Gerenciador de Relatórios. Estas diretivas de segurança afetam todos os assemblies que estendem o Gerenciador de Relatórios; por exemplo, extensões de interface de usuário de assinatura para entrega personalizada.

rspreviewpolicy.config

C:\Arquivos de Programas\Microsoft SQL Server\80\Tools\ReportDesigner

Arquivo de configuração de diretiva de visualização autônoma do Designer de Relatórios. Estas políticas de segurança afetam assemblies personalizados e expressões de relatório que são usados em relatórios durante a visualização e o desenvolvimento. Estas políticas também afetam extensões personalizadas, como extensões de processamento de dados, que são implantadas no Designer de Relatórios.

Modificando arquivos de configuração

As configurações são especificadas como elementos ou atributos XML. Se você entender de XML e arquivos de configuração, use um editor de texto ou de código para modificar configurações definidas pelo usuário. Os arquivos de configuração de segurança contêm informações sobre a hierarquia de grupos de código e os conjuntos de permissões associados a um nível de diretiva do Reporting Services. É recomendado usar o utilitário de configuração do .NET Framework (Mscorcfg.msc) ou o utilitário de diretiva de segurança de acesso ao código (Caspol.exe) para modificar diretivas de segurança no arquivo Security.config primeiro, de modo que as alterações de diretiva correspondam a elementos válidos de configuração XML para arquivos de diretiva. Feito isso, você pode recortar e colar os novos grupos de código e conjuntos de permissões do Security.config para o arquivo de diretiva do componente ao qual estão sendo adicionadas permissões de código.

Observação importanteImportante

Você deve fazer backup dos arquivos de configuração de diretiva antes de fazer alterações.

O uso desse método tem duas vantagens. Primeiro, permite usar uma ferramenta visual para criar grupos de código e conjuntos de permissões para o Reporting Services. Isto é muito mais fácil do que gravar elementos de configuração XML a partir do zero. Em segundo lugar, esse método assegura que os arquivos de configuração de diretiva de segurança não sejam corrompidos com elementos e atributos XML mal formados. Para obter mais informações sobre o utilitário de diretiva de segurança de acesso ao código, consulte o site da Microsoft.

Antes de modificar arquivos de configuração de diretiva, leia todas as informações disponíveis nesta seção e os tópicos relacionados. A modificação da configuração de diretiva do Reporting Services pode afetar significativamente a segurança no que diz respeito a como os componentes do Reporting Services executam módulos de código externos.

Colocação de elementos CodeGroup para extensões

A colocação de elementos CodeGroup em um arquivo de diretiva de segurança é importante. Para as extensões e os assemblies personalizados que você desenvolver, é recomendado colocar grupos de código personalizados logo abaixo da entrada existente para a associação "$CodeGen$/*" de URL, conforme indicado a seguir:

<CodeGroup
    class="UnionCodeGroup"
    version="1"
    PermissionSetName="FullTrust">
    <IMembershipCondition 
        class="UrlMembershipCondition"
        version="1"
        Url="$CodeGen$/*"
    />
</CodeGroup>
<CodeGroup 
    class="UnionCodeGroup"
    version="1"
    PermissionSetName="FullTrust"
    Name="MyCustomCodeGroup"
    Description="Code group for my custom extension">
        <IMembershipCondition class="UrlMembershipCondition"
        version="1"
        Url="C:\Program Files\Microsoft SQL Server\MSSQL\Reporting Services\ReportServer\bin\MyAssembly.dll"
        />
</CodeGroup>

Grupos de código adicionais podem ser adicionados um depois do outro.

Consulte também

Conceitos