Configurando um servidor de relatório para entrega de email

O Reporting Services inclui uma extensão de entrega de email, para que seja possível distribuir relatórios por email. Dependendo de como você definir a assinatura de email, uma entrega pode consistir em uma notificação, um link, um anexo ou um relatório incorporado. A extensão de entrega de email funciona com sua tecnologia de servidor de email existente. O servidor de email deve ser um encaminhador ou servidor SMTP. O servidor de relatório se conecta a um servidor SMTP por meio de bibliotecas (cdosys.dll) de CDO (Collaboration Data Objects) que são fornecidas pelo sistema operacional.

A extensão de entrega de email do servidor de relatório não é configurada por padrão. Você deve usar a ferramenta Configuração do Reporting Services para configurar a extensão de forma mínima. Para definir propriedades avançadas, você deve editar o arquivo RSReportServer.config. Se não for possível configurar o servidor de relatório para usar essa extensão, em vez disso você poderá entregar relatórios para uma pasta compartilhada. Para obter mais informações, consulte Entrega de compartilhamento de arquivos no Reporting Services nos Manuais Online do SQL Server.

Requisitos de configuração

  • A entrega de email do servidor de relatório é implementada em CDO (Collaboration Data Objects) e requer um servidor SMTP local ou remoto ou um encaminhador SMTP. Não há suporte ao SMTP em todos os sistemas operacionais Windows. Se você estiver usando a edição com base em Itanium do Windows Server 2008, não haverá suporte ao SMTP. Para obter mais informações sobre as opções de configuração fornecidas por CDO, consulte Configuração no MSDN.

  • Uma conta de serviço do Servidor de Relatório deve ter permissão no servidor SMTP para enviar email.

  • A extensão de entrega de email usa a codificação UTF-8 em anexos de email. Você não pode modificar a codificação; a extensão de renderização HTML só dá suporte a UTF-8.

ObservaçãoObservação

A extensão de entrega de email padrão não dá suporte para assinar digitalmente ou criptografar mensagens de email de saída.

Configurando um servidor de relatório para o serviço SMTP local ou remoto

Você pode usar um serviço SMTP local ou um encaminhador ou servidor SMTP remoto para suportar entrega de email. Se tiver acesso a um servidor SMTP remoto existente, você deverá considerar seu uso. Se não houver nenhum servidor SMTP disponível ou se subseqüentemente você encontrar erros de entrega de relatório que possam ser atribuídos a falhas de conexão do computador, você deverá alternar para o uso de um serviço SMTP local. Detalhes sobre como configurar um servidor de relatório para serviço local ou remoto são fornecidos mais adiante neste tópico.

Definindo opções de configuração para entrega de email

Antes de usar a entrega de email do Servidor de Relatório, você deve definir valores de configuração que forneçam informações sobre qual servidor SMTP será usado.

Para configurar um servidor de relatório para entrega de email, faça o seguinte:

  • Use a ferramenta Configuração do Reporting Services se estiver especificando somente um servidor SMTP e uma conta de usuário que tenha permissão para enviar email. Essas são as configurações mínimas necessárias para a configuração da extensão de entrega de email do Servidor de Relatório. Para obter mais informações, consulte Como configurar um servidor de relatório para entrega de email (Configuração do Reporting Services).

  • (Opcionalmente) Use um editor de texto para especificar configurações adicionais no arquivo RSreportserver.config. Esse arquivo contém todos os parâmetros de configuração para a entrega de email do Servidor de Relatório. Será necessário especificar configurações adicionais nesses arquivos se você estiver usando um servidor SMTP local ou se estiver restringindo a entrega de email para hosts específicos. Para obter mais informações sobre como localizar e modificar arquivos de configuração, consulte Como modificar um arquivo de configuração do Reporting Services nos Manuais Online do SQL Server.

ObservaçãoObservação

As configurações de email do servidor de relatório têm como base o CDO. Para obter mais detalhes sobre configurações específicas, você pode consultar a documentação de produção do CDO.

Exemplo de configuração de email do servidor de relatório

O exemplo a seguir ilustra as configurações no arquivo RSreportserver.config para um servidor SMTP remoto. Par ler sobre as descrições de configuração e valores válidos, consulte Arquivo de configuração RSReportServer nos Manuais Online do SQL Server ou na documentação do produto CDO.

<RSEmailDPConfiguration>
     <SMTPServer>mySMTPServer.Adventure-Works.com</SMTPServer>
     <SMTPServerPort></SMTPServerPort>
     <SMTPAccountName></SMTPAccountName>
     <SMTPConnectionTimeout></SMTPConnectionTimeout>
     <SMTPServerPickupDirectory></SMTPServerPickupDirectory>
     <SMTPUseSSL></SMTPUseSSL>
     <SendUsing>2</SendUsing>
     <SMTPAuthenticate></SMTPAuthenticate>
     <From>my-rs-email-account@Adventure-Works.com</From>
     <EmbeddedRenderFormats>
          <RenderingExtension>MHTML</RenderingExtension>
     </EmbeddedRenderFormats>
     <PrivilegedUserRenderFormats></PrivilegedUserRenderFormats>
     <ExcludedRenderFormats>
          <RenderingExtension>HTMLOWC</RenderingExtension>
          <RenderingExtension>NULL</RenderingExtension>
     </ExcludedRenderFormats>
     <SendEmailToUserAlias>True</SendEmailToUserAlias>
     <DefaultHostName></DefaultHostName>
     <PermittedHosts>
          <HostName>Adventure-Works.com</HostName>
          <HostName>hotmail.com</HostName>
     </PermittedHosts>
</RSEmailDPConfiguration>

Opções de configuração para a definição do campo Para: em uma mensagem

As assinaturas definidas pelo usuário que forem criadas de acordo com as permissões concedidas pela tarefa Gerenciar assinaturas individuais contêm um nome de usuário predefinido que tem como base a conta de usuário do domínio. Quando o usuário cria a assinatura, o nome do destinatário no campo Para: é endereçado a si mesmo, usando a conta do usuário do domínio da pessoa que está criando a assinatura.

Se você estiver usando um servidor ou encaminhador SMTP que use contas de email diferentes da conta de usuário do domínio, a entrega do relatório falhará quando o servidor SMTP tentar entregar o relatório para esse usuário.

Para solucionar esse erro, você pode modificar os parâmetros de configuração que permitem aos usuários inserir um nome no campo Para::

  1. Abra RSReportServer.config com um editor de texto.

  2. Defina SendEmailToUserAlias como False.

  3. Defina DefaultHostName como o nome DNS (Sistema de Nome de Domínio) ou o endereço IP do servidor ou encaminhador SMTP.

  4. Salve o arquivo.

Opções de configuração para o serviço SMTP remoto

A conexão entre o servidor de relatório e um encaminhador ou servidor SMTP é determinada pelos seguintes parâmetros de configuração:

  • SendUsing especifica um método para o envio de mensagens. Você pode escolher entre um serviço de rede SMTP ou um diretório local de retirada de serviço SMTP. Para usar um serviço SMTP remoto, este valor deve ser definido como 2 no arquivo RSReportServer.config.

  • SMTPServer especifica o encaminhador ou servidor SMTP remoto. Esse valor será necessário se você estiver usando um encaminhador ou servidor SMTP remoto.

  • From define o valor que aparece na linha De: de uma mensagem de email. Esse valor será necessário se você estiver usando um encaminhador ou servidor SMTP remoto.

Outros valores usados para o serviço SMTP remoto incluem os seguintes (observe que não é necessário especificar esses valores, a menos que deseje substituir os valores padrão).

  • SMTPServerPort é configurado para a porta 25.

  • SMTPAuthenticate especifica como o servidor de relatório se conecta ao servidor SMTP remoto. O valor padrão é 0 (sem autenticação). Nesse caso, a conexão é feita por acesso Anônimo. Dependendo da configuração do domínio, o servidor de relatório e o servidor SMTP podem precisar ser membros do mesmo domínio.

    Para enviar e-mail para listas de distribuição restritas (por exemplo, listas de distribuição que aceitem mensagens de entrada apenas de contas autenticadas), defina SMTPAuthenticate como 2.

Opções de configuração para o serviço SMTP local

A configuração de um serviço SMTP local será útil se você estiver testando ou solucionando problemas de entrega de email do servidor de relatório. O serviço SMTP local não está habilitado por padrão. Para obter instruções sobre como habilitá-lo, consulte Como configurar um servidor de relatório para entrega de email (Configuração do Reporting Services).

A conexão entre o servidor de relatório e um encaminhador ou servidor SMTP local é determinada pelos seguintes parâmetros de configuração:

  • SendUsing é definido como 1.

  • SMTPServerPickupDirectory é definido como uma pasta na unidade local.

    ObservaçãoObservação

    Certifique-se de não definir SMTPServer se você estiver usando um servidor SMTP local.

  • From define o valor que aparece na linha De: de uma mensagem de email. Esse valor é necessário.