desproteger hoja de excel

Cómo desproteger Excel (XLS, XLSX) usando C# .NET

Las hojas de trabajo de Excel se usan comúnmente para administrar y analizar datos en varias industrias. Sin embargo, hay momentos en que ciertos datos o fórmulas deben protegerse de modificaciones accidentales o intencionales. Aquí es donde entra en juego la protección con contraseña. La protección con contraseña permite a los usuarios restringir el acceso o las capacidades de edición de su hoja de cálculo de Excel. Si bien esta característica brinda seguridad a sus datos, también puede causar frustración cuando necesita realizar cambios en una hoja de trabajo protegida. En este artículo, le mostraremos cómo desproteger hojas de cálculo de Excel utilizando C# .NET, lo que le otorgará control total sobre sus datos una vez más.

API para desproteger Excel

Aspose.Cells Cloud es una API potente y versátil que le permite trabajar con archivos de Excel. También ofrece muchos beneficios, incluida la capacidad de desproteger las hojas de cálculo de Excel. Con su compatibilidad multiplataforma, integración perfecta, seguridad robusta y rentabilidad, es una excelente opción para los desarrolladores que buscan trabajar con archivos de Excel en la nube. Además de su función de desprotección, Aspose.Cells Cloud ofrece una gama de otros beneficios, que incluyen:

  • Compatibilidad multiplataforma
  • Integración perfecta: integre con Dropbox, Google Drive y Amazon S3, lo que le permite administrar fácilmente sus archivos de Excel.
  • Seguridad sólida: la autenticación OAuth2 y el cifrado SSL garantizan la seguridad de los datos.
  • Rentable: opciones de precios flexibles, donde solo paga por los servicios que utiliza.

Ahora, para usar Aspose.Cells Cloud SDK para .NET (que es un contenedor de Aspose.Cells Cloud), busque Aspose.Cells-Cloud en el administrador de paquetes NuGet y haga clic en el botón “Agregar paquete”. También debe crear una cuenta en Dashboard con una dirección de correo electrónico válida.

Desproteger la hoja de Excel usando C#

Para eliminar la contraseña de la hoja de cálculo de Excel, intente utilizar el siguiente fragmento de código.

// Para obtener ejemplos completos y archivos de datos, vaya a 
https://github.com/aspose-cells-cloud/aspose-cells-cloud-dotnet/

// Obtenga las credenciales del cliente de https://dashboard.aspose.cloud/
string clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
string clientID = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
        
// cree una instancia de CellsApi mientras pasa ClientID y ClientSecret
CellsApi cellsInstance = new CellsApi(clientID, clientSecret);

// primer libro de trabajo de Excel en la unidad
string input_Excel = "protected.xlsx";

try
{
    // Crear una instancia que contenga información de descifrado
    WorkbookEncryptionRequest protection = new WorkbookEncryptionRequest();
    protection.Password = "123456";
    protection.KeyLength = 128;
    protection.EncryptionType = "XOR";
    
    // lea el archivo de Excel y cárguelo en el almacenamiento en la nube
    cellsInstance.UploadFile(input_Excel, File.OpenRead(input_Excel));

    // inicializar la operación de desbloqueo del libro
    var response = cellsInstance.CellsWorkbookDeleteDecryptDocument(input_Excel, protection, null);

    // imprimir mensaje de éxito si la concatenación es exitosa
    if (response != null && response.Equals("OK"))
    {
        Console.WriteLine("Workbook unlock operation successful !");
        Console.ReadKey();
    }
}
catch (Exception ex)
{
    Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}

A continuación se especifican los detalles sobre el fragmento de código anterior:

CellsApi cellsInstance = new CellsApi(clientID, clientSecret);

Cree un objeto de CellsApi mientras pasa las credenciales del cliente como argumentos.

WorkbookEncryptionRequest protection = new WorkbookEncryptionRequest();
protection.Password = "123456";
protection.KeyLength = 128;
protection.EncryptionType = "XOR";

Cree una instancia de WorkbookEncryptionRequest que contenga información de descifrado del libro de trabajo

cellsInstance.UploadFile(input_Excel, File.OpenRead(input_Excel));

Cargue Excel cifrado en el almacenamiento en la nube.

var response = cellsInstance.CellsWorkbookDeleteDecryptDocument(input_Excel, protection, folder);

Llame a la API para desproteger Excel y guardar la salida en el almacenamiento en la nube.

El Excel cifrado utilizado en el ejemplo anterior se puede descargar desde protected.xlsx.

Desbloquee la hoja de Excel usando los comandos cURL

Acceder a Aspose.Cells Cloud a través de los comandos cURL ofrece una forma flexible y sencilla de trabajar con la API. Con cURL, puede usar Aspose.Cells Cloud con cualquier lenguaje de programación o plataforma que admita cURL, lo que brinda flexibilidad en su entorno de desarrollo. Además, cURL es una herramienta liviana que no requiere ninguna configuración o instalación compleja, lo que facilita que los desarrolladores se integren rápidamente con la API. Por lo tanto, al usar los comandos cURL para interactuar con Aspose.Cells Cloud, puede optimizar sus flujos de trabajo y mejorar la productividad.

Ahora, deberá tener cURL instalado en su sistema y luego generar un token de acceso basado en las credenciales del cliente:

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bb959721-5780-4be6-be35-ff5c3a6aa4a2&client_secret=4d84d5f6584160cbd91dba1fe145db14" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

Use el siguiente comando para cargar la entrada de Excel al almacenamiento en la nube:

curl -v "https://api.aspose.cloud/v3.0/cells/storage/file/{filePath}" \
-X PUT \
-F file=@{localFilePath} \
-H "Content-Type: multipart/form-data" \
-H "Authorization: Bearer {accessToken}"

Reemplace {filePath} con la ruta donde desea almacenar el archivo en el almacenamiento en la nube, {localFilePath} con la ruta de un Excel en su sistema local y {accessToken} con su token de acceso a Aspose Cloud (generado arriba).

Finalmente, ejecute el siguiente comando para desproteger la hoja de Excel en línea:

curl -v "https://api.aspose.cloud/v3.0/cells/{excelFile}/encryption" \
-X DELETE \
-H  "accept: application/json" \
-H  "authorization: Bearer {accessToken}" \
-H  "Content-Type: application/json" \
-d "{  \"EncryptionType\": \"XOR\",  \"KeyLength\": 128,  \"Password\": \"123456\"}"

Reemplace {excelFile} con el nombre del archivo de Excel encriptado del almacenamiento en la nube, {accessToken} con el token de acceso generado anteriormente. Después de una operación exitosa, el Excel desprotegido se almacenará en el mismo almacenamiento en la nube.

Observaciones finales

En este artículo, hemos discutido cómo desproteger hojas de cálculo de Excel usando Aspose.Cells Cloud, una API que proporciona una manera fácil de trabajar con archivos de Excel en la nube. También hemos destacado los beneficios de usar Aspose.Cells Cloud, incluida la compatibilidad entre plataformas, la integración perfecta, la seguridad robusta y la rentabilidad. Además, hemos discutido las ventajas de acceder a Aspose.Cells Cloud a través de comandos cURL, como flexibilidad, simplicidad y productividad mejorada. Siguiendo los pasos descritos en este artículo, puede desproteger fácilmente las hojas de cálculo de Excel y automatizar el proceso de administración de sus archivos de Excel. En general, Aspose.Cells Cloud y cURL brindan una poderosa combinación de herramientas para los desarrolladores que buscan trabajar con archivos de Excel en la nube.

Enlaces útiles

Artículos recomendados

Visite los siguientes enlaces para obtener más información sobre: