Class PdfSecuritySettings
Enterprise-grade PDF security: pdf.SecuritySettings.MakePdfDocumentReadOnly("owner123") Control passwords, 128-bit encryption, permissions for print/copy/edit. Essential for legal, financial, and government documents. Used via PdfDocument.SecuritySettings property.
Namespace: IronPdf.Security
Assembly: IronPdf.dll
Syntax
public class PdfSecuritySettings : PdfClientAccessor
Remarks
using IronPdf;
// Basic password protection
var pdf = PdfDocument.FromFile("sensitive.pdf");
pdf.SecuritySettings.UserPassword = "view123"; // Required to open
pdf.SecuritySettings.OwnerPassword = "admin456"; // Required to change settings
pdf.SaveAs("protected.pdf");
// Make completely read-only (government/legal use)
var contract = PdfDocument.FromFile("contract.pdf");
contract.SecuritySettings.MakePdfDocumentReadOnly("owner-secret");
// Now: No copying, No printing, No editing, No annotations
contract.SaveAs("final-contract.pdf");
// Custom permissions (corporate policy)
var report = PdfDocument.FromFile("quarterly-report.pdf");
report.SecuritySettings.OwnerPassword = "exec2024";
report.SecuritySettings.AllowUserPrinting = PdfPrintSecurity.FullPrintRights;
report.SecuritySettings.AllowUserCopyPasteContent = false; // Prevent data leaks
report.SecuritySettings.AllowUserEdits = PdfEditSecurity.NoEdit;
report.SecuritySettings.AllowUserAnnotations = true; // Allow comments
report.SaveAs("q4-report-secure.pdf");
Properties
AllowUserAnnotations
Gets or sets the permissions for users to annotate the PDF document with comments.
If
AllowUserAnnotations is set false, the OwnerPassword must be set for the security
measure to take effect.
Declaration
public bool AllowUserAnnotations { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
|
AllowUserCopyPasteContent
Gets or sets the permissions for users to extract or 'copy & paste' content (text and images) from the PDF document.
If AllowUserCopyPasteContent is set false, the OwnerPassword must also be set for the security measure to take effect.
Declaration
public bool AllowUserCopyPasteContent { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
|
AllowUserCopyPasteContentForAccessibility
Gets or sets the permissions for users to extract or 'copy & paste' content (text and images) from the PDF document for accessibility.
Declaration
public bool AllowUserCopyPasteContentForAccessibility { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
|
AllowUserEdits
Gets or sets the permissions for users edit the PDF document. The features to edit the document depends entirely on the PDF client software used by the end user.
If editing rights are restricted, then the OwnerPassword must be set for the security measure to take effect.
Declaration
public PdfEditSecurity AllowUserEdits { get; set; }
Property Value
| Type | Description |
|---|---|
| PdfEditSecurity | The PdfEditSecurity value for user edit security. |
AllowUserFormData
Gets or sets the permissions for users to fill-in (enter data into) forms in the PDF document.
If
AllowUserFormData is set false, the OwnerPassword must be set for the security
measure to take effect.
Note. If you want to make the form readonly in Adobe Acrobat Reader please call MakePdfDocumentReadOnly(String) method or set AllowUserEdits to NoEdit and set OwnerPassword.
Declaration
public bool AllowUserFormData { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
|
AllowUserPrinting
Gets or sets the permissions for users to print the PDF document.
If print rights are restricted, then the OwnerPassword must be set for the security measure to take effect.
Declaration
public PdfPrintSecurity AllowUserPrinting { get; set; }
Property Value
| Type | Description |
|---|---|
| PdfPrintSecurity | The PdfPrintSecurity value for user printing. |
OwnerPassword
Sets the owner password and enables 128Bit encryption of PDF content. An owner password is one used to enable and disable all other security settings.
OwnerPassword must be set to a non empty string value for AllowUserCopyPasteContent, AllowUserAnnotations, AllowUserFormData,s AllowUserPrinting and AllowUserEdits to be restricted.
Declaration
public string OwnerPassword { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
UserPassword
Sets the user password and enables 128Bit encryption of PDF content .
A user password is a password that each user must enter to open or print the PDF document.
Declaration
public string UserPassword { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
Methods
MakePdfDocumentReadOnly(String)
Declaration
public void MakePdfDocumentReadOnly(string OwnerPassword)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | OwnerPassword |
RemovePasswordsAndEncryption(Boolean)
Removes all user and owner password security for a PDF document. Also disables content encryption.
Content is encrypted at 128 bit. Copy and paste of content is disallowed. Annotations and form editing are disabled.
Remove all digital signatures from the PDF document. (Recommended, since they will become invalidated anyway.)Declaration
public void RemovePasswordsAndEncryption(bool RemoveSignatures = true)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Boolean | RemoveSignatures |