Cómo establecer contraseñas y permisos en un PDF

Chaknith Bin
Chaknith Bin
12 de febrero, 2023
Actualizado 10 de diciembre, 2024
Compartir:
This article was translated from English: Does it need improvement?
Translated
View the article in English

La protección mediante contraseña consiste en cifrar el documento para restringir el acceso no autorizado. Normalmente incluye dos tipos de contraseñas: la contraseña de usuario (o contraseña de apertura), necesaria para abrir el documento, y la contraseña de propietario (o contraseña de permisos), que controla los permisos para editar, imprimir y otras acciones.

IronPDF soporta todo lo que necesita para Contraseñas y Permisos para sus archivos PDF existentes y nuevos. Se pueden aplicar configuraciones granulares de metadatos y seguridad, lo que incluye la capacidad de limitar los documentos PDF para que no se puedan imprimir, sean de sólo lectura y estén encriptados; se admite el cifrado de 128 bits, el descifrado y la protección mediante contraseña.

Comience con IronPDF

Comience a usar IronPDF en su proyecto hoy con una prueba gratuita.

Primer Paso:
green arrow pointer



Establecer una contraseña para un PDF

Tenemos un archivo PDF de ejemplo que queremos proteger usando IronPDF. Ejecutemos el siguiente código para añadir una contraseña al PDF. En este ejemplo, usaremos la contraseña 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")
$vbLabelText   $csharpLabel

El resultado es el siguiente PDF que puedes ver escribiendo la contraseña password123.

Abrir un PDF con contraseña

Esta sección describe cómo abrir un PDF que tiene contraseña. El método PdfDocument.FromFile tiene un segundo parámetro opcional que es la contraseña. Introduzca la contraseña correcta en este parámetro para abrir el 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
$vbLabelText   $csharpLabel

Configuración avanzada de seguridad y permisos

El objeto PdfDocument también tiene campos de MetaData que puede establecer, como Author y ModifiedDate. También puede desactivar las Anotaciones de usuario, la Impresión de usuario y muchas más, como se muestra a continuación:

: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")
$vbLabelText   $csharpLabel

La configuración de permisos está relacionada con la contraseña del documento y se comporta de la siguiente manera. Por ejemplo, establecer la propiedad AllowUserCopyPasteContent en falso está destinado a prevenir la copia/pega de contenido:

  • No se ha establecido contraseña: Sin una contraseña, la copia/pegado de contenido permanece bloqueada.
  • Contraseña de usuario establecida: Cuando se establece una contraseña de usuario, ingresar la contraseña correcta permitirá copiar/pegar contenido.
  • Contraseña de propietario establecida: Cuando se establece una contraseña de propietario, ingresar solo la contraseña de usuario no desbloqueará la función de copiar/pegar. No obstante, si introduce la contraseña de propietario correcta, podrá copiar y pegar el contenido.
    Permisos de ventana

    Un artículo estrechamente relacionado trata de los metadatos predefinidos y personalizados. Aprenda más siguiendo este enlace: "Cómo Configurar y Editar los Metadatos de un PDF."

Chaknith Bin
Ingeniero de software
Chaknith trabaja en IronXL e IronBarcode. Tiene una gran experiencia en C# y .NET, ayudando a mejorar el software y a apoyar a los clientes. Sus conocimientos de las interacciones con los usuarios contribuyen a mejorar los productos, la documentación y la experiencia general.