Configurações de email no modo nativo do Reporting Services (Configuration Manager)

Você pode distribuir relatórios por e-mail usando a extensão de entrega de e-mail do SQL Server Reporting Services (SSRS). Dependendo da configuração da assinatura de e-mail, a distribuição pode incluir 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 que usa um servidor ou encaminhador 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ê usará o Gerenciador de Configurações do Servidor de Relatório para fazer uma configuração mínima da extensão. Para definir propriedades avançadas, edite 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 File Share Delivery in Reporting Services.

Requisitos de configuração

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

A conta de autenticação configurada 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 suporta apenas UTF-8.

Observação

A extensão de entrega de e-mail padrão não oferece suporte à assinatura digital ou à criptografia de mensagens de e-mail enviadas.

Opções de configuração

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. A tabela a seguir descreve as duas maneiras de configurar um servidor de relatório para entrega:

Método Descrição
Gerenciador de configuração do servidor de relatório Use o Gerenciador de Configurações do Servidor de Relatório se estiver especificando somente um servidor SMTP e uma conta de usuário que tenha permissão para enviar email. Essas configurações são as mínimas necessárias para a configuração da extensão de entrega de email do Servidor de Relatório.
Opcional
Arquivo rsreportserver.config
Use um editor de texto para definir configurações extras se você usar um servidor SMTP local ou estiver restringindo a entrega de e-mail a hosts específicos. O arquivo rsreportserver.config contém todos os parâmetros de configuração para a entrega de email do servidor de relatório. Para obter mais informações sobre como encontrar e modificar arquivos de configuração, consulte Modificar um arquivo de configuração do Reporting Services (rsreportserver.config).

Observação

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

Configurar o email do servidor de relatório usando o Configuration Manager do Servidor de Relatório

  1. Inicie o Gerenciador de Configurações do Servidor de Relatório e conecte-se à instância do servidor de relatório.

  2. Vá para Configurações de e-mail.

  3. Em Endereço do Remetente, insira o endereço de email a ser usado no campo De: de um email gerado. Especifique uma conta de usuário que tenha permissão para enviar e-mails do servidor SMTP. O valor inserido para o Endereço do Remetente é salvo no campo <From> do arquivo rsreportserver.config.

  4. Em Servidor SMTP, especifique o servidor SMTP ou o gateway a ser usado. O valor inserido para Servidor SMTP é salvo no campo <SMTPServer> do arquivo rsreportserver.config. Este valor pode ser:

    • Um endereço IP
    • Um nome NetBIOS de um computador em sua intranet corporativa
    • Um nome de domínio totalmente qualificado
  5. Na lista Autenticação, especifique como autenticar no servidor SMTP.

    Tipo de autenticação Descrição
    Sem autenticação Conecta-se anonimamente ao servidor de e-mail.

    Essa opção define <SendUsing> como um valor de 2 e <SMTPAuthenticate> como um valor de 0 no arquivo rsreportserver.config.
    Nome de usuário e senha (Básico) Especifique um nome de usuário e senha para se conectar ao servidor de e-mail. Também é possível selecionar Usar conexão segura para que essa autenticação passe por uma conexão criptografada ao servidor de email.

    Essa opção define <SendUsing> como um valor de 2 e <SMTPAuthenticate> como um valor de 1 no arquivo rsreportserver.config. A seleção de Usar conexão segura define SMTPUseSSL como True. Nome de usuário é definido em <SendUserName> como um valor criptografado. Senha é definida em <SendPassword> como um valor criptografado.
    Conta de serviço do servidor de relatórios (NTLM) Usa a conta de serviço que você especificou para o servidor de relatórios. Se você usar a conta de serviço do servidor de relatório para autenticação, verifique se a conta de serviço tem as permissões Send As no servidor SMTP.

    Essa opção define <SendUsing> como um valor de 2 e <SMTPAuthenticate> como um valor de 2 no arquivo rsreportserver.config.
  6. Escolha Aplicar.

Se quiser ajustar outros campos para a configuração de e-mail, use o arquivo rsreportserver.config conforme descrito nas seções a seguir.

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. Para obter mais informações sobre as descrições das configurações e os valores válidos, consulte Arquivo de configuração RsReportServer.config.

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

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

As assinaturas definidas pelo usuário que são criadas com base nas permissões concedidas pela tarefa Gerenciar assinaturas individuais contêm um nome de usuário predefinido com base na 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ê usar um servidor ou encaminhador SMTP com contas de e-mail 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 contornar esse erro, modifique 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

As seguintes opções de configuração determinam a conexão entre o servidor de relatório e um encaminhador ou servidor SMTP:

Configuração Descriçã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, defina esse valor 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.

A tabela a seguir mostra as outras configurações usadas para o serviço SMTP remoto:

Observação

Você não precisa especificar esses valores, a menos que queira substituir os valores padrão.

Configuração Descrição
<SMTPServerPort> Configurado para a porta 25 por padrão.
<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 email para listas de distribuição restritas (por exemplo, listas de distribuição que aceitem mensagens de entrada apenas de contas autenticadas), defina <SMTPAuthenticate> como 1 ou 2. Se você defini-lo como 1, também será necessário definir <SendUserName> e <SendPassword>. A prática recomendada é alterar essa configuração por meio do Configuration Manager do Servidor de Relatório, pois ele criptografa os valores de <SendUserName> e <SendPassword>.

Configurar um serviço SMTP remoto para o servidor de relatório

Observação

A prática recomendada é configurar o servidor de email por meio do Configuration Manager do Servidor de Relatório.

  1. Verifique se o serviço do Windows Servidor de Relatório tem permissões Send As no servidor SMTP.
  2. Abra o arquivo RSReportServer.config em um editor de texto.
  3. Verifique se <UrlRoot> está configurado como o endereço da URL do servidor de relatório. Esse valor é definido quando você configura o servidor de relatório e já deveria estar preenchido. Se não estiver definido, insira o endereço da URL do servidor de relatório.
  4. Defina <SMTPServer> como o nome do servidor SMTP. Esse valor pode ser um endereço IP, um nome UNC de um computador em sua intranet corporativa ou um nome de domínio totalmente qualificado.
  5. Defina <SendUsing> como 2 se quiser usar a conta de serviço para o servidor de relatórios. Defina <SendUsing> como 1 para autenticação básica. Se você defini-lo como 1, também precisará fornecer um valor para <SendUserName> e <SendPassword>. Se você quiser que esses valores sejam criptografados, defina a autenticação no Gerenciador de Configurações do Servidor de Relatório.
  6. Defina <SMTPAuthenticate> como 1 se você definir <SendUsing> como 1 ou 2.
  7. Defina <From> como uma conta que tenha permissão para enviar email a partir do servidor SMTP.
  8. Salve o arquivo.

O servidor de relatório usa as novas configurações automaticamente. Não é necessário reiniciar o serviço. Você pode especificar outras configurações de SMTP para configurar mais como o servidor SMTP é usado para entrega de email do servidor de relatório.

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 é habilitado por padrão.

As seguintes opções de configuração determinam a conexão entre o servidor de relatório e um encaminhador ou servidor SMTP local:

  • <SendUsing> está definido como 1.
  • <SMTPServerPickupDirectory> está definido como uma pasta na unidade local.

    Observação

    Certifique-se de não definir <SMTPServer> se você usa um servidor SMTP local.

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

Para configurar um serviço SMTP local para o servidor de relatório

  1. No Painel de Controle, encontre o recurso Ativar ou desativar recursos do Windows para iniciar o Assistente para Adicionar Funções e Recursos.
  2. Selecione Instalação baseada em função ou recurso e selecione Avançar.
  3. Selecione o servidor no qual será instalado o IIS (Servidor de Informações da Internet) e selecione Avançar.
  4. Selecione Avançar na página Funções de Servidor.
  5. Na página Recursos , selecione Servidor SMTP e Avançar. Se você receber o prompt para adicionar recursos necessários ao Servidor SMTP, selecione Adicionar Recursos.
  6. Selecione Avançar na página Função de Servidor Web (IIS) .
  7. Selecione Avançar na página Serviços de Função .
  8. Selecione Instalar na página Confirmar seleções de instalação.
  9. Verifique se o serviço Windows Protocolo SMTP está em execução no console de Serviços. Para configurar o servidor SMTP local, é necessário usar o Gerenciador do IIS 6.0 em Ferramentas administrativas.
  10. Abra o arquivo RSReportServer.config em um editor de texto.
  11. Verifique se <UrlRoot> está configurado como o endereço da URL do servidor de relatório. Esse valor é definido quando você configura o servidor de relatório,
  12. e já deve estar preenchido. Se ele não for definido, insira a URL do serviço Web do servidor de relatório.
  13. Verifique se <SMTPServer> está presente, mas vazio.
  14. Defina <SendUsing> como 1.
  15. Defina <SMTPAuthenticate> como 0.
  16. Defina <SMTPServerPickupDirectory> como a pasta de Retirada de Serviço SMTP. A localização padrão é C:\inetpub\mailroot\Pickup.
  17. Defina <From> como uma conta que tenha permissão para enviar email a partir do servidor SMTP. Isso define o valor que aparece na linha De: de uma mensagem de email.
  18. Salve o arquivo.