com.aspose.words

Class DocumentSecurity

  • java.lang.Object
    • com.aspose.words.DocumentSecurity
public class DocumentSecurity 
extends java.lang.Object

Utility class containing constants. Used as a value for the BuiltInDocumentProperties.Security property. Specifies the security level of a document as a numeric value.

Example:

Shows how to use document properties to display the security level of a document.
Document doc = new Document();

Assert.assertEquals(DocumentSecurity.NONE, doc.getBuiltInDocumentProperties().getSecurity());

// If we configure a document to be read-only, it will display this status using the "Security" built-in property.
doc.getWriteProtection().setReadOnlyRecommended(true);
doc.save(getArtifactsDir() + "DocumentProperties.Security.ReadOnlyRecommended.docx");

Assert.assertEquals(DocumentSecurity.READ_ONLY_RECOMMENDED,
        new Document(getArtifactsDir() + "DocumentProperties.Security.ReadOnlyRecommended.docx").getBuiltInDocumentProperties().getSecurity());

// Write-protect a document, and then verify its security level.
doc = new Document();

Assert.assertFalse(doc.getWriteProtection().isWriteProtected());

doc.getWriteProtection().setPassword("MyPassword");

Assert.assertTrue(doc.getWriteProtection().validatePassword("MyPassword"));
Assert.assertTrue(doc.getWriteProtection().isWriteProtected());

doc.save(getArtifactsDir() + "DocumentProperties.Security.ReadOnlyEnforced.docx");

Assert.assertEquals(DocumentSecurity.READ_ONLY_ENFORCED,
        new Document(getArtifactsDir() + "DocumentProperties.Security.ReadOnlyEnforced.docx").getBuiltInDocumentProperties().getSecurity());

// "Security" is a descriptive property. We can edit its value manually.
doc = new Document();

doc.protect(ProtectionType.ALLOW_ONLY_COMMENTS, "MyPassword");
doc.getBuiltInDocumentProperties().setSecurity(DocumentSecurity.READ_ONLY_EXCEPT_ANNOTATIONS);
doc.save(getArtifactsDir() + "DocumentProperties.Security.ReadOnlyExceptAnnotations.docx");

Assert.assertEquals(DocumentSecurity.READ_ONLY_EXCEPT_ANNOTATIONS,
        new Document(getArtifactsDir() + "DocumentProperties.Security.ReadOnlyExceptAnnotations.docx").getBuiltInDocumentProperties().getSecurity());

Field Summary
static final intNONE = 0
There are no security states specified by the property.
static final intPASSWORD_PROTECTED = 1
The document is password protected. (Note has never been seen in a document so far).
static final intREAD_ONLY_RECOMMENDED = 2
The document to be opened read-only if possible, but the setting can be overridden.
static final intREAD_ONLY_ENFORCED = 4
The document to always be opened read-only.
static final intREAD_ONLY_EXCEPT_ANNOTATIONS = 8
The document to always be opened read-only except for annotations.
 

    • Field Detail

      • NONE = 0

        public static final int NONE
        There are no security states specified by the property.
      • PASSWORD_PROTECTED = 1

        public static final int PASSWORD_PROTECTED
        The document is password protected. (Note has never been seen in a document so far).
      • READ_ONLY_RECOMMENDED = 2

        public static final int READ_ONLY_RECOMMENDED
        The document to be opened read-only if possible, but the setting can be overridden.
      • READ_ONLY_ENFORCED = 4

        public static final int READ_ONLY_ENFORCED
        The document to always be opened read-only.
      • READ_ONLY_EXCEPT_ANNOTATIONS = 8

        public static final int READ_ONLY_EXCEPT_ANNOTATIONS
        The document to always be opened read-only except for annotations.