Προσθήκη ψηφιακών υπογραφών σε παρουσιάσεις με JavaScript
Εισαγωγή
Digital certificate χρησιμοποιείται για τη δημιουργία μιας παρουσίασης PowerPoint προστατευμένης με κωδικό, που σημειώνεται ως δημιουργημένη από συγκεκριμένο οργανισμό ή άτομο. Digital certificate μπορεί να ληφθεί επικοινωνώντας με έναν εξουσιοδοτημένο οργανισμό - μια αρχή πιστοποιητικών. Μετά την εγκατάσταση του Digital certificate στο σύστημα, μπορεί να χρησιμοποιηθεί για να προσθέσετε ψηφιακή υπογραφή στην παρουσίαση μέσω Αρχείο -> Πληροφορίες -> Προστασία Παρουσίασης:
Η παρουσίαση μπορεί να περιέχει περισσότερες από μία ψηφιακές υπογραφές. Αφού προστεθεί η ψηφιακή υπογραφή στην παρουσίαση, θα εμφανιστεί ένα ειδικό μήνυμα στο PowerPoint:
Για την υπογραφή της παρουσίασης ή τον έλεγχο της αυθεντικότητας των υπογραφών της παρουσίασης, Aspose.Slides API παρέχει την κλάση DigitalSignature, την κλάση DigitalSignatureCollection και τη μέθοδο Presentation.getDigitalSignatures . Προς το παρόν, οι ψηφιακές υπογραφές υποστηρίζονται μόνο για τη μορφή PPTX.
Προσθήκη ψηφιακής υπογραφής από πιστοποιητικό PFX
Το παρακάτω δείγμα κώδικα δείχνει πώς να προσθέσετε ψηφιακή υπογραφή από ένα πιστοποιητικό PFX:
-
Ανοίξτε το αρχείο PFX και περάστε τον κωδικό PFX στο αντικείμενο DigitalSignature.
-
Προσθέστε τη δημιουργημένη υπογραφή στο αντικείμενο παρουσίασης.
// Άνοιγμα του αρχείου παρουσίασης
var pres = new aspose.slides.Presentation();
try {
// Δημιουργία αντικειμένου DigitalSignature με αρχείο PFX και κωδικό PFX
var signature = new aspose.slides.DigitalSignature("testsignature1.pfx", "testpass1");
// Σχόλιο νέας ψηφιακής υπογραφής
signature.setComments("Aspose.Slides digital signing test.");
// Προσθήκη ψηφιακής υπογραφής στην παρουσίαση
pres.getDigitalSignatures().add(signature);
// Αποθήκευση παρουσίασης
pres.save("SomePresentationSigned.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
pres.dispose();
}
Τώρα είναι δυνατόν να ελέγξετε εάν η παρουσίαση είχε ψηφιακά υπογραφεί και δεν έχει τροποποιηθεί:
// Άνοιγμα παρουσίασης
var pres = new aspose.slides.Presentation("SomePresentationSigned.pptx");
try {
if (pres.getDigitalSignatures().size() > 0) {
var allSignaturesAreValid = true;
console.log("Signatures used to sign the presentation: ");
// Έλεγχος αν όλες οι ψηφιακές υπογραφές είναι έγκυρες
for (let i = 0; i < pres.getDigitalSignatures().size(); i++) {
let signature = pres.getDigitalSignatures().get_Item(i);
console.log((((signature.getComments() + ", ") + signature.getSignTime().toString()) + " -- ") + (signature.isValid() ? "VALID" : "INVALID"));
allSignaturesAreValid &= signature.isValid();
}
if (allSignaturesAreValid) {
console.log("Presentation is genuine, all signatures are valid.");
} else {
console.log("Presentation has been modified since signing.");
}
}
} finally {
if (pres != null) {
pres.dispose();
}
}
ΣΥΧΝΕΣ ΕΡΩΤΗΣΕΙΣ
Μπορώ να αφαιρέσω υπάρχουσες υπογραφές από ένα αρχείο;
Ναι. Η συλλογή ψηφιακών υπογραφών υποστηρίζει αφαίρεση μεμονωμένων στοιχείων και εκκαθάριση της πλήρως· μετά την αποθήκευση του αρχείου, η παρουσίαση δεν θα περιέχει καμία υπογραφή.
Γίνεται το αρχείο «μόνο για ανάγνωση» μετά την υπογραφή;
Όχι. Μια υπογραφή διατηρεί την ακεραιότητα και τη συγγραφή, αλλά δεν εμποδίζει τις επεξεργασίες. Για να περιορίσετε την επεξεργασία, συνδυάστε την με την επιλογή «Μόνο για ανάγνωση» ή κωδικό πρόσβασης.
Θα εμφανίζεται σωστά η υπογραφή σε διαφορετικές εκδόσεις του PowerPoint;
Η υπογραφή δημιουργείται για το δοχείο OOXML (PPTX). Οι σύγχρονες εκδόσεις του PowerPoint που υποστηρίζουν υπογραφές OOXML εμφανίζουν σωστά την κατάσταση τέτοιων υπογραφών.