# ปกป้องพรีเซนเทชั่นด้วยรหัสผ่านใน PHP

> เรียนรู้วิธีล็อกและปลดล็อกพรีเซนเทชั่น PowerPoint และ OpenDocument ที่ป้องกันด้วยรหัสผ่านอย่างง่ายดายด้วย Aspose.Slides สำหรับ PHP. ปกป้องพรีเซนเทชั่นของคุณ.

Source: https://docs.aspose.com/slides/th/php-java/password-protected-presentation/
Updated: 2026-06-13

## **บทนำ**

เมื่อคุณป้องกันพรีเซนเทชั่นด้วยรหัสผ่าน หมายความว่าคุณกำหนดรหัสผ่านที่บังคับใช้ข้อจำกัดบางอย่างบนพรีเซนเทชั่น เพื่อเอาข้อจำกัดออก ต้องใส่รหัสผ่าน พรีเซนเทชั่นที่ป้องกันด้วยรหัสผ่านถือว่าเป็นพรีเซนเทชั่นที่ถูกล็อค

โดยทั่วไปคุณสามารถตั้งรหัสผ่านเพื่อบังคับใช้ข้อจำกัดเหล่านี้บนพรีเซนเทชั่นได้:

- **การแก้ไข**

  หากคุณต้องการให้ผู้ใช้บางคนเท่านั้นที่แก้ไขพรีเซนเทชั่นของคุณ คุณสามารถตั้งข้อจำกัดการแก้ไขได้  
  ข้อจำกัดนี้จะป้องกันไม่ให้ผู้คนแก้ไข, เปลี่ยนแปลง หรือคัดลอกสิ่งต่าง ๆ ในพรีเซนเทชั่นของคุณ (ยกเว้นว่าพวกเขาให้รหัสผ่าน)  

  อย่างไรก็ตาม ในกรณีนี้ แม้ไม่มีรหัสผ่านผู้ใช้ก็ยังสามารถเข้าถึงเอกสารของคุณและเปิดได้ ในโหมดอ่านอย่างเดียวนี้ ผู้ใช้สามารถดูเนื้อหา หรือสิ่งต่าง ๆ เช่น ลิงก์, แอนิเมชัน, เอฟเฟ็กต์ ฯลฯ ภายในพรีเซนเทชั่นของคุณได้ แต่ไม่สามารถคัดลอกรายการหรือบันทึกพรีเซนเทชั่นได้

- **การเปิด**

  หากคุณต้องการให้ผู้ใช้บางคนเท่านั้นที่เปิดพรีเซนเทชั่นของคุณ คุณสามารถตั้งข้อจำกัดการเปิดได้  
  ข้อจำกัดนี้จะป้องกันไม่ให้ผู้คนดูเนื้อหาของพรีเซนเทชั่นของคุณเลย (ยกเว้นว่าพวกเขาให้รหัสผ่าน)  

  โดยเทคนิค ข้อจำกัดการเปิดยังป้องกันไม่ให้ผู้ใช้แก้ไขพรีเซนเทชั่นของคุณ: เมื่อผู้คนไม่สามารถเปิดพรีเซนเทชั่นได้ พวกเขาจึงไม่สามารถทำการแก้ไขหรือเปลี่ยนแปลงได้  

  **หมายเหตุ**ว่าเมื่อคุณป้องกันพรีเซนเทชั่นด้วยรหัสผ่านเพื่อป้องกันการเปิด ไฟล์พรีเซนเทชั่นจะถูกเข้ารหัส

## **วิธีป้องกันพรีเซนเทชั่นด้วยรหัสผ่านออนไลน์**

1. ไปที่หน้า [**Aspose.Slides Lock**](https://products.aspose.app/slides/th/lock) ของเรา.

   ![todo:image_alt_text](slides-lock.png)

2. คลิก **ลากหรืออัปโหลดไฟล์ของคุณ**.

3. เลือกไฟล์ที่คุณต้องการป้องกันด้วยรหัสผ่านบนคอมพิวเตอร์ของคุณ.

4. ป้อนรหัสผ่านที่คุณต้องการสำหรับการป้องกันการแก้ไข; ป้อนรหัสผ่านที่คุณต้องการสำหรับการป้องกันการดู.

5. หากคุณต้องการให้ผู้ใช้เห็นพรีเซนเทชั่นของคุณเป็นสำเนาสุดท้าย ให้ทำเครื่องหมายในช่อง **ทำเครื่องหมายเป็นขั้นสุดท้าย**.

6. คลิก **PROTECT NOW.**

7. คลิก **DOWNLOAD NOW.**

## **การป้องกันด้วยรหัสผ่านสำหรับพรีเซนเทชั่นใน Aspose.Slides**

**รูปแบบที่รองรับ**

Aspose.Slides รองรับการป้องกันด้วยรหัสผ่าน, การเข้ารหัส, และการดำเนินการที่คล้ายกันสำหรับพรีเซนเทชั่นในรูปแบบต่อไปนี้:

- PPTX and PPT - การนำเสนอ Microsoft PowerPoint
- ODP - การนำเสนอ OpenDocument
- OTP - แม่แบบการนำเสนอ OpenDocument

**การดำเนินการที่รองรับ**

Aspose.Slides อนุญาตให้คุณใช้การป้องกันด้วยรหัสผ่านบนพรีเซนเทชั่นเพื่อป้องกันการแก้ไขโดยวิธีเหล่านี้:

- การเข้ารหัสพรีเซนเทชั่น
- ตั้งค่าการป้องกันการเขียนบนพรีเซนเทชั่น

**การดำเนินการอื่น ๆ**

Aspose.Slides อนุญาตให้คุณทำงานอื่น ๆ ที่เกี่ยวข้องกับการป้องกันด้วยรหัสผ่านและการเข้ารหัสได้โดยวิธีดังนี้:

- การถอดรหัสพรีเซนเทชั่น; การเปิดพรีเซนเทชั่นที่ถูกเข้ารหัส
- การลบการเข้ารหัส; ปิดการป้องกันด้วยรหัสผ่าน
- การลบการป้องกันการเขียนจากพรีเซนเทชั่น
- การรับคุณสมบัติของพรีเซนเทชั่นที่เข้ารหัส
- การตรวจสอบว่าพรีเซนเทชั่นถูกเข้ารหัสหรือไม่
- การตรวจสอบว่าพรีเซนเทชั่นถูกป้องกันด้วยรหัสผ่านหรือไม่

## **เข้ารหัสพรีเซนเทชั่น**

คุณสามารถเข้ารหัสพรีเซนเทชั่นโดยตั้งรหัสผ่าน จากนั้นเพื่อแก้ไขพรีเซนเทชั่นที่ถูกล็อค ผู้ใช้ต้องใส่รหัสผ่าน

เพื่อเข้ารหัสหรือป้องกันพรีเซนเทชั่นด้วยรหัสผ่าน คุณต้องใช้เมธอด encrypt (จาก [ProtectionManager](https://reference.aspose.com/slides/th/php-java/aspose.slides/protectionmanager/)) เพื่อกำหนดรหัสผ่านให้กับพรีเซนเทชั่น คุณส่งรหัสผ่านไปยังเมธอด encrypt และใช้เมธอด save เพื่อบันทึกพรีเซนเทชั่นที่ถูกเข้ารหัสใหม่

ตัวอย่างโค้ดนี้แสดงวิธีการเข้ารหัสพรีเซนเทชั่น:

```php
  $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](https://reference.aspose.com/slides/th/php-java/aspose.slides/protectionmanager/#setWriteProtection) ตัวอย่างโค้ดนี้แสดงวิธีการตั้งการป้องกันการเขียนบนพรีเซนเทชั่น:

```php
  $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](https://reference.aspose.com/slides/th/php-java/aspose.slides/protectionmanager/#removeEncryption) โดยไม่มีพารามิเตอร์ จากนั้นคุณจะต้องป้อนรหัสผ่านที่ถูกต้องเพื่อโหลดพรีเซนเทชั่น

ตัวอย่างโค้ดนี้แสดงวิธีการถอดรหัสพรีเซนเทชั่น:

```php
  $loadOptions = new LoadOptions();
  $loadOptions->setPassword("123123");
  $presentation = new Presentation("pres.pptx", $loadOptions);
  try {
    # ทำงานกับพรีเซนเทชั่นที่ถอดรหัสแล้ว
  } finally {
    if (!java_is_null($presentation)) {
      $presentation->dispose();
    }
  }
```

## **ลบการเข้ารหัสจากพรีเซนเทชั่น**

คุณสามารถลบการเข้ารหัสหรือการป้องกันด้วยรหัสผ่านออกจากพรีเซนเทชั่นได้ วิธีนี้ผู้ใช้จะสามารถเข้าถึงหรือแก้ไขพรีเซนเทชั่นได้โดยไม่มีข้อจำกัด

เพื่อลบการเข้ารหัสหรือการป้องกันด้วยรหัสผ่าน คุณต้องเรียกเมธอด [removeEncryption](https://reference.aspose.com/slides/th/php-java/aspose.slides/protectionmanager/#removeEncryption) ตัวอย่างโค้ดนี้แสดงวิธีการลบการเข้ารหัสจากพรีเซนเทชั่น:

```php
  $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](https://reference.aspose.com/slides/th/php-java/aspose.slides/protectionmanager/#removeWriteProtection) ตัวอย่างโค้ดนี้แสดงวิธีลบการป้องกันการเขียนจากพรีเซนเทชั่น:

```php
  $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](https://reference.aspose.com/slides/th/php-java/aspose.slides/protectionmanager/#getEncryptDocumentProperties) พร้อมค่า `true` ตัวอย่างโค้ดนี้แสดงวิธีการเข้ารหัสพรีเซนเทชั่นพร้อมให้ผู้ใช้เข้าถึงคุณสมบัติของเอกสารได้:

```php
  $presentation = new Presentation("pres.pptx");
  try {
    $presentation->getProtectionManager()->setEncryptDocumentProperties(true);
    $presentation->getProtectionManager()->encrypt("123123");
  } finally {
    if (!java_is_null($presentation)) {
      $presentation->dispose();
    }
  }
```

## **ตรวจสอบว่าพรีเซนเทชั่นถูกป้องกันด้วยรหัสผ่านหรือไม่**

ก่อนที่คุณจะโหลดพรีเซนเทชั่น คุณอาจต้องการตรวจสอบและยืนยันว่าพรีเซนเทชั่นไม่ได้ถูกป้องกันด้วยรหัสผ่าน วิธีนี้ช่วยหลีกเลี่ยงข้อผิดพลาดและปัญหาอื่น ๆ ที่เกิดขึ้นเมื่อพรีเซนเทชั่นที่ป้องกันด้วยรหัสผ่านถูกโหลดโดยไม่มีรหัสผ่าน  

โค้ด PHP นี้แสดงวิธีการตรวจสอบพรีเซนเทชั่นเพื่อดูว่ามีการป้องกันด้วยรหัสผ่านหรือไม่ (โดยไม่ต้องโหลดพรีเซนเทชั่นเอง):

```php
  $presentationInfo = PresentationFactory->getInstance()->getPresentationInfo("example.pptx");
  echo("The presentation is password protected: " . $presentationInfo->isPasswordProtected());

```

## **ตรวจสอบว่าพรีเซนเทชั่นถูกเข้ารหัสหรือไม่**

Aspose.Slides อนุญาตให้คุณตรวจสอบว่าพรีเซนเทชั่นถูกเข้ารหัสหรือไม่ เพื่อทำภารกิจนี้คุณสามารถใช้เมธอด [isEncrypted](https://reference.aspose.com/slides/th/php-java/aspose.slides/protectionmanager/#isEncrypted) ซึ่งจะคืนค่า `true` หากพรีเซนเทชั่นถูกเข้ารหัสและ `false` หากไม่ได้ถูกเข้ารหัส  

ตัวอย่างโค้ดนี้แสดงวิธีการตรวจสอบว่าพรีเซนเทชั่นถูกเข้ารหัสหรือไม่:

```php
  $presentation = new Presentation("pres.pptx");
  try {
    $isEncrypted = $presentation->getProtectionManager()->isEncrypted();
  } finally {
    if (!java_is_null($presentation)) {
      $presentation->dispose();
    }
  }
```

## **ตรวจสอบว่าพรีเซนเทชั่นถูกป้องกันการเขียนหรือไม่**

Aspose.Slides อนุญาตให้คุณตรวจสอบว่าพรีเซนเทชั่นถูกป้องกันการเขียนหรือไม่ เพื่อทำภารกิจนี้คุณสามารถใช้เมธอด [isWriteProtected](https://reference.aspose.com/slides/th/php-java/aspose.slides/protectionmanager/#isWriteProtected) ซึ่งจะคืนค่า `true` หากพรีเซนเทชั่นถูกป้องกันการเขียนและ `false` หากไม่ได้ถูกป้องกันการเขียน  

ตัวอย่างโค้ดนี้แสดงวิธีการตรวจสอบว่าพรีเซนเทชั่นถูกป้องกันการเขียนหรือไม่:

```php
  $presentation = new Presentation("pres.pptx");
  try {
    $isEncrypted = $presentation->getProtectionManager()->isWriteProtected();
  } finally {
    if (!java_is_null($presentation)) {
      $presentation->dispose();
    }
  }
```

## **ตรวจสอบหรือยืนยันว่ามีการใช้รหัสผ่านเฉพาะหรือไม่**

คุณอาจต้องการตรวจสอบและยืนยันว่ามีการใช้รหัสผ่านเฉพาะในการป้องกันเอกสารพรีเซนเทชั่น Aspose.Slides มีวิธีการให้คุณตรวจสอบรหัสผ่าน  

ตัวอย่างโค้ดนี้แสดงวิธีการตรวจสอบรหัสผ่าน:

```php
  $presentation = new Presentation("pres.pptx");
  try {
    # ตรวจสอบว่า "pass" ตรงกับ
    $isWriteProtected = $presentation->getProtectionManager()->checkWriteProtection("my_password");
  } finally {
    if (!java_is_null($presentation)) {
      $presentation->dispose();
    }
  }
```

มันจะคืนค่า `true` หากพรีเซนเทชั่นถูกเข้ารหัสด้วยรหัสผ่านที่ระบุ มิฉะนั้นจะคืนค่า `false`

{{% alert color="primary" title="ดูเพิ่มเติม" %}} 
- [ลายเซ็นดิจิทัลใน PowerPoint](/slides/th/php-java/digital-signature-in-powerpoint/)
{{% /alert %}}

## **FAQ**

**วิธีการเข้ารหัสที่ Aspose.Slides รองรับคืออะไร?**

Aspose.Slides รองรับวิธีการเข้ารหัสสมัยใหม่รวมถึงอัลกอริธึมที่ใช้ AES ซึ่งให้ความปลอดภัยระดับสูงสำหรับข้อมูลพรีเซนเทชั่นของคุณ

**จะเกิดอะไรขึ้นหากป้อนรหัสผ่านไม่ถูกต้องเมื่อพยายามเปิดพรีเซนเทชั่น?**

ระบบจะโยนข้อยกเว้นหากใช้รหัสผ่านไม่ถูกต้อง ซึ่งแจ้งให้คุณทราบว่าการเข้าถึงพรีเซนเทชั่นถูกปฏิเสธ นี้ช่วยป้องกันการเข้าถึงโดยไม่ได้รับอนุญาตและปกป้องเนื้อหาพรีเซนเทชั่น

**มีผลกระทบต่อประสิทธิภาพหรือไม่เมื่อทำงานกับพรีเซนเทชั่นที่ป้องกันด้วยรหัสผ่าน?**

กระบวนการเข้ารหัสและถอดรหัสอาจทำให้มีการใช้ทรัพยากรเพิ่มขึ้นเล็กน้อยในระหว่างการเปิดและบันทึก ในหลายกรณีผลกระทบต่อประสิทธิภาพนี้มีน้อยและไม่ได้ส่งผลอย่างมีนัยสำคัญต่อเวลาการประมวลผลโดยรวมของงานพรีเซนเทชั่นของคุณ
