Analicemos cómo podemos restringir el acceso a los documentos de Word protegiéndolos con contraseña. Ya hemos aprendido a bloquear y desbloquear archivos PDF y PowerPoint. En este artículo, veremos cómo proteger con contraseña un documento de Word usando C#. Además, aprenderemos a eliminar la contraseña para desbloquear documentos de Word y, por último, cómo cambiar la contraseña existente de los archivos DOC y DOCX dentro de las aplicaciones .NET.

Proteger con contraseña documentos de Word usando C#

A continuación se tratan los siguientes temas:

.NET API para proteger con contraseña documentos de Word

GroupDocs.Merger proporciona la API .NET que permite bloquear y desbloquear documentos de Word dentro de las aplicaciones .NET. Usaremos GroupDocs.Merger para .NET para agregar, cambiar y eliminar la protección con contraseña. Además de proteger y desproteger los documentos de Word, se puede hacer mucho más con los documentos de Word mediante la API. Documentación está disponible que explica funciones detalladas, formatos de archivo admitidos y mucho más.

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

Proteger con contraseña el documento de Word en C#

Documento de Word bloqueado mediante programación

Analicemos cómo agregar una contraseña a los documentos de Word y protegerlos con contraseña. Los siguientes pasos muestran cómo bloquear un documento de Word (DOC/DOCX) con una contraseña usando C#.

  • Configure las opciones de contraseña mediante AddPasswordOptions.
  • Cargar el documento usando la clase Merger.
  • Agregue la contraseña para bloquear el documento de Word cargado usando el método AddPassword.
  • Guarde el archivo protegido con contraseña utilizando el método Guardar.

El siguiente fragmento de código muestra cómo proteger con contraseña un documento de Word usando C#.

/*
 * Proteger con contraseña documentos de Word usando C#
 */
string filePath = @"path/document.docx";

AddPasswordOptions addOptions = new AddPasswordOptions("mySECRETpassWORD");

using (Merger merger = new Merger(filePath))
{
    merger.AddPassword(addOptions);
    merger.Save(@"path/protected-document.docx");
}

Ahora, cuando intente abrir el documento protegido con contraseña, el visor y editor de documentos le pedirá la contraseña para abrir el archivo.

Ingrese la contraseña para abrir el documento de Word protegido

Cambiar la contraseña existente del documento de Word en C#

Es posible que su antigua contraseña haya sido demasiado común como para ser adivinada. Cambiémoslo y tengamos más cuidado la próxima vez. Los siguientes pasos guían cómo cambiar la contraseña existente del documento de Word usando C#.

  • Prepare las LoadOptions usando la contraseña actual.
  • Defina UpdatePasswordOptions usando la nueva contraseña.
  • Cargue el archivo DOC/DOCX usando la clase Merger.
  • Cambia la contraseña usando el método UpdatePassword.
  • Guarde el documento protegido con una nueva contraseña utilizando el método Guardar.

Aquí está el fragmento de código C# que cambia la contraseña existente de un archivo DOCX.

/*
 * Cambiar la contraseña de los documentos DOC/DOCX protegidos en C#
 */
string filePath = @"path/protected-document.docx";

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.docx");
}

Quitar la contraseña de un documento de Word en C#

Documento de Word desbloqueado programáticamente

Ahora eliminemos la protección de los documentos que ya no son confidenciales. Primero, abra el documento de Word y luego elimine la contraseña para desbloquearlo. Los siguientes pasos muestran cómo desbloquear el documento de Word eliminando la contraseña usando C#.

  • Use la contraseña existente del documento para preparar LoadOptions.
  • Cargar el documento de Word usando la clase Merger.
  • Eliminar su contraseña utilizando el método RemovePassword.
  • Guarde el archivo desbloqueado en formato DOC/DOCX llamando al método Guardar.

El siguiente ejemplo de código desbloquea el documento de Word de formato DOCX eliminando su contraseña usando C#

/*
 * Eliminar la contraseña del documento de Word usando C#
 */
string filePath = @"path/protected-document.docx";

LoadOptions loadOptions = new LoadOptions("mySECRETpassWORD");

using (Merger merger = new Merger(filePath, loadOptions))
{
    merger.RemovePassword();
    merger.Save(@"path/no-pwd-document.docx");
}

Conclusión

Resumamos lo que aprendimos hoy. Usando un simple documento de Word, primero, lo hicimos protegido con contraseña usando C#. A continuación, aprendimos a cambiar la contraseña existente de un documento de Word. Por último, aprendimos cómo eliminar la contraseña del archivo de Word para desbloquearlo dentro de cualquier aplicación .NET.

Para obtener más información sobre GroupDocs.Merger para .NET, visite su documentación para comenzar a crear sus propias aplicaciones de protección de documentos o eliminación de contraseñas para varios formatos de documentos admitidos. 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.

Ver también