ProtectionType

Document.ProtectionType property

Получает текущий активный тип защиты документа.

public ProtectionType ProtectionType { get; }

Примечания

Это свойство позволяет получить текущий установленный тип защиты документа. Чтобы изменить тип защиты документа, используйтеProtect иUnprotect методы.

Если документ защищен, пользователь может вносить только ограниченные изменения, например, добавлять аннотации, вносить исправления или заполнять формы.

Обратите внимание, что защита документа отличается от защиты от записи. Защита от записи указывается с помощьюWriteProtection

Примеры

Показывает, как защитить и снять защиту документа.

Document doc = new Document();
doc.Protect(ProtectionType.ReadOnly, "password");

Assert.AreEqual(ProtectionType.ReadOnly, doc.ProtectionType);

// Если мы откроем этот документ в Microsoft Word, намереваясь его редактировать,
// нам нужно будет применить пароль, чтобы обойти защиту.
doc.Save(ArtifactsDir + "Document.Protect.docx");

// Обратите внимание, что защита распространяется только на пользователей Microsoft Word, открывающих наш документ.
// Мы никак не зашифровали документ, и нам не нужен пароль для его программного открытия и редактирования.
Document protectedDoc = new Document(ArtifactsDir + "Document.Protect.docx");

Assert.AreEqual(ProtectionType.ReadOnly, protectedDoc.ProtectionType);

DocumentBuilder builder = new DocumentBuilder(protectedDoc);
builder.Writeln("Text added to a protected document.");
// Существует два способа снятия защиты с документа.
// 1 - Без пароля:
doc.Unprotect();

Assert.AreEqual(ProtectionType.NoProtection, doc.ProtectionType);

doc.Protect(ProtectionType.ReadOnly, "NewPassword");

Assert.AreEqual(ProtectionType.ReadOnly, doc.ProtectionType);

doc.Unprotect("WrongPassword");

Assert.AreEqual(ProtectionType.ReadOnly, doc.ProtectionType);

// 2 - С правильным паролем:
doc.Unprotect("NewPassword");

Assert.AreEqual(ProtectionType.NoProtection, doc.ProtectionType);

Смотрите также