Reporting services 如何向通过SSRS自定义导出选项生成的pdf文件添加数字签名

Reporting services 如何向通过SSRS自定义导出选项生成的pdf文件添加数字签名,reporting-services,digital-signature,Reporting Services,Digital Signature,我正在为SSRS定制导出选项,基本上我想创建一个数字签名的 通过SSRS生成的pdf文件。下面是我在Render方法中编写的代码。 当前以pdf格式创建的文件,没有数字签名。 如何创建数字签名的pdf文件?通过SSRS自定义导出选项生成。 我使用iTextSharp库进行数字签名 bool IRenderingExtension.Render(Microsoft.ReportingServices.OnDemandReportRendering.Report report, NameVa

我正在为SSRS定制导出选项,基本上我想创建一个数字签名的 通过SSRS生成的pdf文件。下面是我在Render方法中编写的代码。 当前以pdf格式创建的文件,没有数字签名。 如何创建数字签名的pdf文件?通过SSRS自定义导出选项生成。 我使用iTextSharp库进行数字签名

    bool IRenderingExtension.Render(Microsoft.ReportingServices.OnDemandReportRendering.Report report, NameValueCollection reportServerParameters, NameValueCollection deviceInfo, NameValueCollection clientCapabilities, ref System.Collections.Hashtable renderProperties, CreateAndRegisterStream createAndRegisterStream)
    {
        byte[] buffer = new byte[32768];

        pdfRenderer.Render(
            report,
            reportServerParameters,
            deviceInfo,
            clientCapabilities,
            ref renderProperties,
           new CreateAndRegisterStream(IntermediateCreateAndRegisterStream)
        );

        Stream outputStream = createAndRegisterStream(report.Name, "pdf", Encoding.UTF8, "application/pdf", true, StreamOper.CreateAndRegister);

        while (true)
        {
            int read = intermediateStream.Read(buffer, 0, buffer.Length);
            if (read <= 0) break;
            outputStream.Write(buffer, 0, read);

        }

        intermediateStream.Close();
        intermediateStream = null;
        return false;
    }     
bool IRenderingExtension.Render(Microsoft.ReportingServices.OnDemandReportRendering.Report Report、NameValueCollection reportServerParameters、NameValueCollection deviceInfo、NameValueCollection clientCapabilities、ref System.Collections.Hashtable renderProperties、CreateAndRegisterStream CreateAndRegisterStream)
{
字节[]缓冲区=新字节[32768];
pdfRenderer.Render(
报告,,
reportServerParameters,
deviceInfo,
客户能力,
参考renderProperties,
新建CreateAndRegisterStream(中间CreateAndRegisterStream)
);
Stream outputStream=createAndRegisterStream(report.Name,“pdf”,Encoding.UTF8,“application/pdf”,true,StreamOper.CreateAndRegister);
while(true)
{
int read=intermediateStream.read(buffer,0,buffer.Length);

if(阅读您使用的SSRS版本?用于添加水印的代码在哪里?您是否阅读了以下文章:(适用于SSRS 2005)和(其中包含如何将代码从第一篇文章迁移到SSRS 2012的信息)我读了这两篇文章都很有用,但我想在导出报告之前添加数字签名,以便以自定义格式生成报告(我使用PDF格式)是数字签名的。第二个链接应该对您有所帮助。它是关于压缩的,但您可以添加您的签名操作。您使用的是哪个版本的SSRS?用于添加水印的代码在哪里?您是否阅读了以下文章:(适用于SSRS 2005)和(其中包含如何将第一篇文章中的代码迁移到SSRS 2012的信息)我阅读了这两篇文章,这两篇文章都很有帮助,但我希望在导出报告之前添加数字签名,以便以自定义格式生成报告(我使用PDF格式)是数字签名的。第二个链接应该对您有所帮助。它是关于压缩的,但您可以添加您的签名操作。