如何在 .NET 中使用 C# 调用 IronSecureDoc

This article was translated from English: Does it need improvement?
Translated
View the article in English

通往增强文档安全性的门户

Iron Software.SecureDoc.Client 是一个强大的客户端库,设计用于与 IronSecureDoc API 无缝交互,IronSecureDoc API 是一个托管在 Docker 容器中的综合文档安全解决方案。

该客户端库可轻松集成到您现有的 .NET 应用程序中,使您能够利用 IronSecureDoc 的强大功能,包括 PDF 加密、编辑和数字签名,所有这些都可通过简单的 REST API 调用实现。

有了 Iron Software.SecureDoc.Client,开发人员可以确保应用程序中文档的安全性和完整性,在现场维护所有操作,以加强数据保护。 无论您是需要编辑敏感信息、使用数字签名认证文档,还是需要执行文档加密,Iron Software.SecureDoc.Client 都能提供必要的工具来高效、安全地完成这些任务。

功能特性

主要特点:

  • 可轻松与 IronSecureDoc 的 REST API 集成。
  • 支持文档加密、编辑和数字签名。
  • 促进在自托管环境中进行安全文档处理。
  • 通过将文档安全操作保留在本地,增强数据保护。
  • 与 .NET 应用程序兼容,提供了一种安全文档管理的简单方法。

安装

我们先从包管理器安装 NuGet 包:

选项 1:从 NuGet 下载

NuGet 包已列在 NuGet 官方网站上: https://www.nuget.org/packages/IronSoftware.SecureDoc.Client

选项 2:PM 安装命令

Install-Package IronSoftware.SecureDoc.Client

代码示例

using IronSecureDoc;
using System.IO;
using System.Threading.Tasks;

// Example illustrating how to use the IronSecureDocClient
class SecureDocExample
{
    static async Task Main(string[] args)
    {
        // Replace with your IRONSECUREDOC URL
        var client = new IronSecureDocClient("http://localhost:5185");

        // Replace with your PDF or CERT paths
        string PDF_PATH = "path/to/your.pdf";
        string CERT_PATH = "path/to/your.p12";

        // Attempt to connect to the IronSecureDoc API
        if (await client.TryConnectAsync())
        {
            // Redact Text
            File.WriteAllBytes(
                "redact_text_example.pdf",
                await client.RedactTextAsync(PDF_PATH, new[] { "Dummy" })
            );

            // Redact Region
            File.WriteAllBytes(
                "redact_region_example.pdf",
                await client.RedactRegionAsync(PDF_PATH, 50, 50, 200, 100)
            );

            // Certify
            File.WriteAllBytes(
                "certify_example.pdf",
                await client.CertifyAsync(PDF_PATH, CERT_PATH, "123456", CertifyPermissions.FormFillingAllowed)
            );

            // Encrypt
            File.WriteAllBytes(
                "encrypt_example.pdf",
                await client.EncryptAsync(PDF_PATH, "iron")
            );
        }
    }
}
using IronSecureDoc;
using System.IO;
using System.Threading.Tasks;

// Example illustrating how to use the IronSecureDocClient
class SecureDocExample
{
    static async Task Main(string[] args)
    {
        // Replace with your IRONSECUREDOC URL
        var client = new IronSecureDocClient("http://localhost:5185");

        // Replace with your PDF or CERT paths
        string PDF_PATH = "path/to/your.pdf";
        string CERT_PATH = "path/to/your.p12";

        // Attempt to connect to the IronSecureDoc API
        if (await client.TryConnectAsync())
        {
            // Redact Text
            File.WriteAllBytes(
                "redact_text_example.pdf",
                await client.RedactTextAsync(PDF_PATH, new[] { "Dummy" })
            );

            // Redact Region
            File.WriteAllBytes(
                "redact_region_example.pdf",
                await client.RedactRegionAsync(PDF_PATH, 50, 50, 200, 100)
            );

            // Certify
            File.WriteAllBytes(
                "certify_example.pdf",
                await client.CertifyAsync(PDF_PATH, CERT_PATH, "123456", CertifyPermissions.FormFillingAllowed)
            );

            // Encrypt
            File.WriteAllBytes(
                "encrypt_example.pdf",
                await client.EncryptAsync(PDF_PATH, "iron")
            );
        }
    }
}
Imports IronSecureDoc
Imports System.IO
Imports System.Threading.Tasks

' Example illustrating how to use the IronSecureDocClient
Friend Class SecureDocExample
	Shared Async Function Main(ByVal args() As String) As Task
		' Replace with your IRONSECUREDOC URL
		Dim client = New IronSecureDocClient("http://localhost:5185")

		' Replace with your PDF or CERT paths
		Dim PDF_PATH As String = "path/to/your.pdf"
		Dim CERT_PATH As String = "path/to/your.p12"

		' Attempt to connect to the IronSecureDoc API
		If Await client.TryConnectAsync() Then
			' Redact Text
			File.WriteAllBytes("redact_text_example.pdf", Await client.RedactTextAsync(PDF_PATH, { "Dummy" }))

			' Redact Region
			File.WriteAllBytes("redact_region_example.pdf", Await client.RedactRegionAsync(PDF_PATH, 50, 50, 200, 100))

			' Certify
			File.WriteAllBytes("certify_example.pdf", Await client.CertifyAsync(PDF_PATH, CERT_PATH, "123456", CertifyPermissions.FormFillingAllowed))

			' Encrypt
			File.WriteAllBytes("encrypt_example.pdf", Await client.EncryptAsync(PDF_PATH, "iron"))
		End If
	End Function
End Class
$vbLabelText   $csharpLabel

解释

  • IronSecureDocClient 初始化:使用 IRONSECUREDOC 服务器的 URL 初始化IronSecureDocClient 。 -连接:使用TryConnectAsync()验证与服务器的连接。 -编辑文本:使用RedactTextAsync定义要编辑的敏感词语/短语。 -编辑区域:通过RedactRegionAsync指定坐标来编辑特定区域。
  • Certify :使用CertifyAsync添加数字证书。 请提供证书文件的路径和密码。 -加密:使用EncryptAsync对文档进行加密,以保护文档安全。

支持

如需技术支持,请联系我们:support@ironsoftware.com

常见问题解答

如何在我的 .NET 应用程序中集成文档安全功能?

您可以通过使用 Iron Software.SecureDoc.Client 库集成文档安全功能。这允许您通过 REST API 调用执行 PDF 加密、编辑和数字签名等操作。

在 C# 项目中安装 IronSecureDoc 客户端涉及哪些步骤?

要在 C# 项目中安装 IronSecureDoc 客户端,您可以从 NuGet 下载 Iron Software.SecureDoc.Client 包或使用包管理器命令:Install-Package Iron Software.SecureDoc.Client

我可以用这个解决方案在 PDF 文档中执行文本编辑吗?

是的,您可以使用 RedactTextAsync 方法在 PDF 文档中执行文本编辑,这可以让您指定要编辑的单词或短语。

如何确保我的文档操作保持安全且在现场进行?

使用 IronSecureDoc 通过与 IronSecureDoc API 集成保持文档操作的安全性和本地化。这是一个 Docker 托管的解决方案,可确保所有安全过程在本地处理。

IronSecureDoc API 在文档管理方面提供哪些功能?

IronSecureDoc API 提供了文档加密、编辑、数字签名等功能,并有助于在自托管环境中进行安全的文档处理。

如何使用数字签名认证 PDF 文档?

要使用数字签名认证 PDF 文档,请使用 CertifyAsync 方法,提供您的认证文件路径和必要的密码。

如何在我的 C# 应用程序中加密 PDF 文档?

您可以在 C# 应用程序中使用 EncryptAsync 方法加密 PDF 文档,该方法使用指定的密码安全地加密文档。

是否可以在 PDF 文档中删除特定区域?

是的,可以通过使用 RedactRegionAsync 方法编辑 PDF 文档中的特定区域,该方法要求您指定要编辑的区域坐标。

使用 IronSecureDoc 客户端时遇到问题怎么办?

如果您在使用 IronSecureDoc 客户端时遇到问题,可以通过发送电子邮件至support@ironsoftware.com 联系 Iron Software 的支持团队获取帮助。

Curtis Chau
技术作家

Curtis Chau 拥有卡尔顿大学的计算机科学学士学位,专注于前端开发,精通 Node.js、TypeScript、JavaScript 和 React。他热衷于打造直观且美观的用户界面,喜欢使用现代框架并创建结构良好、视觉吸引力强的手册。

除了开发之外,Curtis 对物联网 (IoT) 有浓厚的兴趣,探索将硬件和软件集成的新方法。在空闲时间,他喜欢玩游戏和构建 Discord 机器人,将他对技术的热爱与创造力相结合。

准备开始了吗?
Version: 2024.10 刚刚发布