إخفاء البيانات الحساسة في دفاتر Excel هو مطلب شائع للمؤسسات التي تشارك التقارير داخليًا أو مع الشركاء. GroupDocs.Merger Cloud SDK for Java يتيح للمطورين إضافة حماية بكلمة مرور إلى ملفات XLSX عبر واجهة REST بسيطة. في هذا الدليل ستتعلم كيفية تنفيذ حماية كلمة مرور لملف Excel عبر REST في Java، وستطلع على مثال Java كامل، وتنفذ أوامر cURL المكافئة للتكامل السحابي.

المتطلبات المسبقة والإعداد

قبل أن تبدأ، تأكد من أن لديك ما يلي:

  • تم تثبيت Java 8 أو أعلى.
  • Maven أو Gradle لإدارة التبعيات.
  • حساب GroupDocs Cloud مع معرف العميل و سر العميل.
  • الوصول إلى التخزين السحابي حيث ستقع ملفات 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 عبر 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 لأي معلمات أحدث.

  • ما هي صيغ الملفات المدعومة لحماية كلمة المرور؟
    حاليًا يدعم Merger API صيغ XLSX، DOCX، PPTX، وPDF للتشفير. راجع التوثيق الرسمي للحصول على القائمة الكاملة.

  • هل أحتاج إلى ترخيص لتشغيل المثال في بيئة التطوير؟
    يمكن إجراء التطوير والاختبار باستخدام ترخيص مؤقت. تتطلب عمليات النشر في الإنتاج ترخيصًا مدفوعًا، يمكنك شراؤه من خلال صفحة المنتج.

اقرأ المزيد