USO DE IRONPDF PARA JAVA

Cómo proteger un PDF con contraseña en Java

Actualizado 23 de febrero, 2023
Compartir:

El Formato de Documento Portátil, conocido como PDF, es el formato digital de transferencia de datos más utilizado en todo el mundo. Desde la introducción de los archivos PDF, ha sido el formato clave para guardar y recuperar datos confidenciales sin pérdida de formato. Transfiere datos de forma segura y eficaz.

Una de las características importantes de los PDF es que pueden protegerse con contraseña mediante una clave de cifrado. Esto significa que sólo los usuarios autorizados pueden abrir el archivo y ver su contenido. Esto aumenta la seguridad y protege también los derechos de los propietarios.

Java es un popular lenguaje de programación independiente de la plataforma. Se utiliza para crear aplicaciones que puedan ejecutarse en diferentes plataformas sin ningún problema. Esta función de Java es bastante similar a la de PDF, ya que también es independiente de la plataforma. Con la necesidad de almacenar datos de forma segura y formateada, los programas desarrollados en Java también requieren guardar datos y PDF es una gran opción.

Aquí, vamos a utilizar IronPDF para trabajar con documentos PDF y también proteger los archivos nuevos con contraseña de usuario.

IronPDF - Biblioteca PDF Java

IronPDF es una biblioteca Java para trabajar con documentos PDF. Ofrece una amplia gama de funciones para generar y manipular PDF, incluida la posibilidad de añadir texto, imágenes y otros tipos de contenido, y controlar el diseño y el formato del documento. También ofrece una serie de funciones importantes para proteger el contenido de los PDF, como protección por contraseña.

Pasos para proteger PDF con contraseña en aplicaciones Java

Requisitos previos para la configuración del proyecto

Para utilizar IronPDF para trabajar con archivos PDF en un proyecto Java Maven, tendrá que asegurarse de que tiene los siguientes requisitos previos:

  1. Kit de desarrollo Java (JDK): Debe tener instalada en su ordenador una versión actual de Java. Si no dispone de archivos JAR, descargue el último JDK de la página Sitio web de Oracle.
  2. Maven: Maven es una importante herramienta de automatización de construcción para proyectos Java que se requiere para gestionar el proyecto y sus dependencias. Descargue el archivo Maven o JAR de Sitio web de Apache Maven si no lo tienes instalado.
  3. Biblioteca Java IronPDF: También necesitará la biblioteca Java IronPDF que se añadirá a su proyecto Maven como dependencia. Esto puede hacerse añadiendo la siguiente dependencia al archivo pom.xml de tu proyecto. Maven la descargará e instalará automáticamente en el proyecto.

     ``xml-mvn-install-ao
    com.ironsoftwareironpdf2022.11.1
  4. Otra dependencia necesaria es Slf4j. Añadir dependencia Slf4j en el archivo pom.xml.
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-simple</artifactId>
        <version>2.0.3</version>
    </dependency>
XML

Una vez que haya descargado e instalado el programa para proteger PDF con contraseña en Java, estará listo para utilizar IronPDF para proteger archivos PDF con contraseña.

Pasos importantes antes de escribir código

En primer lugar, debemos importar las clases necesarias de IronPDF en el código Java. Añade el siguiente código en la parte superior del archivo "Main.java":

import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.metadata.MetadataManager;
import com.ironsoftware.ironpdf.security.PdfPrintSecurity;
import com.ironsoftware.ironpdf.security.SecurityManager;
import com.ironsoftware.ironpdf.security.SecurityOptions;

import java.io.IOException;
import java.nio.file.Paths;
import java.util.Date;
JAVA

Ahora, en el método principal, introduzca su clave de licencia utilizando el método IronPDF setLicenseKey.

License.setLicenseKey("Your license key");
JAVA

Abrir un documento PDF cifrado

El siguiente fragmento de código abrirá un documento cifrado con la contraseña "contraseña":

PdfDocument pdf = PdfDocument.fromFile(Paths.get("encrypted.pdf", "secretPassword"));
JAVA

En el fragmento de código anterior, abrí un archivo cifrado y la contraseña del archivo PDF era "contraseña".

El documento PDF cifrado tiene el siguiente aspecto:

Cómo proteger con contraseña documentos PDF - Figura 1: Abrir un documento PDF cifrado

Abrir un documento PDF cifrado con contraseña

Cifrar documento PDF con protección por contraseña

Vamos a cambiar la contraseña de propietario del archivo "encrypted.pdf" que hemos abierto en el paso anterior. El siguiente código ayuda a lograr esta tarea:

//  Cambiar o establecer la contraseña del propietario del documento
SecurityManager securityManager = pdf.getSecurity();
securityManager.removePasswordsAndEncryption();
securityManager.setPassword("secret-key");
JAVA

Primero eliminamos la contraseña usando el método removePasswordsAndEncryption, y luego establecemos una nueva contraseña usando el método setPassword.

Guardar documentos PDF protegidos con contraseña

Por último, guarde el documento PDF con la siguiente línea de código:

pdf.saveAs(Paths.get("assets/secured.pdf"));
JAVA

El archivo de salida se abre ahora con la contraseña "clave secreta".

Cómo proteger con contraseña documentos PDF - Figura 2: Documento PDF recién encriptado

El documento PDF del paso anterior se ha vuelto a cifrar con una nueva contraseña.

Editar la configuración de seguridad de archivos

Las opciones de seguridad importantes pueden establecerse fácilmente con IronPDF en Java utilizando la clase de permiso SecurityOptions. El siguiente código hace que el PDF sea de sólo lectura y no permite a los usuarios copiar, pegar e imprimir, y establece contraseñas para el propietario y el usuario.

SecurityOptions securityOptions = new SecurityOptions();
securityOptions.setAllowUserCopyPasteContent(false);
securityOptions.setAllowUserAnnotations(false);
securityOptions.setAllowUserPrinting(PdfPrintSecurity.NO_PRINT);
securityOptions.setAllowUserFormData(false);

SecurityManager securityManager = pdf.getSecurity();
securityManager.setSecurityOptions(securityOptions);
JAVA

Esto establecerá todas las opciones de seguridad necesarias del documento PDF. Esto puede verse en el siguiente resultado:

Cómo proteger documentos PDF con contraseña - Figura 3: Nueva configuración de seguridad de PDF

En este caso, vemos que las opciones que especificamos mediante la opción Opciones de seguridad se han aplicado con éxito a nuestro PDF.

Resumen

En este artículo, vimos cómo Java abre un documento PDF existente y añade protección por contraseña utilizando Biblioteca IronPDF. IronPDF facilita mucho el trabajo con archivos PDF en Java. Tanto si desea crear un nuevo documento como crear un visor de PDF, IronPDF le ayuda a realizar esta tarea con una sola línea de código. El motor de IronPDF es muy adecuado para el lenguaje de programación Java, ya que es rápido y consume poca memoria. Con IronPDF, puede establecer la contraseña de usuario junto con la contraseña de propietario. Proporciona opciones de protección total junto con otras funciones como convertir a PDF desde otros formatos y dividir y fusión de documentos.

IronPDF puede utilizarse gratuitamente en una prueba gratuita y puede ser con licencia para uso comercial. Su paquete lite parte de $749. Descargar descargar IronPDFe inténtalo.

< ANTERIOR
Biblioteca Java PDF Renderer (Tutorial para desarrolladores)
SIGUIENTE >
Cómo convertir una matriz de bytes a PDF en Java

¿Listo para empezar? Versión: 2024.3 recién publicada

Descarga gratuita de Maven Ver licencias >