C#/VB.NET: proteggere o rimuovere la protezione di un documento Word

2023-09-04 07:20:50

I documenti Word possono essere protetti in vari modi, a seconda dei requisiti di sicurezza. Per impedire a persone non autorizzate di aprire un documento, puoi crittografarlo con una password. Per consentire agli utenti di aprire il documento, ma non di modificarne il contenuto, puoi rendere il documento di sola lettura o contrassegnarlo come finale. Per consentire agli utenti di modificare parti del documento, puoi bloccare l'intero documento ma lasciare disponibili le sezioni specificate per la modifica. Questo articolo si concentra su come proteggere o rimuovere la protezione di un documento Word in C# e VB.NET utilizzando Spire.Doc for .NET.

Installa Spire.Doc for .NET

Per cominciare, devi aggiungere i file DLL inclusi nel pacchetto Spire.Doc for.NET come riferimenti nel tuo progetto .NET. I file DLL possono essere scaricati da questo link o installato tramite NuGet.

PM> Install-Package Spire.Doc

Proteggi con password un documento Word in C#, VB.NET

La crittografia di un documento con una password garantisce che solo tu e determinate persone possiate leggerlo o modificarlo. Di seguito sono riportati i passaggi per proteggere un documento Word con una password utilizzando Spire.Doc for .NET.

  • Creare un oggetto Documento.
  • Carica un documento Word utilizzando il metodo Document.LoadFromFile().
  • Crittografa il documento con una password utilizzando il metodo Document.Encrypt().
  • Salva il documento in un altro file Word utilizzando il metodo Document.SaveToFile().
  • C#
  • VB.NET
using Spire.Doc;
    
    namespace PasswordProtectWordDocument
    {
        class Program
        {
            static void Main(string[] args)
            {
                //Create a Document object
                Document document = new Document();
    
                //Load a Word file
                document.LoadFromFile(@"C:\Users\Administrator\Desktop\test.docx");
    
                //Encrypt the document with a password
                document.Encrypt("open-psd");
    
                //Save the document to another Word file
                document.SaveToFile("Encryption.docx", FileFormat.Docx);
            }
        }
    }

C#/VB.NET - How to Protect or Unprotect a Word Document

Modifica autorizzazione di un documento Word in C#, VB.NET

I documenti crittografati con una password aperta non possono essere aperti da chi non conosce la password. Se desideri concedere alle persone l'autorizzazione a leggere il tuo documento ma limitare i tipi di modifiche che qualcuno può apportare, puoi impostare l'autorizzazione del documento. Di seguito sono riportati i passaggi per modificare l'autorizzazione di un documento Word utilizzando Spire.Doc for .NET.

  • Creare un oggetto Documento.
  • Carica un documento Word utilizzando il metodo Document.LoadFromFile().
  • Imposta l'autorizzazione del documento e imposta la password dell'autorizzazione utilizzando il metodo Document.Protect().
  • Salva il documento in un altro file Word utilizzando il metodo Document.SaveToFile().
  • C#
  • VB.NET
using Spire.Doc;
    
    namespace ChangeDocumentPermission
    {
        class Program
        {
            static void Main(string[] args)
            {
                //Create a Document object
                Document document = new Document();
    
                //Load a Word document
                document.LoadFromFile(@"C:\Users\Administrator\Desktop\sample.docx");
    
                //Set the document permission and set the permission password
                document.Protect(ProtectionType.AllowOnlyFormFields, "permission-psd");
    
                //Save the document to another Word file
                document.SaveToFile("Permission.docx");
            }
        }
    }

C#/VB.NET - How to Protect or Unprotect a Word Document

Blocca sezioni specificate di un documento Word in C#, VB.NET

Quando proteggi il tuo documento, puoi bloccarne alcune parti in modo che non possano essere modificate e lasciare le parti sbloccate disponibili per la modifica. Di seguito sono riportati i passaggi per proteggere sezioni specifiche di un documento Word utilizzando Spire.Doc for .NET.

  • Creare un oggetto Documento.
  • Carica un documento Word utilizzando il metodo Document.LoadFromFile().
  • Imposta la restrizione di modifica su EnableOnlyFormFields.
  • Rimuovere la protezione di una sezione specifica impostando Document.Sections[index].ProtectForm su false. Le restanti sezioni continueranno ad essere protette.
  • Salva il documento in un altro file Word utilizzando il metodo Document.SaveToFile().
  • C#
  • VB.NET
using Spire.Doc;
    
    namespace ProtectSpecificSection
    {
        class Program
        {
            static void Main(string[] args)
            {
                //Create a Document object
                Document doc = new Document();
    
                //Load a Word document
                doc.LoadFromFile(@"C:\Users\Administrator\Desktop\sample.docx");
    
                //Set editing restriction as "AllowOnlyFormFields"
                doc.Protect(ProtectionType.AllowOnlyFormFields, "permissionPsd");
    
                //Unprotect section 2
                doc.Sections[1].ProtectForm = false;
    
                //Save the document to another Word file
                doc.SaveToFile("ProtectSection.docx");
            }
        }
    }

C#/VB.NET - How to Protect or Unprotect a Word Document

Contrassegna un documento Word come finale in C#, VB.NET

Contrassegnando un documento come Finale, disabiliti le funzionalità di digitazione, modifica e modifica del formato e a qualsiasi lettore verrà visualizzato un messaggio che informa che il documento è stato finalizzato. Di seguito sono riportati i passaggi per contrassegnare un documento Word come finale utilizzando Spire.Doc for .NET.

  • Creare un oggetto Documento.
  • Carica un file Word utilizzando il metodo Document.LoadFromFile().
  • Ottieni l'oggetto CustomDocumentProperties dal documento.
  • Aggiungi una proprietà personalizzata "_MarkAsFinal" al documento.
  • Salva il documento in un altro file Word utilizzando il metodo Document.SaveToFile().
  • C#
  • VB.NET
using Spire.Doc;
    
    namespace MarkAsFinal
    {
        class Program
        {
            static void Main(string[] args)
            {
                //Create a Document object
                Document doc = new Document();
    
                //Load a Word document
                doc.LoadFromFile(@"C:\Users\Administrator\Desktop\sample.docx");
    
                //Get custom document properties
                CustomDocumentProperties customProperties = doc.CustomDocumentProperties;
    
                //Add "_MarkAsFinal" property to the document
                customProperties.Add("_MarkAsFinal", true);
    
                //Save the document to another Word file
                doc.SaveToFile("MarkAsFinal.docx");
            }
        }
    }

C#/VB.NET - How to Protect or Unprotect a Word Document

Rimuovi la password da un documento Word in C#, VB.NET

È possibile rimuovere la password da un documento crittografato se la crittografia non è più necessaria. Di seguito sono riportati i passaggi dettagliati.

  • Creare un oggetto Documento.
  • Carica un documento Word utilizzando il metodo Document.LoadFromFile().
  • Rimuovere la password utilizzando il metodo Document.RemoveEncryption().
  • Salva il documento in un altro file Word utilizzando il metodo Document.SaveToFile().
  • C#
  • VB.NET
using Spire.Doc;
    
    namespace RemovePassword
    {
        class Program
        {
            static void Main(string[] args)
            {
                //Create a Document object
                Document document = new Document();
    
                //Load an encrypted Word document
                document.LoadFromFile(@"C:\Users\Administrator\Desktop\Encryption.docx", FileFormat.Docx, "open-psd");
    
                //Remove encryption
                document.RemoveEncryption();
    
                //Save the document to another Word file
                document.SaveToFile("Decryption.docx", FileFormat.Docx);
            }
        }
    }

Richiedi una licenza temporanea

Se desideri rimuovere il messaggio di valutazione dai documenti generati o eliminare le limitazioni della funzione, per favore richiedere una licenza di prova di 30 giorni per te.

Guarda anche