Oleh kerana organisasi semakin bergantung kepada Excel untuk menyimpan dan berkongsi data sensitif, memastikan bahawa maklumat ini kekal dilindungi adalah perkara utama. Aspose.Cells LowCode Spreadsheet Locker menyediakan cara yang mudah untuk melaksanakan langkah-langkah keselamatan yang kukuh dengan usaha pengekodan minimum.

Artikel ini meneroka bagaimana untuk menggunakan perpustakaan Aspose.Cells untuk memastikan dokumen Excel, meliputi segala-galanya dari perlindungan tahap fail asas kepada strategi pelbagai lapisan yang lebih maju dan teknik pemprosesan batch.

Ciri-ciri utama Aspose.Cells LowCode Spreadsheet Locker

  • File-Level Protection: Menyulitkan semua fail untuk mengehadkan akses berdasarkan kata laluan.
  • Worksheet-Level Protection: Mengawal keizinan pengguna pada tahap lembaran kerja untuk keselamatan granular.
  • Perlindungan struktur: Mencegah perubahan yang tidak dibenarkan dalam struktur dan tataletak buku kerja.
  • ** Pemprosesan batch:** Perlindungan automatik melalui pelbagai dokumen Excel dengan cekap.

Perlindungan tahap fail asas

Meningkatkan persekitaran anda

Sebelum menyelam ke dalam kod, pastikan anda mempunyai Aspose.Cells dipasang dalam projek anda. anda boleh menambahnya melalui NuGet Package Manager atau dengan memuat turun perpustakaan secara langsung dari laman web rasmi.

Contoh Kod untuk Perlindungan Tahap Fail Asas

public void ProtectExcelFile(string inputFile, string outputFile, string password)
{
    // Configure loading options
    LowCodeLoadOptions loadOptions = new LowCodeLoadOptions { InputFile = inputFile };
    
    // Configure saving options
    LowCodeSaveOptions saveOptions = new LowCodeSaveOptions {
        OutputFile = outputFile,
        SaveFormat = SaveFormat.Xlsx
    };
    
    // Apply file-level protection
    SpreadsheetLocker.Process(loadOptions, saveOptions, password, null);
}

Subseksyen: Ujian dan Validasi

Selepas melaksanakan perlindungan tahap fail asas, ia adalah penting untuk mengesahkan bahawa fail yang dilindungi tidak boleh diakses tanpa kata laluan yang betul.

Fungsi ujian contoh

public void ValidateFileProtection(string filePath)
{
    try
    {
        // Attempt to open the file with an incorrect password
        new Workbook(filePath, new LoadOptions { Password = "wrongpassword" });
        Console.WriteLine("Warning: File opened with incorrect password!");
    }
    catch (CellsException ex)
    {
        if (ex.Code == ExceptionType.IncorrectPassword)
            Console.WriteLine("Success: Incorrect password rejected.");
        else
            throw;
    }
}

Strategi Perlindungan Lanjutan

Strategi perlindungan pelbagai lapisan

Pelaksanaan strategi perlindungan pelbagai lapisan melibatkan menggabungkan penyulitan peringkat fail dengan pelindung lembaran kerja dan struktur untuk menyediakan keselamatan yang komprehensif.

Contoh Kod untuk Perlindungan Multi-Layer

public void ApplyMultiLayerProtection(string inputFile, string outputFile, string filePassword)
{
    // Configure loading options
    LowCodeLoadOptions loadOptions = new LowCodeLoadOptions { InputFile = inputFile };
    
    using (Workbook workbook = new Workbook(inputFile))
    {
        // Protect workbook structure
        workbook.Settings.WriteProtection.SetPassword("StructurePassword");
        
        // Protect worksheets
        foreach (Worksheet worksheet in workbook.Worksheets)
            worksheet.Protect(ProtectionType.All, "SheetPassword", true);
        
        // Save the intermediate workbook
        workbook.Save("intermediate.xlsx");
    }
    
    LowCodeSaveOptions saveOptions = new LowCodeSaveOptions {
        InputFile = "intermediate.xlsx",
        OutputFile = outputFile,
        SaveFormat = SaveFormat.Xlsx
    };
    
    // Apply file-level encryption
    SpreadsheetLocker.Process(loadOptions, saveOptions, filePassword, null);
    
    if (File.Exists("intermediate.xlsx"))
        File.Delete("intermediate.xlsx");
}

Batch Pemprosesan Dengan Laporan Kemajuan

Untuk senario yang melibatkan sejumlah besar fail Excel, pemprosesan batch boleh secara signifikan mempercepatkan proses perlindungan.

Contoh Kod untuk Perlindungan Batch

public void BatchProtectExcelFiles(string[] inputFiles, string outputDirectory, string password)
{
    if (!Directory.Exists(outputDirectory))
        Directory.CreateDirectory(outputDirectory);
    
    int totalFiles = inputFiles.Length;
    int processedFiles = 0;
    int successCount = 0;
    int failCount = 0;
    
    foreach (string inputFile in inputFiles)
    {
        try
        {
            string fileName = Path.GetFileName(inputFile);
            string outputPath = Path.Combine(outputDirectory, $"Protected_{fileName}");
            
            LowCodeLoadOptions loadOptions = new LowCodeLoadOptions { InputFile = inputFile };
            LowCodeSaveOptions saveOptions = new LowCodeSaveOptions {
                OutputFile = outputPath,
                SaveFormat = SaveFormat.Xlsx
            };
            
            SpreadsheetLocker.Process(loadOptions, saveOptions, password, null);
            successCount++;
            Console.WriteLine($"Protected {fileName} successfully");
        }
        catch (Exception ex)
        {
            failCount++;
            Console.WriteLine($"Failed to protect {Path.GetFileName(inputFile)}: {ex.Message}");
        }
        
        processedFiles++;
        double progressPercentage = (double)processedFiles / totalFiles * 100;
        Console.WriteLine($"Progress: {progressPercentage:F1}% ({processedFiles}/{totalFiles})
    }
    
    Console.WriteLine($"Batch protection complete. Success: {successCount}, Failed: {failCount}");
}

Conclusion

Dengan menggunakan Aspose.Cells LowCode Spreadsheet Locker, organisasi boleh melaksanakan langkah-langkah keselamatan yang kukuh untuk dokumen Excel dengan usaha pengekodan minimum. pendekatan ini bukan sahaja memudahkan pelaksanaan keselamatan dokumen tetapi juga menyediakan fleksibiliti untuk menyesuaikan strategi perlindungan berdasarkan keperluan tertentu.

Untuk maklumat lanjut dan contoh tambahan, rujuk kepada Aspose.Cells.LowCode API rujukan.

More in this category