Aprendamos a proteger nuestros documentos del acceso no autorizado. Anteriormente discutimos agregar marcas de agua de texto e imagen a los documentos para evitar cualquier uso ilegal. En este artículo, veremos cómo agregar protección con contraseña a documentos PDF para bloquearlos usando C#. Además, cambiaremos la contraseña existente y también aprenderemos a eliminar la contraseña para desbloquear el PDF.

A continuación se tratan los siguientes temas:
- .NET API para protección con contraseña de archivos PDF
- Bloquear archivos PDF agregando contraseña
- Cambiar contraseña de PDF en C#
- Cómo eliminar la contraseña de PDF - Desbloquear PDF
API .NET para bloquear y desbloquear archivos PDF
Para bloquear y desbloquear documentos, usaremos GroupDocs.Merger for .NET. Esta API permite agregar, cambiar y eliminar funciones de seguridad de contraseña para los documentos dentro de las aplicaciones .NET. Junto con la protección y desprotección de documentos PDF, la API ofrece muchas más funciones, como fusionar y dividir, que se mencionan en la documentación.
Puede descargar el instalador DLL o MSI desde la sección de descargas o instalar la API en su aplicación .NET a través de NuGet.
PM> Install-Package GroupDocs.Merger
Agregar contraseña a PDF en C# - Bloquear PDF

Comencemos agregando protección al archivo bloqueándolo con la contraseña. Los siguientes pasos muestran cómo agregar seguridad con contraseña a los documentos PDF usando C#.
- Defina la contraseña usando la clase AddPasswordOptions.
- Cargue el archivo PDF usando la clase Merger.
- Bloquee el archivo agregando una contraseña usando el método AddPassword.
- Guarde el archivo protegido utilizando el método Guardar.
El siguiente código C# agrega la contraseña al archivo PDF por seguridad.
/*
* Agregue protección con contraseña al documento PDF usando C#
*/
string filePath = @"path/document.pdf";
AddPasswordOptions addOptions = new AddPasswordOptions("mySECRETpassWORD");
using (Merger merger = new Merger(filePath))
{
merger.AddPassword(addOptions);
merger.Save(@"path/protected-document.pdf");
}
Aquí está la salida del código anterior. Cuando intente abrir el archivo PDF, el editor o el visor le pedirá la contraseña para demostrar su autoridad.

Actualizar la contraseña existente de los archivos PDF en C#
¡Ups! Su contraseña probablemente esté expuesta. Cambiémoslo rápidamente programáticamente con el nuevo y difícil. Los siguientes pasos le permiten cambiar la contraseña actual de sus archivos PDF dentro de su aplicación .NET en C#.
- Prepara las opciones de carga usando la contraseña actual.
- Prepare las opciones de actualización usando la nueva contraseña.
- Cargue el documento PDF usando la clase Merger y las opciones de carga.
- Cambie la contraseña existente utilizando el método UpdatePassword.
- Guarde el archivo bloqueado habiendo cambiado la contraseña utilizando el método Guardar.
Aquí está el fragmento de código que cambia la contraseña actual del documento PDF.
/*
* Actualice la contraseña del documento PDF protegido usando C#
*/
string filePath = @"path/protected-document.pdf";
LoadOptions loadOptions = new LoadOptions("mySECRETpassWORD");
UpdatePasswordOptions updateOptions = new UpdatePasswordOptions("TOPSECRET_pa22WORD");
using (Merger merger = new Merger(filePath, loadOptions))
{
merger.UpdatePassword(updateOptions);
merger.Save(@"path/pwd-changed-document.pdf");
}
Eliminar la contraseña de los archivos PDF en C# - Desbloquear PDF

Ahora, creo que no necesitas seguridad, por eso quieres quitar la contraseña. Primero abramos el archivo y luego eliminemos su contraseña para que todos puedan acceder a él fácilmente. Los siguientes pasos muestran cómo desbloquear el archivo PDF eliminando su contraseña usando C#.
- Prepara las opciones de carga usando la contraseña del archivo.
- Cargue el documento PDF utilizando la clase Merger y las opciones de carga.
- Elimine la contraseña existente utilizando el método RemovePassword.
- Guarde el archivo desbloqueado usando el método Guardar.
El siguiente fragmento de código C# desbloquea el archivo PDF eliminando su contraseña existente, por lo que cualquier persona puede acceder a él sin autorización.
/*
* Eliminar la protección con contraseña del documento PDF usando C#
*/
string filePath = @"path/protected-document.pdf";
LoadOptions loadOptions = new LoadOptions("mySECRETpassWORD");
using (Merger merger = new Merger(filePath, loadOptions))
{
merger.RemovePassword();
merger.Save(@"path/no-pwd-document.pdf");
}
Conclusión
Resumamos lo que aprendimos hoy. Comenzamos con el documento PDF simple y agregamos protección con contraseña. Luego cambiamos la contraseña existente de ese archivo PDF. Al final, aprendimos cómo eliminar la contraseña de nuestros documentos PDF. Ahora puede pasar a crear su propia aplicación de protección de contraseñas o de eliminación de contraseñas mediante la API de .NET.
Para obtener más información sobre GroupDocs.Merger for .NET, visite la documentación. Para consultas, contáctenos a través del foro.
Obtenga una licencia de API gratuita
Puede obtener una licencia temporal gratuita para usar la API sin las limitaciones de evaluación.