officefileapi-devexpress-dot-pdf-dot-pdfencryptionoptions-602c74da.md
Specifies the permissions on interaction operations.
Namespace : DevExpress.Pdf
Assembly : DevExpress.Pdf.v25.2.Core.dll
NuGet Package : DevExpress.Pdf.Core
public PdfDocumentInteractivityPermissions InteractivityPermissions { get; set; }
Public Property InteractivityPermissions As PdfDocumentInteractivityPermissions
| Type | Description |
|---|---|
| PdfDocumentInteractivityPermissions |
A PdfDocumentInteractivityPermissions enumeration value.
|
Available values:
| Name | Description |
|---|---|
| NotAllowed |
Prohibit all interactive operations (adding or modifying text annotations, filling in interactive form fields, and creating or modifying interactive form fields) in the PDF document.
| | FormFillingAndSigning |
Prohibit interactive operations in the PDF document except filling existing form fields and document signing.
| | Allowed |
Permit interactive operations (adding or modifying text annotations, filling in interactive form fields, and creating or modifying interactive form fields) in the PDF document.
|
You can access this nested property as listed below:
| Object Type | Path to InteractivityPermissions |
|---|---|
| PdfSaveOptions |
.EncryptionOptions .InteractivityPermissions
|
This property can be set to the one of the following values: PdfDocumentInteractivityPermissions.Allowed, PdfDocumentInteractivityPermissions.FormFillingAndSigning and PdfDocumentInteractivityPermissions.NotAllowed.
To restrict interaction operations with a PDF document, create a PdfEncryptionOptions object using the PdfSaveOptions.EncryptionOptions property and specify the owner password using the PdfEncryptionOptions.OwnerPasswordString property, and interaction permissions using the InteractivityPermissions property.
The owner password allows a user to have full access to a document.
Note
The restrictions on data extraction, data modification, interactive, or printing operations with a PDF document can’t be applied without the owner password.
For more information, see the Document Protection topic.
This example shows how a PDF document can be protected using both the owner and user passwords.
Refer to the following topic for more information: Document Protection
using DevExpress.Pdf;
namespace PDFPasswordProtection {
class Program {
static void Main(string[] args) {
using (PdfDocumentProcessor pdfDocumentProcessor = new PdfDocumentProcessor()) {
// Load a PDF document.
pdfDocumentProcessor.LoadDocument(@"..\..\Demo.pdf");
// Initialize encryption options with owner and user passwords.
PdfEncryptionOptions encryptionOptions = new PdfEncryptionOptions(
ownerPassword: "OwnerPassword",
userPassword: "UserPassword"
);
// Specify printing, data extraction, modification, and interactivity permissions.
encryptionOptions.PrintingPermissions = PdfDocumentPrintingPermissions.Allowed;
encryptionOptions.DataExtractionPermissions = PdfDocumentDataExtractionPermissions.NotAllowed;
encryptionOptions.ModificationPermissions = PdfDocumentModificationPermissions.DocumentAssembling;
encryptionOptions.InteractivityPermissions = PdfDocumentInteractivityPermissions.Allowed;
// Specify the 256-bit AES encryption algorithm.
encryptionOptions.Algorithm = PdfEncryptionAlgorithm.AES256;
// Save the protected document with encryption settings.
pdfDocumentProcessor.SaveDocument(
@"..\..\ProtectedDocument.pdf",
new PdfSaveOptions() { EncryptionOptions = encryptionOptions }
);
}
}
}
}
Imports DevExpress.Pdf
Module PDFPasswordProtection
Sub Main()
Using pdfDocumentProcessor As New PdfDocumentProcessor()
' Load a PDF document.
pdfDocumentProcessor.LoadDocument("..\..\Demo.pdf")
' Initialize encryption options with owner and user passwords.
Dim encryptionOptions As New PdfEncryptionOptions(
ownerPassword:="OwnerPassword",
userPassword:="UserPassword"
)
' Specify printing, data extraction, modification, and interactivity permissions.
encryptionOptions.PrintingPermissions = PdfDocumentPrintingPermissions.Allowed
encryptionOptions.DataExtractionPermissions = PdfDocumentDataExtractionPermissions.NotAllowed
encryptionOptions.ModificationPermissions = PdfDocumentModificationPermissions.DocumentAssembling
encryptionOptions.InteractivityPermissions = PdfDocumentInteractivityPermissions.Allowed
' Specify the 256-bit AES encryption algorithm.
encryptionOptions.Algorithm = PdfEncryptionAlgorithm.AES256
' Save the protected document with encryption settings.
pdfDocumentProcessor.SaveDocument(
"..\..\ProtectedDocument.pdf",
New PdfSaveOptions() With {.EncryptionOptions = encryptionOptions}
)
End Using
End Sub
End Module
The following code snippet (auto-collected from DevExpress Examples) contains a reference to the InteractivityPermissions property.
Note
The algorithm used to collect these code examples remains a work in progress. Accordingly, the links and snippets below may produce inaccurate results. If you encounter an issue with code examples below, please use the feedback form on this page to report the issue.
pdf-document-api-protect-document-with-password/CS/PDFPasswordProtection/Program.cs#L18
encryptionOptions.ModificationPermissions = PdfDocumentModificationPermissions.DocumentAssembling;
encryptionOptions.InteractivityPermissions = PdfDocumentInteractivityPermissions.Allowed;
pdf-document-api-protect-document-with-password/VB/PDFPasswordProtection/Program.vb#L17
encryptionOptions.ModificationPermissions = DevExpress.Pdf.PdfDocumentModificationPermissions.DocumentAssembling
encryptionOptions.InteractivityPermissions = DevExpress.Pdf.PdfDocumentInteractivityPermissions.Allowed
' Specify the owner and user passwords for the document.
See Also