Fügen Sie eine digitale Signatur zu einer bereits signierten Excel Datei hinzu
Mögliche Verwendungsszenarien
Aspose.Cells bietet die Methode Workbook.addDigitalSignature(DigitalSignatureCollection digitalSignatureCollection), die Sie verwenden können, um einer bereits signierten Excel-Datei eine digitale Signatur hinzuzufügen.
Fügen Sie eine digitale Signatur zu einer bereits signierten Excel-Datei hinzu
Der folgende Beispielcode erläutert, wie die Methode Workbook.addDigitalSignature(DigitalSignatureCollection digitalSignatureCollection) verwendet wird, um einer bereits signierten Excel-Datei eine digitale Signatur hinzuzufügen. Bitte überprüfen Sie die im Code verwendete Beispiel-Excel-Datei. Diese Datei ist bereits digital signiert. Bitte überprüfen Sie die durch den Code generierte Ausgabedatei. Wir haben das Demo-Zertifikat mit dem Namen AsposeTest.pfx verwendet, das ein Passwort aspose hat. Der Screenshot zeigt die Auswirkung des Beispielcodes auf die Beispieldatei nach der Ausführung.
Beispielcode
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// Certificate file and its password | |
String certFileName = "AsposeTest.pfx"; | |
String password = "aspose"; | |
// Load the workbook which is already digitally signed to add new digital signature | |
Workbook workbook = new Workbook(srcDir + "sampleDigitallySignedByCells.xlsx"); | |
// Create the digital signature collection | |
DigitalSignatureCollection dsCollection = new DigitalSignatureCollection(); | |
// Create new digital signature and add it in digital signature collection | |
// ------------------------------------------------------------ | |
// --------------Begin::creating signature--------------------- | |
// Load the certificate into an instance of InputStream | |
InputStream inStream = new FileInputStream(srcDir + certFileName); | |
// Create an instance of KeyStore with PKCS12 cryptography | |
java.security.KeyStore inputKeyStore = java.security.KeyStore.getInstance("PKCS12"); | |
// Use the KeyStore.load method to load the certificate stream and its password | |
inputKeyStore.load(inStream, password.toCharArray()); | |
// Create an instance of DigitalSignature and pass the instance of KeyStore, password, comments and time | |
DigitalSignature signature = new DigitalSignature(inputKeyStore, password, | |
"Aspose.Cells added new digital signature in existing digitally signed workbook.", | |
com.aspose.cells.DateTime.getNow()); | |
dsCollection.add(signature); | |
// ------------------------------------------------------------ | |
// --------------End::creating signature----------------------- | |
// Add digital signature collection inside the workbook | |
workbook.addDigitalSignature(dsCollection); | |
// Save the workbook and dispose it. | |
workbook.save(outDir + "outputDigitallySignedByCells.xlsx"); | |
workbook.dispose(); |