load_signatures method

load_signatures(file_name)

Loads digital signatures from document.

def load_signatures(self, file_name: str):
    ...
ParameterTypeDescription
file_namestrPath to the document.

Returns

Collection of digital signatures. Returns empty collection if file is not signed.

load_signatures(stream)

Loads digital signatures from document using stream.

def load_signatures(self, stream: io.BytesIO):
    ...
ParameterTypeDescription
streamio.BytesIOStream with the document.

Returns

Collection of digital signatures. Returns empty collection if file is not signed.

Examples

Shows how to load signatures from a digitally signed document.

# There are two ways of loading a signed document's collection of digital signatures using the DigitalSignatureUtil class.
# 1 -  Load from a document from a local file system filename:
digital_signatures = aw.digitalsignatures.DigitalSignatureUtil.load_signatures(MY_DIR + 'Digitally signed.docx')
# If this collection is nonempty, then we can verify that the document is digitally signed.
self.assertEqual(1, digital_signatures.count)
# 2 -  Load from a document from a FileStream:
with open(MY_DIR + 'Digitally signed.docx', 'rb') as stream:
    digital_signatures = aw.digitalsignatures.DigitalSignatureUtil.load_signatures(stream)
    self.assertEqual(1, digital_signatures.count)

Shows how to remove digital signatures from a digitally signed document.

# There are two ways of using the DigitalSignatureUtil class to remove digital signatures
# from a signed document by saving an unsigned copy of it somewhere else in the local file system.
# 1 - Determine the locations of both the signed document and the unsigned copy by filename strings:
aw.digitalsignatures.DigitalSignatureUtil.remove_all_signatures(MY_DIR + 'Digitally signed.docx', ARTIFACTS_DIR + 'DigitalSignatureUtil.load_and_remove.from_string.docx')
# 2 - Determine the locations of both the signed document and the unsigned copy by file streams:
with open(MY_DIR + 'Digitally signed.docx', 'rb') as stream_in:
    with open(ARTIFACTS_DIR + 'DigitalSignatureUtil.load_and_remove.from_stream.docx', 'wb') as stream_out:
        aw.digitalsignatures.DigitalSignatureUtil.remove_all_signatures(stream_in, stream_out)
# Verify that both our output documents have no digital signatures.
self.assertListEqual([], aw.digitalsignatures.DigitalSignatureUtil.load_signatures(ARTIFACTS_DIR + 'DigitalSignatureUtil.load_and_remove.from_string.docx'))
self.assertListEqual([], aw.digitalsignatures.DigitalSignatureUtil.load_signatures(ARTIFACTS_DIR + 'DigitalSignatureUtil.load_and_remove.from_stream.docx'))

See Also