JavaScript'te Sunumları Yazma Koruması
Giriş
Yazma koruması parolası, bir sunumun değiştirilmesini kısıtlar ancak içeriğini şifrelemez. Kullanıcılar, yazma korumalı bir sunumu parolası olmadan yükleyebilir ve görüntüleyebilir. Uygulamaya bağlı olarak, içeriği düzenleyip farklı bir adla kaydedebilirler, bu nedenle yazma koruması gizlilik mekanizması olarak değerlendirilmemelidir.
Açma parolası farklı bir amaç sağlar: sunumu şifreler ve içeriğini yüklemek için gereklidir. Bir sunumu şifrelemek veya açma parolasını doğrulamak için, Sunumları Parola ile Koruma sayfasına bakın.
Bu makaledeki iş akışları PPT ve PPTX sunumları için geçerlidir. Örnekler PPTX dosyalarını kullanır; PPT olarak kaydederken .ppt uzantısını ve ilgili PPT kayıt formatını kullanın.
Bir Sunuma Yazma Koruması Ayarlama
Bir sunumu değiştirmek için parola atamak üzere ProtectionManager.setWriteProtection yöntemini kullanın. Sunumu kaydetmek, koruma ayarını kalıcı hale getirir.
Aşağıdaki örnek, bir PPTX sunumuna yazma koruması ekler:
const slides = require("aspose.slides.via.java");
const presentation = new slides.Presentation("pres.pptx");
try {
presentation.getProtectionManager().setWriteProtection("modify_password");
presentation.save("write-protected-pres.pptx", slides.SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Yazma Koruması Olan Bir Sunumu Yükleme
Yazma koruması sunum içeriğini şifrelemediği için, sunumu yüklemek için parola gerekmez. Parola, yalnızca korumalı sunumu değiştirme yetkisini doğrularken ilgilidir.
const slides = require("aspose.slides.via.java");
const presentation = new slides.Presentation("write-protected-pres.pptx");
try {
console.log("Slide count: " + presentation.getSlides().size());
} finally {
presentation.dispose();
}
LoadOptions.setPassword yöntemine yazma koruması parolası geçirmeyin. Bu yöntem, şifreli içerik için bir açma parolası kabul eder. Bir sunum her iki koruma türüne de sahipse, açma parolasını vererek sunumu yükleyin ve yazma koruması parolasını ayrı olarak işleyin.
Bir Sunumdan Yazma Korumasını Kaldırma
Değiştirme kısıtlamasını kaldırmak için ProtectionManager.removeWriteProtection yöntemini kullanın, ardından sunumu kaydedin.
const slides = require("aspose.slides.via.java");
const presentation = new slides.Presentation("write-protected-pres.pptx");
try {
presentation.getProtectionManager().removeWriteProtection();
presentation.save("write-protection-removed.pptx", slides.SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Bir Sunumun Yazma Koruması Olup Olmadığını Kontrol Etme
Bir dosyayı tam bir Presentation örneği oluşturmadan incelemek için PresentationFactory.getPresentationInfo yöntemini çağırın ve PresentationInfo.isWriteProtected özelliğini kontrol edin. Metot, NullableBool kullanır ve yazma koruması tespit edildiğinde NullableBool.True döndürür.
const slides = require("aspose.slides.via.java");
const presentationInfo = slides.PresentationFactory.getInstance().getPresentationInfo("write-protected-pres.pptx");
if (presentationInfo.isWriteProtected() === slides.NullableBool.True) {
console.log("The presentation is write protected.");
} else {
console.log("Write protection was not detected.");
}
Akış tabanlı PresentationFactory.getPresentationInfoFromStream yöntemi, Node.js okunabilir akışı olarak sağlanan bir sunum için aynı bilgileri sunar.
Yazma Koruması Parolasını Doğrulama
Tam sunumu yüklemeden bir değiştirme parolasını doğrulamak için PresentationInfo.checkWriteProtection yöntemini kullanın. Uygulamanın sadece yazma koruması mevcut olduğunda parola isteyip doğrulaması için önce PresentationInfo.isWriteProtected kontrol edin.
const slides = require("aspose.slides.via.java");
const presentationInfo = slides.PresentationFactory.getInstance().getPresentationInfo("write-protected-pres.pptx");
if (presentationInfo.isWriteProtected() !== slides.NullableBool.True) {
console.log("The presentation is not write protected.");
} else if (presentationInfo.checkWriteProtection("modify_password")) {
console.log("The write-protection password is correct.");
} else {
console.log("The write-protection password is incorrect.");
}
PresentationInfo.checkWriteProtection yalnızca yazma koruması parolasını doğrular. Bir açma parolasını doğrulamaz veya şifreli içeriğin yüklenip yüklenemeyeceğini belirlemez. Bunun tersine, PresentationInfo.checkPassword sadece bir açma parolasını doğrular. Eğer tam bir sunum zaten yüklendiyse, ProtectionManager.checkWriteProtection koruma yöneticisi üzerinden eşdeğer bir yazma koruması kontrolü sağlar.
Üretim ortamındaki uygulamalarda, parolaları loglamayın veya tanı mesajlarına eklemeyin. Gereksiz tekrarlanan doğrulama denemelerinden kaçının ve parolaları yalnızca gerekli olduğu süre boyunca bellekte tutun.
SSS
Yazma koruması bir sunumu şifreler mi?
Hayır. Değiştirmeyi kısıtlar ancak sunum içeriğini yükleme ve görüntüleme için kullanılabilir tutar.
Sunumu açmak için yazma koruması parolası gerekli mi?
Hayır. Şifreli sunum içeriğini yüklemek için yalnızca bir açma parolası gereklidir.
Bir sunum hem açma parolası hem de yazma koruması parolası içerebilir mi?
Evet. Şifreli sunumu açmak için yükleme seçenekleri aracılığıyla açma parolasını sağlayın ve değiştirme yetkisi gerektiğinde yazma koruması parolasını ayrı olarak doğrulayın.