Защита презентаций паролем в PHP
О защите паролем
Как работает защита паролем для презентации?
Когда вы защищаете презентацию паролем, вы устанавливаете пароль, который накладывает определённые ограничения на презентацию. Чтобы снять ограничения, необходимо ввести пароль. Презентация, защищённая паролем, считается заблокированной.
Обычно вы можете установить пароль, чтобы применить эти ограничения к презентации:
-
Изменение
Если вы хотите, чтобы только определённые пользователи могли изменять вашу презентацию, вы можете установить ограничение на изменение. Это ограничение запрещает людям изменять, менять или копировать элементы вашей презентации (если они не предоставят пароль).
Однако в этом случае, даже без пароля, пользователь сможет получить доступ к документу и открыть его. В режиме только для чтения пользователь может просматривать содержимое — гиперссылки, анимацию, эффекты и прочее — внутри вашей презентации, но не может копировать элементы или сохранять презентацию.
-
Открытие
Если вы хотите, чтобы только определённые пользователи могли открыть вашу презентацию, вы можете установить ограничение на открытие. Это ограничение не позволяет людям даже просматривать содержимое вашей презентации (если они не предоставят пароль).
Технически ограничение на открытие также препятствует пользователям изменять ваши презентации: если люди не могут открыть презентацию, они не могут её модифицировать или вносить изменения.
Примечание что когда вы защищаете презентацию паролем, чтобы запретить её открытие, файл презентации шифруется.
Как защитить презентацию паролем онлайн
-
Перейдите на страницу нашего Aspose.Slides Lock.

-
Нажмите Перетащите или загрузите файлы.
-
Выберите файл, который вы хотите защитить паролем, на вашем компьютере.
-
Введите предпочтительный пароль для защиты от редактирования; введите предпочтительный пароль для защиты от просмотра.
-
Если вы хотите, чтобы пользователи видели вашу презентацию как окончательный вариант, отметьте флажок Mark as final.
-
Нажмите PROTECT NOW.
-
Нажмите DOWNLOAD NOW.
Защита паролем для презентаций в Aspose.Slides
Поддерживаемые форматы
Aspose.Slides поддерживает защиту паролем, шифрование и похожие операции для презентаций в этих форматах:
- PPTX and PPT - Microsoft PowerPoint Presentation
- ODP - OpenDocument Presentation
- OTP - OpenDocument Presentation Template
Поддерживаемые операции
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 предоставляет средства для проверки пароля.
Этот пример кода показывает, как проверить пароль:
# проверить, совпадает ли "pass" с
$isWriteProtected = $presentation->getProtectionManager()->checkWriteProtection("my_password");
Он возвращает true, если презентация зашифрована указанным паролем. В противном случае возвращает false.
See also
FAQ
Какие методы шифрования поддерживает Aspose.Slides?
Aspose.Slides поддерживает современные методы шифрования, включая алгоритмы на основе AES, обеспечивая высокий уровень защиты данных ваших презентаций.
Что происходит, если при попытке открыть презентацию введён неправильный пароль?
Если используется неверный пароль, генерируется исключение, уведомляющее, что доступ к презентации отклонён. Это помогает предотвращать неавторизованный доступ и защищать содержимое презентации.
Есть ли какие‑либо последствия для производительности при работе с защищёнными паролем презентациями?
Процессы шифрования и дешифрования могут вызвать небольшое увеличение нагрузки при открытии и сохранении файлов. В большинстве случаев влияние на производительность минимально и не существенно влияет на общее время обработки ваших задач с презентациями.