Apprenons à protéger les fichiers de feuille de calcul contre tout accès non autorisé. Auparavant, nous avons discuté d’ajouter des filigranes de texte et d’image aux feuilles de calcul Excel pour éviter toute utilisation illégale. Dans cet article, nous verrons comment protéger par mot de passe un fichier Excel à l’aide de C#. De plus, nous modifierons le mot de passe existant et apprendrons également à supprimer le mot de passe pour déverrouiller les fichiers Excel.

Protéger par programme les fichiers Excel avec un mot de passe - Verrouiller Déverrouiller

Les sujets suivants sont abordés ci-dessous :

API .NET pour verrouiller et déverrouiller des fichiers Excel

Pour verrouiller et déverrouiller des documents, nous utiliserons GroupDocs.Merger for .NET. Cette API permet d’ajouter, de modifier et de supprimer des fonctionnalités de sécurité par mot de passe pour les documents dans les applications .NET. Outre la protection et la déprotection des feuilles de calcul Excel, l’API fournit de nombreuses autres fonctionnalités telles que la fusion et le fractionnement qui sont mentionnées dans la documentation.

Vous pouvez télécharger les DLL ou le programme d’installation MSI à partir de la section des téléchargements ou installer l’API dans votre application .NET via NuGet.

PM> Install-Package GroupDocs.Merger

Mot de passe Protéger les fichiers Excel à l’aide de C# - Verrouiller les feuilles de calcul

Verrouiller la feuille de calcul avec un mot de passe

Commençons par ajouter une protection au fichier en le verrouillant avec le mot de passe. Les étapes suivantes montrent comment ajouter une sécurité par mot de passe aux feuilles de calcul Excel à l’aide de C#.

  • Définissez le mot de passe à l’aide de la classe AddPasswordOptions.
  • Chargez le fichier Excel (XLS/XLSX) en utilisant la classe Merger.
  • Verrouillez le fichier en ajoutant un mot de passe à l’aide de la méthode AddPassword.
  • Enregistrez la feuille de calcul protégée à l’aide de la méthode Save.

Le code C# suivant ajoute le mot de passe au fichier Excel pour des raisons de sécurité.

/*
 * Ajouter une protection par mot de passe aux fichiers de feuilles de calcul Excel (XLS/XLSX) à l'aide de C#
 */
string filePath = @"path/spreadsheet.xlsx";

AddPasswordOptions addOptions = new AddPasswordOptions("mySECRETpassWORD");

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

Voici la sortie du code ci-dessus. Lorsque vous essayez d’ouvrir le fichier de feuille de calcul, l’éditeur ou le visualiseur vous demandera le mot de passe pour prouver votre autorité.

Entrez le mot de passe pour le fichier protégé

Mettre à jour le mot de passe existant des fichiers Excel à l’aide de C#

Votre mot de passe est-il vraiment exposé ? Soyez plus prudent la prochaine fois. Changeons-le rapidement par programmation avec le nouveau et un peu difficile. Les étapes suivantes vous permettent de modifier le mot de passe actuel de votre fichier de feuille de calcul dans votre application .NET en C#.

  • Tout d’abord, préparez les Options de chargement en utilisant le mot de passe actuel.
  • Ensuite, préparez les Options de mise à jour du mot de passe en utilisant le nouveau mot de passe.
  • Ensuite, chargez le fichier XLS/XLSX en utilisant la classe Merger et les options de chargement.
  • Maintenant, modifiez le mot de passe existant à l’aide de la méthode UpdatePassword.
  • Enfin, enregistrez le fichier verrouillé avec le mot de passe modifié à l’aide de la méthode Save.

Voici l’extrait de code pour changer le mot de passe actuel du fichier de feuille de calcul.

/*
 * Modifier le mot de passe des feuilles de calcul Excel protégées à l'aide de C#
 */
string filePath = @"path/protected-spreadsheet.xlsx";

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

Supprimer le mot de passe pour déprotéger les fichiers de feuille de calcul Excel à l’aide de C# - Déverrouiller XLS/XLSX

Feuille de calcul déverrouillée - Mot de passe supprimé

Si vos feuilles de calcul sont désormais entre de bonnes mains, vous pouvez supprimer le mot de passe pour y accéder facilement. Les étapes suivantes montrent comment déverrouiller le fichier Excel en supprimant son mot de passe à l’aide de C#.

  • Préparez les Options de chargement en utilisant le mot de passe du fichier.
  • Chargez le fichier de feuille de calcul à l’aide de la classe Merger et des options de chargement.
  • Supprimez le mot de passe existant à l’aide de la méthode RemovePassword.
  • Enregistrez le fichier déverrouillé à l’aide de la méthode Save.

L’extrait de code C# suivant déverrouille le fichier Excel en supprimant son mot de passe existant, de sorte que n’importe qui peut y accéder sans autorisation.

/*
 * Supprimer la protection par mot de passe des feuilles de calcul Excel à l'aide de C#
 */
string filePath = @"path/protected-spreadsheet.xlsx";

LoadOptions loadOptions = new LoadOptions("mySECRETpassWORD");

using (Merger merger = new Merger(filePath, loadOptions))
{
    merger.RemovePassword();
    merger.Save(@"path/unlocked-spreadsheet.xlsx");
}

Conclusion

Concluons ce que nous avons appris aujourd’hui. Nous avons commencé avec le simple fichier de feuille de calcul Excel (XLS/XLSX) et avons ajouté une protection par mot de passe. Ensuite, nous avons changé le mot de passe existant de cette feuille de calcul protégée. Au final, nous avons appris à supprimer le mot de passe du fichier protégé pour déprotéger la feuille de calcul Excel. Vous pouvez maintenant créer votre propre application de protection et de suppression de mot de passe à l’aide de l’API .NET.

Pour en savoir plus sur GroupDocs.Merger for .NET, consultez la documentation. Pour toute question, contactez-nous via le forum.

Obtenez une licence API gratuite

Vous pouvez obtenir une licence temporaire gratuite pour utiliser l’API sans les limitations d’évaluation.

Voir également