How to use IronSecureDoc from C# in .NET
Your Gateway to Enhanced Document Security
IronSoftware.SecureDoc.Client is a robust client-side library designed to interact seamlessly with the IronSecureDoc API, a comprehensive document security solution hosted in a Docker container.
This client library facilitates easy integration into your existing .NET applications, enabling you to leverage the powerful features of IronSecureDoc, including PDF encryption, redaction, and digital signing, all through simple REST API calls.
With IronSoftware.SecureDoc.Client, developers can ensure the security and integrity of documents within their applications, maintaining all operations on-site for enhanced data protection. Whether you need to redact sensitive information, certify documents with digital signatures, or enforce document encryption, IronSoftware.SecureDoc.Client provides the necessary tools to accomplish these tasks efficiently and securely.
Features
Key Features:
- Easy integration with IronSecureDoc's REST API.
- Support for document encryption, redaction, and digital signing.
- Facilitates secure document processing within self-hosted environments.
- Enhances data protection by keeping document security operations on-site.
- Compatible with .NET applications, offering a straightforward approach to secure document management.
Installation
Let's start with installing the NuGet package from the package manager:
Option 1: Download from NuGet
The NuGet package is listed here on the official NuGet website: https://www.nuget.org/packages/IronSoftware.SecureDoc.Client
Option 2: PM Install Command
Install-Package IronSoftware.SecureDoc.Client
Code Example
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
Explanation
- IronSecureDocClient Initialization: Initialize the
IronSecureDocClient
with the URL to your IRONSECUREDOC server. - Connecting: Use
TryConnectAsync()
to verify the connection to the server. - Redact Text: Define sensitive words/phrases to redact using
RedactTextAsync
. - Redact Region: Redact specific regions by specifying coordinates with
RedactRegionAsync
. - Certify: Add a digital certification with
CertifyAsync
. Provide path to the certification file and a password. - Encrypt: Secure the document by encrypting it using
EncryptAsync
.
Support
For support please contact us: support@ironsoftware.com
Frequently Asked Questions
What is this document security solution?
IronSecureDoc is a comprehensive document security solution hosted in a Docker container that provides features like PDF encryption, redaction, and digital signing through a REST API.
How does this solution enhance document security?
IronSecureDoc enhances document security by allowing operations such as encryption, redaction, and digital signing to be performed on-site, ensuring data protection without relying on external services.
Is this solution compatible with .NET applications?
Yes, IronSecureDoc is designed to seamlessly integrate with .NET applications, providing a straightforward approach to secure document management.
How do I install this solution in my project?
You can install IronSecureDoc by downloading the IronSoftware.SecureDoc.Client package from NuGet or by using the Package Manager command: Install-Package IronSoftware.SecureDoc.Client.
What are the key features of this document security solution?
The key features of IronSecureDoc include easy integration with its REST API, support for document encryption, redaction, and digital signing, and the ability to process documents securely within self-hosted environments.
Can I redact specific regions in a PDF using this solution?
Yes, you can redact specific regions in a PDF by using the RedactRegionAsync method, which allows you to specify the coordinates of the area you wish to redact.
What is required to certify a document using this solution?
To certify a document, you need to use the CertifyAsync method and provide the path to the certification file and a password. This adds a digital certification to the document.
How can I encrypt a PDF document using this solution?
You can encrypt a PDF document by using the EncryptAsync method, which allows you to secure the document with a specified password.
What should I do if I need support using this solution?
For support with IronSecureDoc, you can contact IronSoftware via email at support@ironsoftware.com.