Ukrywanie wrażliwych danych w skoroszytach Excel jest powszechnym wymogiem dla przedsiębiorstw, które udostępniają raporty wewnętrznie lub partnerom. GroupDocs.Merger Cloud SDK for Java umożliwia programistom dodanie ochrony hasłem do plików XLSX za pomocą prostego interfejsu REST API. W tym przewodniku dowiesz się, jak zaimplementować zabezpieczanie hasłem Excel za pomocą REST w Javie, zobaczysz kompletny przykład w Javie oraz uruchomisz równoważne polecenia cURL dla integracji w chmurze.

Wymagania wstępne i konfiguracja

Zanim rozpoczniesz, upewnij się, że masz następujące:

  • Zainstalowany Java 8 lub nowszy.
  • Maven lub Gradle do zarządzania zależnościami.
  • Konto GroupDocs Cloud z client ID i client secret.
  • Dostęp do pamięci w chmurze, w której będą przechowywane pliki Excel.

Dodaj zależność Maven do swojego pom.xml (lub równoważny fragment Gradle):

<dependency>
    <groupId>com.groupdocs</groupId>
    <artifactId>groupdocs-merger-cloud</artifactId>
    <version>25.11</version>
</dependency>

Możesz pobrać najnowsze pliki JAR ze strony pobierania. Po dodaniu zależności utwórz obiekt konfiguracji z danymi uwierzytelniającymi:

String clientId = "YOUR_CLIENT_ID";
String clientSecret = "YOUR_CLIENT_SECRET";

Configuration config = new Configuration(clientId, clientSecret);
MergerApi mergerApi = new MergerApi(config);

Po przygotowaniu klienta możesz przejść do rzeczywistego przepływu pracy z zabezpieczeniem hasłem.

Zabezpieczanie hasłem pliku Excel za pomocą REST w Javie: Przewodnik krok po kroku

Krok 1: Załaduj dokument źródłowy

Zdefiniuj lokalizację pliku źródłowego XLSX w swojej pamięci w chmurze.

FileInfo inputFile = new FileInfo();
inputFile.setFilePath("input.xlsx");   // source Excel file

Krok 2: Ustaw ścieżkę docelową

Określ, gdzie zostanie zapisany chroniony skoroszyt.

String outputPath = "output_protected.xlsx"; // destination file

Krok 3: Skonfiguruj opcje ochrony hasłem

Utwórz obiekt ProtectOptions, dołącz informacje o pliku, ścieżkę wyjściową i żądane hasło.

ProtectOptions protectOptions = new ProtectOptions();
protectOptions.setFileInfo(inputFile);
protectOptions.setOutputPath(outputPath);
protectOptions.setPassword("MySecretPassword"); // desired password

Krok 4: Zbuduj żądanie ochrony dokumentu

Umieść opcje w ProtectDocumentRequest.

ProtectDocumentRequest request = new ProtectDocumentRequest(protectOptions);

Krok 5: Wykonaj żądanie i obsłuż odpowiedź

Wywołaj metodę API i obsłuż wszelkie błędy.

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());
}

Aby uzyskać więcej szczegółów na temat każdej klasy, odwołaj się do referencji API.

Pełny działający przykład zabezpieczania hasłem pliku Excel za pomocą REST w Javie

Poniższy kod demonstruje kompletny proces od początku do końca.

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());
        }
    }
}

Uwaga: Ten przykład kodu demonstruje podstawową funkcjonalność. Przed użyciem go w swoim projekcie upewnij się, że zaktualizowałeś ścieżki do plików (input.xlsx, output_protected.xlsx), aby odpowiadały rzeczywistym lokalizacjom, sprawdź, czy wszystkie wymagane zależności są prawidłowo zainstalowane, oraz dokładnie przetestuj w środowisku programistycznym. Jeśli napotkasz jakiekolwiek problemy, odwołaj się do oficjalnej dokumentacji lub skontaktuj się z zespołem wsparcia w celu uzyskania pomocy.

Zabezpiecz skoroszyt Excel za pomocą REST API przy użyciu cURL

Poniżej znajduje się zestaw poleceń cURL, które wykonują tę samą operację zabezpieczania hasłem bezpośrednio na endpointach REST.

1. Uwierzytelnij się i uzyskaj token dostępu

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"
         }'

Odpowiedź zawiera access_token, którego będziesz używać w kolejnych wywołaniach.

2. Prześlij plik źródłowy 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. Żądanie ochrony hasłem

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. Pobierz chroniony skoroszyt

curl -X GET "https://api.groupdocs.cloud/v2.0/storage/file/output_protected.xlsx" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -o output_protected.xlsx

Te polecenia pozwalają zintegrować przepływ pracy ochrony w skryptach lub pipeline’ach CI. Aby uzyskać więcej szczegółów, zobacz oficjalną dokumentację API.

Podsumowanie

Implementacja zabezpieczanie hasłem Excel przy użyciu REST w Javie jest prosta przy użyciu GroupDocs.Merger Cloud SDK for Java. Postępując zgodnie z powyższymi krokami, możesz zabezpieczyć skoroszyty Excel, zautomatyzować proces w aplikacjach po stronie serwera i chronić wrażliwe dane. Pamiętaj, aby uzyskać odpowiednią licencję do użytku produkcyjnego; informacje o cenach są dostępne na stronie produktu, a możesz rozpocząć od tymczasowej licencji, aby ocenić bibliotekę. Miłego kodowania!

FAQs

  • Jak różni się ochrona hasłem pliku Excel za pomocą REST w Javie od lokalnego szyfrowania?
    API w chmurze wykonuje szyfrowanie na serwerze, więc nie musisz zarządzać bibliotekami kryptograficznymi lokalnie. SDK obsługuje konstruowanie żądania i parsowanie odpowiedzi, upraszczając integrację.

  • Czy można ustawić dodatkowe opcje ochrony, takie jak tryb tylko do odczytu?
    Aktualna klasa ProtectOptions koncentruje się na ochronie hasłem. Aby uzyskać bardziej zaawansowane funkcje zabezpieczeń, zapoznaj się z referencją API w poszukiwaniu nowszych parametrów.

  • Jakie formaty plików są obsługiwane dla ochrony hasłem?
    API Merger obecnie obsługuje XLSX, DOCX, PPTX, i PDF do szyfrowania. Odwołaj się do oficjalnej dokumentacji po pełną listę.

  • Czy potrzebuję licencji, aby uruchomić przykład w środowisku deweloperskim?
    Rozwój i testowanie można przeprowadzić przy użyciu tymczasowej licencji. Wdrożenia produkcyjne wymagają płatnej licencji, którą można zakupić na stronie produktu.

Czytaj więcej