Приховування конфіденційних даних у Excel‑книгах є поширеною вимогою для підприємств, які діляться звітами всередині організації або з партнерами. GroupDocs.Merger Cloud SDK for Java дозволяє розробникам додавати захист паролем до файлів XLSX за допомогою простого REST API. У цьому посібнику ви дізнаєтеся, як реалізувати захист паролем Excel через REST у Java, переглянути повний приклад Java та виконати еквівалентні команди cURL для хмарної інтеграції.
Вимоги та налаштування
Перш ніж розпочати, переконайтеся, що у вас є наступне:
- Встановлений Java 8 або новіша версія.
- Maven або Gradle для керування залежностями.
- Обліковий запис GroupDocs Cloud з client ID та client secret.
- Доступ до хмарного сховища, де будуть розташовані файли Excel.
Додайте залежність Maven у ваш pom.xml (або відповідний фрагмент Gradle):
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-merger-cloud</artifactId>
<version>25.11</version>
</dependency>
Ви можете завантажити останні JAR-файли зі сторінки завантаження. Після додавання залежності створіть об’єкт конфігурації з вашими обліковими даними:
String clientId = "YOUR_CLIENT_ID";
String clientSecret = "YOUR_CLIENT_SECRET";
Configuration config = new Configuration(clientId, clientSecret);
MergerApi mergerApi = new MergerApi(config);
Коли клієнт готовий, ви можете перейти до фактичного процесу захисту паролем.
Захист Excel паролем через REST у Java: покроковий огляд
Крок 1: Завантажте вихідний документ
Визначте розташування вихідного файлу XLSX у вашому хмарному сховищі.
FileInfo inputFile = new FileInfo();
inputFile.setFilePath("input.xlsx"); // source Excel file
Крок 2: Встановити шлях призначення
Вкажіть, куди буде збережено захищений робочий зошит.
String outputPath = "output_protected.xlsx"; // destination file
Крок 3: Налаштування параметрів захисту паролем
Створіть об’єкт ProtectOptions, прикріпіть інформацію про файл, шлях виводу та бажаний пароль.
ProtectOptions protectOptions = new ProtectOptions();
protectOptions.setFileInfo(inputFile);
protectOptions.setOutputPath(outputPath);
protectOptions.setPassword("MySecretPassword"); // desired password
Крок 4: Створення запиту захисту документа
Обгорніть параметри у ProtectDocumentRequest.
ProtectDocumentRequest request = new ProtectDocumentRequest(protectOptions);
Крок 5: Виконати запит і обробити відповідь
Викличте метод API та обробіть будь‑які помилки.
try {
mergerApi.protectDocument(request);
System.out.println("Excel file has been password protected successfully.");
System.out.println("Protected file stored at: " + outputPath);
} catch (ApiException e) {
System.err.println("Error while protecting the Excel file:");
System.err.println("Status Code: " + e.getCode());
System.err.println("Message: " + e.getMessage());
}
Для отримання докладної інформації про кожен клас, зверніться до довідка API.
Повний робочий приклад захисту Excel паролем через REST у Java
Наступний код демонструє повний процес від початку до кінця.
import com.groupdocs.merger.cloud.ApiException;
import com.groupdocs.merger.cloud.Configuration;
import com.groupdocs.merger.cloud.api.MergerApi;
import com.groupdocs.merger.cloud.model.FileInfo;
import com.groupdocs.merger.cloud.model.ProtectOptions;
import com.groupdocs.merger.cloud.model.requests.ProtectDocumentRequest;
public class ProtectExcelExample {
public static void main(String[] args) {
// Replace with your actual client credentials
String clientId = "YOUR_CLIENT_ID";
String clientSecret = "YOUR_CLIENT_SECRET";
// Initialize the API configuration
Configuration config = new Configuration(clientId, clientSecret);
MergerApi mergerApi = new MergerApi(config);
// Define input and output file locations (relative to the storage root)
FileInfo inputFile = new FileInfo();
inputFile.setFilePath("input.xlsx"); // source Excel file
String outputPath = "output_protected.xlsx"; // destination file
// Set password protection options
ProtectOptions protectOptions = new ProtectOptions();
protectOptions.setFileInfo(inputFile);
protectOptions.setOutputPath(outputPath);
protectOptions.setPassword("MySecretPassword"); // desired password
// Build the request
ProtectDocumentRequest request = new ProtectDocumentRequest(protectOptions);
try {
// Execute the password protection operation
mergerApi.protectDocument(request);
System.out.println("Excel file has been password protected successfully.");
System.out.println("Protected file stored at: " + outputPath);
} catch (ApiException e) {
System.err.println("Error while protecting the Excel file:");
System.err.println("Status Code: " + e.getCode());
System.err.println("Message: " + e.getMessage());
}
}
}
Примітка: Цей приклад коду демонструє основну функціональність. Перш ніж використовувати його у вашому проєкті, переконайтеся, що оновили шляхи до файлів (
input.xlsx,output_protected.xlsx), щоб вони відповідали фактичним розташуванням ваших файлів, перевірте, що всі необхідні залежності правильно встановлені, і ретельно протестуйте у вашому середовищі розробки. Якщо ви зіткнетеся з будь-якими проблемами, будь ласка, зверніться до офіційної документації або зв’яжіться з командою підтримки для отримання допомоги.
Захист Excel Workbook за допомогою REST API та cURL
Нижче наведено набір команд cURL, які виконують ту ж операцію захисту паролем безпосередньо через REST‑концеві точки.
1. Аутентифікуйтеся та отримайте токен доступу
curl -X POST "https://api.groupdocs.cloud/v2.0/auth/token" \
-H "Content-Type: application/json" \
-d '{
"client_id": "YOUR_CLIENT_ID",
"client_secret": "YOUR_CLIENT_SECRET"
}'
Відповідь містить access_token, який ви будете використовувати у наступних викликах.
2. Завантажте вихідний файл XLSX
curl -X PUT "https://api.groupdocs.cloud/v2.0/storage/file/input.xlsx" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/octet-stream" \
--data-binary @input.xlsx
3. Запит захисту паролем
curl -X POST "https://api.groupdocs.cloud/v2.0/merger/protect" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"fileInfo": { "filePath": "input.xlsx" },
"outputPath": "output_protected.xlsx",
"password": "MySecretPassword"
}'
4. Завантажте захищений робочий зошит
curl -X GET "https://api.groupdocs.cloud/v2.0/storage/file/output_protected.xlsx" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-o output_protected.xlsx
Ці команди дозволяють інтегрувати процес захисту у скрипти або CI‑конвеєри. Для отримання докладнішої інформації перегляньте офіційну документацію API.
Висновок
Впровадження захист паролем Excel через REST у Java є простим за допомогою GroupDocs.Merger Cloud SDK for Java. Дотримуючись наведених вище кроків, ви можете захистити книги Excel, автоматизувати процес у серверних застосунках і зберегти конфіденційні дані в безпеці. Не забудьте отримати відповідну ліцензію для використання у продакшн‑середовищі; інформація про ціни доступна на сторінці продукту, і ви можете розпочати з тимчасової ліцензії, щоб оцінити бібліотеку. Щасливого кодування!
Часті питання
Чим відрізняється захист паролем Excel через REST у Java від локального шифрування?
Хмарний API виконує шифрування на сервері, тому вам не потрібно керувати криптографічними бібліотеками локально. SDK обробляє формування запиту та розбір відповіді, спрощуючи інтеграцію.Чи можливо встановити додаткові параметри захисту, такі як режим лише для читання?
Поточний класProtectOptionsзосереджений на захисті паролем. Для більш просунутих функцій безпеки зверніться до довідки API щодо будь‑яких новіших параметрів.Які формати файлів підтримуються для захисту паролем?
API Merger наразі підтримує XLSX, DOCX, PPTX, та PDF для шифрування. Дивіться офіційну документацію для повного списку.Чи потрібна мені ліцензія для запуску прикладу у середовищі розробки?
Розробка та тестування можуть виконуватись за допомогою тимчасової ліцензії. Для розгортання у продакшн потрібна платна ліцензія, яку можна придбати на сторінці продукту.
