如何设置PDF的密码和权限

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

密码保护包括对文档进行加密,以限制未经授权的访问。 通常包括两种类型的密码:用户密码。(或打开密码)打开文档所需的密码,以及所有者密码(或权限密码),用于控制编辑、打印和其他操作的权限。

IronPDF支持您现有和新PDF文件所需的所有密码和权限功能。 可以应用细粒度的元数据和安全设置,包括限制 PDF 文档不可打印、只读和加密的功能; 支持 128 位加密、解密和密码保护。

开始使用IronPDF

立即在您的项目中开始使用IronPDF,并享受免费试用。

第一步:
green arrow pointer



为PDF设置密码

我们有PDF 文件示例我们想用IronPDF来保护的内容。 让我们执行以下代码以为PDF添加密码。 在这个例子中,我们将使用密码 password123

:path=/static-assets/pdf/content-code-examples/how-to/pdf-permissions-passwords-add-password.cs
using IronPdf;

ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Secret Information:</h1> Hello World");

// Password to edit the pdf
pdf.SecuritySettings.OwnerPassword = "123password";

// Password to open the pdf
pdf.SecuritySettings.UserPassword = "password123";

pdf.SaveAs("protected.pdf");
Imports IronPdf

Private renderer As New ChromePdfRenderer()

Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Secret Information:</h1> Hello World")

' Password to edit the pdf
pdf.SecuritySettings.OwnerPassword = "123password"

' Password to open the pdf
pdf.SecuritySettings.UserPassword = "password123"

pdf.SaveAs("protected.pdf")
VB   C#

输入密码password123,就可以查看下面的 PDF 文件。

打开一个有密码的PDF文件

本节介绍如何打开有密码的 PDF。 PdfDocument.FromFile 方法有一个第二个可选参数,即密码。 请将正确的密码提供给此参数以打开PDF。

:path=/static-assets/pdf/content-code-examples/how-to/pdf-permissions-passwords-open-password.cs
using IronPdf;

var pdf = PdfDocument.FromFile("protected.pdf", "password123");

//... perform PDF-tasks

pdf.SaveAs("protected_2.pdf"); // Saved as another file
Imports IronPdf

Private pdf = PdfDocument.FromFile("protected.pdf", "password123")

'... perform PDF-tasks

pdf.SaveAs("protected_2.pdf") ' Saved as another file
VB   C#

高级安全与权限设置

PdfDocument 对象还包括您可以设置的元数据字段,例如 AuthorModifiedDate。 您还可以禁用用户注释、用户打印等功能,如下所示:

:path=/static-assets/pdf/content-code-examples/how-to/pdf-permissions-passwords-advanced.cs
using IronPdf;

// Open an Encrypted File, alternatively create a new PDF from HTML
var pdf = PdfDocument.FromFile("protected.pdf", "password123");

// Edit file security settings
// The following code makes a PDF read only and will disallow copy & paste and printing
pdf.SecuritySettings.RemovePasswordsAndEncryption();
pdf.SecuritySettings.MakePdfDocumentReadOnly("secret-key");
pdf.SecuritySettings.AllowUserAnnotations = false;
pdf.SecuritySettings.AllowUserCopyPasteContent = false;
pdf.SecuritySettings.AllowUserFormData = false;
pdf.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights;

// Save the secure PDF
pdf.SaveAs("secured.pdf");
Imports IronPdf

' Open an Encrypted File, alternatively create a new PDF from HTML
Private pdf = PdfDocument.FromFile("protected.pdf", "password123")

' Edit file security settings
' The following code makes a PDF read only and will disallow copy & paste and printing
pdf.SecuritySettings.RemovePasswordsAndEncryption()
pdf.SecuritySettings.MakePdfDocumentReadOnly("secret-key")
pdf.SecuritySettings.AllowUserAnnotations = False
pdf.SecuritySettings.AllowUserCopyPasteContent = False
pdf.SecuritySettings.AllowUserFormData = False
pdf.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights

' Save the secure PDF
pdf.SaveAs("secured.pdf")
VB   C#

权限设置与文档密码相关,并按以下方式行为。 例如,将AllowUserCopyPasteContent属性设置为false旨在防止复制/粘贴内容:

  • 未设置密码:未设置密码时,复制/粘贴内容仍然被阻止。
  • 用户密码设置:设置用户密码后,输入正确密码将允许复制/粘贴内容。
  • 设置所有者密码:设置所有者密码后,仅输入用户密码将无法解锁复制/粘贴功能。 但是输入正确的所有者密码将允许复制/粘贴内容。
    权限窗口

    相关文章讨论了预定义和自定义元数据。 了解更多信息,请访问此链接:如何设置和编辑 PDF 元数据."