ปกป้องพรีเซนเทชั่นด้วยรหัสผ่านใน PHP
บทนำ
เมื่อคุณป้องกันพรีเซนเทชั่นด้วยรหัสผ่าน หมายความว่าคุณกำหนดรหัสผ่านที่บังคับใช้ข้อจำกัดบางอย่างบนพรีเซนเทชั่น เพื่อเอาข้อจำกัดออก ต้องใส่รหัสผ่าน พรีเซนเทชั่นที่ป้องกันด้วยรหัสผ่านถือว่าเป็นพรีเซนเทชั่นที่ถูกล็อค
โดยทั่วไปคุณสามารถตั้งรหัสผ่านเพื่อบังคับใช้ข้อจำกัดเหล่านี้บนพรีเซนเทชั่นได้:
-
การแก้ไข
หากคุณต้องการให้ผู้ใช้บางคนเท่านั้นที่แก้ไขพรีเซนเทชั่นของคุณ คุณสามารถตั้งข้อจำกัดการแก้ไขได้
ข้อจำกัดนี้จะป้องกันไม่ให้ผู้คนแก้ไข, เปลี่ยนแปลง หรือคัดลอกสิ่งต่าง ๆ ในพรีเซนเทชั่นของคุณ (ยกเว้นว่าพวกเขาให้รหัสผ่าน)อย่างไรก็ตาม ในกรณีนี้ แม้ไม่มีรหัสผ่านผู้ใช้ก็ยังสามารถเข้าถึงเอกสารของคุณและเปิดได้ ในโหมดอ่านอย่างเดียวนี้ ผู้ใช้สามารถดูเนื้อหา หรือสิ่งต่าง ๆ เช่น ลิงก์, แอนิเมชัน, เอฟเฟ็กต์ ฯลฯ ภายในพรีเซนเทชั่นของคุณได้ แต่ไม่สามารถคัดลอกรายการหรือบันทึกพรีเซนเทชั่นได้
-
การเปิด
หากคุณต้องการให้ผู้ใช้บางคนเท่านั้นที่เปิดพรีเซนเทชั่นของคุณ คุณสามารถตั้งข้อจำกัดการเปิดได้
ข้อจำกัดนี้จะป้องกันไม่ให้ผู้คนดูเนื้อหาของพรีเซนเทชั่นของคุณเลย (ยกเว้นว่าพวกเขาให้รหัสผ่าน)โดยเทคนิค ข้อจำกัดการเปิดยังป้องกันไม่ให้ผู้ใช้แก้ไขพรีเซนเทชั่นของคุณ: เมื่อผู้คนไม่สามารถเปิดพรีเซนเทชั่นได้ พวกเขาจึงไม่สามารถทำการแก้ไขหรือเปลี่ยนแปลงได้
หมายเหตุว่าเมื่อคุณป้องกันพรีเซนเทชั่นด้วยรหัสผ่านเพื่อป้องกันการเปิด ไฟล์พรีเซนเทชั่นจะถูกเข้ารหัส
วิธีป้องกันพรีเซนเทชั่นด้วยรหัสผ่านออนไลน์
-
ไปที่หน้า Aspose.Slides Lock ของเรา.

-
คลิก ลากหรืออัปโหลดไฟล์ของคุณ.
-
เลือกไฟล์ที่คุณต้องการป้องกันด้วยรหัสผ่านบนคอมพิวเตอร์ของคุณ.
-
ป้อนรหัสผ่านที่คุณต้องการสำหรับการป้องกันการแก้ไข; ป้อนรหัสผ่านที่คุณต้องการสำหรับการป้องกันการดู.
-
หากคุณต้องการให้ผู้ใช้เห็นพรีเซนเทชั่นของคุณเป็นสำเนาสุดท้าย ให้ทำเครื่องหมายในช่อง ทำเครื่องหมายเป็นขั้นสุดท้าย.
-
คลิก PROTECT NOW.
-
คลิก DOWNLOAD NOW.
การป้องกันด้วยรหัสผ่านสำหรับพรีเซนเทชั่นใน Aspose.Slides
รูปแบบที่รองรับ
Aspose.Slides รองรับการป้องกันด้วยรหัสผ่าน, การเข้ารหัส, และการดำเนินการที่คล้ายกันสำหรับพรีเซนเทชั่นในรูปแบบต่อไปนี้:
- PPTX and PPT - การนำเสนอ Microsoft PowerPoint
- ODP - การนำเสนอ OpenDocument
- OTP - แม่แบบการนำเสนอ OpenDocument
การดำเนินการที่รองรับ
Aspose.Slides อนุญาตให้คุณใช้การป้องกันด้วยรหัสผ่านบนพรีเซนเทชั่นเพื่อป้องกันการแก้ไขโดยวิธีเหล่านี้:
- การเข้ารหัสพรีเซนเทชั่น
- ตั้งค่าการป้องกันการเขียนบนพรีเซนเทชั่น
การดำเนินการอื่น ๆ
Aspose.Slides อนุญาตให้คุณทำงานอื่น ๆ ที่เกี่ยวข้องกับการป้องกันด้วยรหัสผ่านและการเข้ารหัสได้โดยวิธีดังนี้:
- การถอดรหัสพรีเซนเทชั่น; การเปิดพรีเซนเทชั่นที่ถูกเข้ารหัส
- การลบการเข้ารหัส; ปิดการป้องกันด้วยรหัสผ่าน
- การลบการป้องกันการเขียนจากพรีเซนเทชั่น
- การรับคุณสมบัติของพรีเซนเทชั่นที่เข้ารหัส
- การตรวจสอบว่าพรีเซนเทชั่นถูกเข้ารหัสหรือไม่
- การตรวจสอบว่าพรีเซนเทชั่นถูกป้องกันด้วยรหัสผ่านหรือไม่
เข้ารหัสพรีเซนเทชั่น
คุณสามารถเข้ารหัสพรีเซนเทชั่นโดยตั้งรหัสผ่าน จากนั้นเพื่อแก้ไขพรีเซนเทชั่นที่ถูกล็อค ผู้ใช้ต้องใส่รหัสผ่าน
เพื่อเข้ารหัสหรือป้องกันพรีเซนเทชั่นด้วยรหัสผ่าน คุณต้องใช้เมธอด encrypt (จาก ProtectionManager) เพื่อกำหนดรหัสผ่านให้กับพรีเซนเทชั่น คุณส่งรหัสผ่านไปยังเมธอด encrypt และใช้เมธอด save เพื่อบันทึกพรีเซนเทชั่นที่ถูกเข้ารหัสใหม่
ตัวอย่างโค้ดนี้แสดงวิธีการเข้ารหัสพรีเซนเทชั่น:
$presentation = new Presentation("pres.pptx");
try {
$presentation->getProtectionManager()->encrypt("123123");
$presentation->save("encrypted-pres.pptx", SaveFormat::Pptx);
} finally {
if (!java_is_null($presentation)) {
$presentation->dispose();
}
}
ตั้งการป้องกันการเขียนบนพรีเซนเทชั่น
คุณสามารถเพิ่มเครื่องหมายที่บ่งบอก “ห้ามแก้ไข” ลงในพรีเซนเทชั่นได้ วิธีนี้ทำให้คุณบอกผู้ใช้ว่าคุณไม่ต้องการให้พวกเขาแก้ไขพรีเซนเทชั่น
หมายเหตุ ว่ากระบวนการป้องกันการเขียนไม่ทำให้พรีเซนเทชั่นถูกเข้ารหัส ดังนั้นผู้ใช้—หากพวกเขาต้องการจริง ๆ—สามารถแก้ไขพรีเซนเทชั่นได้ แต่เพื่อบันทึกการเปลี่ยนแปลง พวกเขาต้องสร้างพรีเซนเทชั่นด้วยชื่อใหม่
เพื่อกำหนดการป้องกันการเขียน คุณต้องใช้เมธอด setWriteProtection ตัวอย่างโค้ดนี้แสดงวิธีการตั้งการป้องกันการเขียนบนพรีเซนเทชั่น:
$presentation = new Presentation("pres.pptx");
try {
$presentation->getProtectionManager()->setWriteProtection("123123");
$presentation->save("write-protected-pres.pptx", SaveFormat::Pptx);
} finally {
if (!java_is_null($presentation)) {
$presentation->dispose();
}
}
โหลดพรีเซนเทชั่นที่เข้ารหัส
Aspose.Slides อนุญาตให้คุณโหลดไฟล์ที่เข้ารหัสโดยส่งผ่านรหัสผ่านของมัน เพื่อถอดรหัสพรีเซนเทชั่น คุณต้องเรียกเมธอด removeEncryption โดยไม่มีพารามิเตอร์ จากนั้นคุณจะต้องป้อนรหัสผ่านที่ถูกต้องเพื่อโหลดพรีเซนเทชั่น
ตัวอย่างโค้ดนี้แสดงวิธีการถอดรหัสพรีเซนเทชั่น:
$loadOptions = new LoadOptions();
$loadOptions->setPassword("123123");
$presentation = new Presentation("pres.pptx", $loadOptions);
try {
# ทำงานกับพรีเซนเทชั่นที่ถอดรหัสแล้ว
} finally {
if (!java_is_null($presentation)) {
$presentation->dispose();
}
}
ลบการเข้ารหัสจากพรีเซนเทชั่น
คุณสามารถลบการเข้ารหัสหรือการป้องกันด้วยรหัสผ่านออกจากพรีเซนเทชั่นได้ วิธีนี้ผู้ใช้จะสามารถเข้าถึงหรือแก้ไขพรีเซนเทชั่นได้โดยไม่มีข้อจำกัด
เพื่อลบการเข้ารหัสหรือการป้องกันด้วยรหัสผ่าน คุณต้องเรียกเมธอด removeEncryption ตัวอย่างโค้ดนี้แสดงวิธีการลบการเข้ารหัสจากพรีเซนเทชั่น:
$loadOptions = new LoadOptions();
$loadOptions->setPassword("123123");
$presentation = new Presentation("pres.pptx", $loadOptions);
try {
$presentation->getProtectionManager()->removeEncryption();
$presentation->save("encryption-removed.pptx", SaveFormat::Pptx);
} finally {
if (!java_is_null($presentation)) {
$presentation->dispose();
}
}
ลบการป้องกันการเขียนจากพรีเซนเทชั่น
คุณสามารถใช้ Aspose.Slides เพื่อลบการป้องกันการเขียนที่ใช้ในไฟล์พรีเซนเทชั่น วิธีนี้ผู้ใช้จะสามารถแก้ไขตามที่ต้องการและไม่รับคำเตือนใด ๆ เมื่อต้องทำงานดังกล่าว
คุณสามารถลบการป้องกันการเขียนจากพรีเซนเทชั่นโดยใช้เมธอด removeWriteProtection ตัวอย่างโค้ดนี้แสดงวิธีลบการป้องกันการเขียนจากพรีเซนเทชั่น:
$presentation = new Presentation("pres.pptx");
try {
$presentation->getProtectionManager()->removeWriteProtection();
$presentation->save("write-protection-removed.pptx", SaveFormat::Pptx);
} finally {
if (!java_is_null($presentation)) {
$presentation->dispose();
}
}
รับคุณสมบัติของพรีเซนเทชั่นที่เข้ารหัส
โดยทั่วไปผู้ใช้มักประสบปัญหาในการรับคุณสมบัติของเอกสารจากพรีเซนเทชั่นที่เข้ารหัสหรือป้องกันด้วยรหัสผ่าน อย่างไรก็ตาม Aspose.Slides มีกลไกที่ให้คุณป้องกันพรีเซนเทชั่นด้วยรหัสผ่านโดยยังคงให้ผู้ใช้เข้าถึงคุณสมบัติของพรีเซนเทชั่นนั้นได้
หมายเหตุว่าเมื่อ Aspose.Slides เข้ารหัสพรีเซนเทชั่น คุณสมบัติของเอกสารพรีเซนเทชั่นจะถูกป้องกันด้วยรหัสผ่านโดยอัตโนมัติเช่นกัน แต่หากคุณต้องการให้คุณสมบัติของพรีเซนเทชั่นเข้าถึงได้ (แม้พรีเซนเทชั่นจะถูกเข้ารหัส) Aspose.Slides อนุญาตให้ทำได้อย่างแน่นอน
หากคุณต้องการให้ผู้ใช้ยังคงสามารถเข้าถึงคุณสมบัติของพรีเซนเทชั่นที่คุณเข้ารหัสได้ คุณสามารถใช้เมธอด encryptDocumentProperties พร้อมค่า true ตัวอย่างโค้ดนี้แสดงวิธีการเข้ารหัสพรีเซนเทชั่นพร้อมให้ผู้ใช้เข้าถึงคุณสมบัติของเอกสารได้:
$presentation = new Presentation("pres.pptx");
try {
$presentation->getProtectionManager()->setEncryptDocumentProperties(true);
$presentation->getProtectionManager()->encrypt("123123");
} finally {
if (!java_is_null($presentation)) {
$presentation->dispose();
}
}
ตรวจสอบว่าพรีเซนเทชั่นถูกป้องกันด้วยรหัสผ่านหรือไม่
ก่อนที่คุณจะโหลดพรีเซนเทชั่น คุณอาจต้องการตรวจสอบและยืนยันว่าพรีเซนเทชั่นไม่ได้ถูกป้องกันด้วยรหัสผ่าน วิธีนี้ช่วยหลีกเลี่ยงข้อผิดพลาดและปัญหาอื่น ๆ ที่เกิดขึ้นเมื่อพรีเซนเทชั่นที่ป้องกันด้วยรหัสผ่านถูกโหลดโดยไม่มีรหัสผ่าน
โค้ด PHP นี้แสดงวิธีการตรวจสอบพรีเซนเทชั่นเพื่อดูว่ามีการป้องกันด้วยรหัสผ่านหรือไม่ (โดยไม่ต้องโหลดพรีเซนเทชั่นเอง):
$presentationInfo = PresentationFactory->getInstance()->getPresentationInfo("example.pptx");
echo("The presentation is password protected: " . $presentationInfo->isPasswordProtected());
ตรวจสอบว่าพรีเซนเทชั่นถูกเข้ารหัสหรือไม่
Aspose.Slides อนุญาตให้คุณตรวจสอบว่าพรีเซนเทชั่นถูกเข้ารหัสหรือไม่ เพื่อทำภารกิจนี้คุณสามารถใช้เมธอด isEncrypted ซึ่งจะคืนค่า true หากพรีเซนเทชั่นถูกเข้ารหัสและ false หากไม่ได้ถูกเข้ารหัส
ตัวอย่างโค้ดนี้แสดงวิธีการตรวจสอบว่าพรีเซนเทชั่นถูกเข้ารหัสหรือไม่:
$presentation = new Presentation("pres.pptx");
try {
$isEncrypted = $presentation->getProtectionManager()->isEncrypted();
} finally {
if (!java_is_null($presentation)) {
$presentation->dispose();
}
}
ตรวจสอบว่าพรีเซนเทชั่นถูกป้องกันการเขียนหรือไม่
Aspose.Slides อนุญาตให้คุณตรวจสอบว่าพรีเซนเทชั่นถูกป้องกันการเขียนหรือไม่ เพื่อทำภารกิจนี้คุณสามารถใช้เมธอด isWriteProtected ซึ่งจะคืนค่า true หากพรีเซนเทชั่นถูกป้องกันการเขียนและ false หากไม่ได้ถูกป้องกันการเขียน
ตัวอย่างโค้ดนี้แสดงวิธีการตรวจสอบว่าพรีเซนเทชั่นถูกป้องกันการเขียนหรือไม่:
$presentation = new Presentation("pres.pptx");
try {
$isEncrypted = $presentation->getProtectionManager()->isWriteProtected();
} finally {
if (!java_is_null($presentation)) {
$presentation->dispose();
}
}
ตรวจสอบหรือยืนยันว่ามีการใช้รหัสผ่านเฉพาะหรือไม่
คุณอาจต้องการตรวจสอบและยืนยันว่ามีการใช้รหัสผ่านเฉพาะในการป้องกันเอกสารพรีเซนเทชั่น Aspose.Slides มีวิธีการให้คุณตรวจสอบรหัสผ่าน
ตัวอย่างโค้ดนี้แสดงวิธีการตรวจสอบรหัสผ่าน:
$presentation = new Presentation("pres.pptx");
try {
# ตรวจสอบว่า "pass" ตรงกับ
$isWriteProtected = $presentation->getProtectionManager()->checkWriteProtection("my_password");
} finally {
if (!java_is_null($presentation)) {
$presentation->dispose();
}
}
มันจะคืนค่า true หากพรีเซนเทชั่นถูกเข้ารหัสด้วยรหัสผ่านที่ระบุ มิฉะนั้นจะคืนค่า false
ดูเพิ่มเติม
FAQ
วิธีการเข้ารหัสที่ Aspose.Slides รองรับคืออะไร?
Aspose.Slides รองรับวิธีการเข้ารหัสสมัยใหม่รวมถึงอัลกอริธึมที่ใช้ AES ซึ่งให้ความปลอดภัยระดับสูงสำหรับข้อมูลพรีเซนเทชั่นของคุณ
จะเกิดอะไรขึ้นหากป้อนรหัสผ่านไม่ถูกต้องเมื่อพยายามเปิดพรีเซนเทชั่น?
ระบบจะโยนข้อยกเว้นหากใช้รหัสผ่านไม่ถูกต้อง ซึ่งแจ้งให้คุณทราบว่าการเข้าถึงพรีเซนเทชั่นถูกปฏิเสธ นี้ช่วยป้องกันการเข้าถึงโดยไม่ได้รับอนุญาตและปกป้องเนื้อหาพรีเซนเทชั่น
มีผลกระทบต่อประสิทธิภาพหรือไม่เมื่อทำงานกับพรีเซนเทชั่นที่ป้องกันด้วยรหัสผ่าน?
กระบวนการเข้ารหัสและถอดรหัสอาจทำให้มีการใช้ทรัพยากรเพิ่มขึ้นเล็กน้อยในระหว่างการเปิดและบันทึก ในหลายกรณีผลกระทบต่อประสิทธิภาพนี้มีน้อยและไม่ได้ส่งผลอย่างมีนัยสำคัญต่อเวลาการประมวลผลโดยรวมของงานพรีเซนเทชั่นของคุณ