يمتلك المستخدم مجلدًا في "ملفاتي". قد يحتوي المجلد على عدة مستخدمين لديهم إذن الوصول إلى ملفات مختلفة. يعني نموذج الوصول المقيد هذا أنّ المستخدمين المختلفين قد يرون قوائم مختلفة من العناصر ضمن المجلد نفسه. يُمنح المستخدم "إذن وصول مقيّد" إذا كان لديه إذن الوصول إلى المجلد الرئيسي في "ملفاتي" ولكن ليس إلى ملف ضمن هذا المجلد. ويؤدي ذلك إلى صعوبة معرفة المستخدمين الذين يمكنهم الوصول إلى البيانات ضمن التسلسل الهرمي.
في المقابل، تكون مساحة التخزين السحابي المشتركة هي مالكة ملفاتها. تتضمّن مساحات التخزين السحابي المشتركة نموذجًا شاملاً، لذا تتضمّن كل مساحة قائمة العناصر نفسها ضمن المجلد نفسه.
يؤدي طرح المجلدات ذات إذن الوصول المحدود إلى تكرار نموذج الوصول الواسع النطاق من مساحات التخزين السحابي المشتركة إلى "ملفاتي". بفضل هذا التغيير، أصبحت المجلدات ذات الوصول المحدود هي الاستثناء الوحيد الذي يسمح بحظر الوصول إلى مجلد فرعي معيّن في كلّ من "ملفاتي" ومساحات التخزين السحابي المشتركة.
يوضّح هذا الدليل كيفية إدارة المجلدات ذات إذن الوصول المحدود وإذن الوصول الواسع في Google Drive.
لمحة عن المجلدات ذات إذن الوصول المحدود
تتيح لك المجلدات ذات أذونات الوصول المحدودة حصر الوصول إلى المجلدات بمستخدمين معيّنين. لا يمكن لأحد فتح المجلد والوصول إلى محتواه إلا المستخدمين الذين تضيفهم مباشرةً إلى أذونات المجلد. يمكن للمستخدمين الذين لديهم إذن وصول مكتسَب إلى المجلد المشترَك في "ملفاتي" أو مجلد مساحة التخزين السحابي المشتركة (من خلال إذن الوصول من مجلد رئيسي) الاطّلاع على المجلد المحظور في Drive، ولكن لا يمكنهم فتحه. تساعد هذه الميزة في مواءمة سلوك مشاركة العناصر في كل من "ملفاتي" ومساحات التخزين السحابي المشتركة، ما يتيح لك تنظيم المجلدات التي تتضمّن محتوًى حسّاسًا إلى جانب المحتوى الذي تتم مشاركته على نطاق أوسع.
تتوفّر المجلدات ذات الوصول المقيد في كلّ من "ملفاتي" ومساحات التخزين السحابي المشتركة. يمكن للمستخدمين الذين لديهم دور owner في "ملفاتي" ودور organizer في مساحات التخزين السحابي المشتركة الوصول إلى المجلدات ذات إذن الوصول المحدود في أي وقت. لتعديل قائمة مستخدمي المجلد، لا يلزم توفُّر أي أذونات خاصة. يمكن للأدوار التي يمكنها مشاركة المجلدات تعديل قوائم الأعضاء. لمزيد من المعلومات حول الأدوار والأذونات، يُرجى الاطّلاع على الأدوار والأذونات ونظرة عامة على مساحات التخزين المشتركة.
يُرجى العِلم أنّه على الرغم من أنّ المجلدات هي نوع من الملفات، لا يتوفّر إذن الوصول المحدود للملفات.
ضبط إذن وصول محدود إلى مجلد
مع أنّ المستخدمين الذين لديهم أذونات مباشرة للمجلد يمكنهم الوصول إلى مجلد ذي إذن وصول محدود، إلا أنّ الدور owner في "ملفاتي" والدور organizer في مساحات التخزين السحابي المشتركة هما الدورَان الوحيدان اللذان يمكنهما تفعيل إذن الوصول المحدود أو إيقافه.
بالإضافة إلى ذلك، إذا كان لدى مستخدم دور writer في "ملفاتي" وكان حقل writersCanShare المنطقي في مورد files مضبوطًا على true، يمكنه أيضًا تفعيل الميزة أو إيقافها.
لتقييد الوصول إلى مجلد، اضبط الحقل المنطقي inheritedPermissionsDisabled
في المرجع files على true. عندما تكون القيمة true، لن يتمكّن من الوصول إلى المجلد سوى المستخدمين الذين لديهم دور owner أو دور organizer أو أذونات مباشرة للمجلد.
لإعادة تفعيل الأذونات المكتسبة، اضبط inheritedPermissionsDisabled على false.
التحقّق من الإذن بتقييد الوصول إلى مجلد
للتحقّق مما إذا كان بإمكانك تقييد الوصول إلى مجلد أم لا، راجِع القيم المنطقية للحقلَين capabilities.canDisableInheritedPermissions وcapabilities.canEnableInheritedPermissions في مرجع files. تؤكّد هذه الإعدادات ما إذا كان لديك إذن بتقييد الوصول إلى مجلد من خلال الحقل inheritedPermissionsDisabled.
لمزيد من المعلومات حول capabilities، يُرجى الاطّلاع على التعرّف على إمكانات الملفات.
عرض العناصر الفرعية لمجلد ذي إذن وصول محدود
للتحقّق مما إذا كان بإمكانك إدراج العناصر الفرعية لمجلد، استخدِم الحقل المنطقي capabilities.canListChildren.
تكون القيمة المعروضة دائمًا false عندما لا يكون العنصر مجلدًا أو إذا تمت إزالة إذن وصول مقدّم الطلب إلى محتوى المجلد من خلال ضبط inheritedPermissionsDisabled على false.
إذا تمت إزالة إذن الوصول إلى محتوى المجلد، سيظل بإمكانك الوصول إلى البيانات الوصفية الخاصة بالمجلد باستخدام الطريقتَين files.get() وfiles.list(). للتأكّد من أنّ الوصول محدود، راجِع نص الردّ لمعرفة ما إذا كان العنصر مجلدًا بنوع MIME application/vnd.google-apps.folder وتم ضبط الحقل capabilities.canListChildren على "خطأ". إذا حاولت إدراج العناصر الفرعية لمثل هذا المجلد، ستكون النتيجة فارغة دائمًا.
الوصول إلى بيانات المجلدات ذات إذن الوصول المحدود
تتيح لك المجلدات ذات الوصول المحدود عرض البيانات الوصفية الخاصة بالمجلد إذا لم يكن لديك إذن بالوصول إلى محتوى المجلد.
عند استخدام مورد permissions لتحديد إذن وصول المستخدم، تتضمّن كل من مجلدات "ملفاتي" ومجلدات مساحة التخزين السحابي المشتركة التي تمنح إذن الوصول إلى البيانات الوصفية فقط القيمتين التاليتين في نص الرد: inheritedPermissionsDisabled=true وview=metadata. يتم ضبط الدور دائمًا على reader. لا تتم تعبئة الحقل view إلا للأذونات التي تنتمي إلى view. لمزيد من المعلومات، اطّلِع على المشاهدات.
يتم ضبط الحقل inherited على true لجميع الإدخالات في الحقل permissionDetails للإشارة إلى أنّ الإذن موروث ولم يتم منح إذن الوصول المباشر إلى محتوى المجلد.
لمنح إذن الوصول إلى محتوى المجلد والبيانات الوصفية، اضبط الحقل inheritedPermissionsDisabled على false أو عدِّل الدور إلى reader أو أعلى.
أخيرًا، إذا تم تقييد إذن أولاً من خلال إيقاف الميزة "اكتساب الأذونات" في مجلد (inheritedPermissionsDisabled=true)، ثم تمت إضافة الإذن مرة أخرى مباشرةً إلى المجلد، ستصبح القيم في نص الاستجابة inheritedPermissionsDisabled=true مع عدم ضبط الحقل view. إذا كان المجلد في مساحة تخزين سحابي مشتركة، ستتضمّن قائمة permissionDetails إدخالاً مع ضبط الحقل inherited على false للإشارة إلى أنّ الإذن غير موروث. يمنح هذا الإذن إمكانية الوصول إلى محتوى المجلد والبيانات الوصفية، تمامًا مثل أي إذن آخر.
حذف المجلدات ذات إذن الوصول المحدود
يمكنك حذف المجلدات ذات إذن الوصول المحدود باستخدام طريقة files.delete() في مورد files.
في "ملفاتي"، لا يمكن لأحد حذف التسلسل الهرمي للمجلد إلا مالكه. إذا حذف مستخدم تسلسلاً هرميًا يتضمّن مجلدات ذات إذن وصول محدود ومملوكة لمستخدمين آخرين، يتم نقل هذه المجلدات إلى القسم "ملفاتي" الخاص بالمالك.
إذا كان لدى المستخدم دور owner، سيتم حذف التسلسل الهرمي بالكامل.
في مساحات التخزين السحابي المشتركة، يمكن للدور organizer حذف التسلسلات الهرمية حتى إذا كانت تحتوي على مجلدات ذات إذن وصول محدود. إذا حذف مستخدم لديه دور fileOrganizer تسلسلاً هرميًا يحتوي على مجلدات ذات إذن وصول محدود، ستختلف النتيجة حسب ما إذا تمت إعادة إضافته كـ fileOrganizer إلى المجلدات ذات إذن الوصول المحدود. وفي حال كان الأمر كذلك، سيتم حذف التسلسل الهرمي بالكامل. إذا لم يكن الأمر كذلك، سيتم نقل المجلدات ذات إذن الوصول المحدود إلى المجلد الجذر في مساحة التخزين السحابي المشتركة.
لمحة عن الوصول الموسّع
يؤدي طرح المجلدات ذات إذن الوصول المحدود إلى توسيع نطاق نموذج الوصول الشامل من مساحات التخزين السحابي المشتركة إلى "ملفاتي". بعد طرح نموذج أذونات الوصول، يعني توفّر إذن الوصول إلى مجلد أنّ لديك على الأقل مستوى الوصول نفسه إلى كل المحتوى في التسلسل الهرمي لهذا المجلد. المجلدات ذات إذن الوصول المحدود هي الاستثناء الوحيد الذي يسمح بتقييد الوصول إلى مجلد فرعي معيّن في كلّ من "ملفاتي" ومساحات التخزين السحابي المشتركة. يعني هذا أيضًا أنّه ما لم يكن مجلدك بأذونات وصول محدودة، لن يعود بإمكانك إزالة أذونات الوصول الموروثة من المجلد الأصل. ويؤدي ذلك إلى أن تعرض واجهة برمجة التطبيقات Drive API استجابة خطأ. لتحديد إذن وصول أكثر دقة ضمن التسلسل الهرمي، يمكنك ضبط إذن وصول محدود على المجلد.
التكيّف مع الوصول الموسّع
لتسهيل عملية التكيّف مع نموذج الوصول الموسَّع على المطوّرين، تم إجراء العديد من التحسينات على Google Drive API:
تم الآن ملء الحقل
permissionDetails[]في الموردpermissionsللعناصر في "ملفاتي". في السابق، كانت الحقول إما غير مضبوطة أو مكرّرة من الحقلteamDrivePermissionDetailsعند الاقتضاء. تتم تعبئة الحقلَينpermissionTypeوinheritedفقط في "ملفاتي".يشير الحقل
permissionDetails[].inheritedإلى ما إذا كان الإذن مكتسبًا من العنصر الرئيسي. يتيح لك هذا العمود رصد ما إذا كانت أدوار معيّنة (مثلreader) موروثة من العنصر الرئيسي، وما إذا كان دور أعلى (مثلwriter) قد تم منحه للعنصر مباشرةً.عند عرض أذونات عنصر ما، قد يحتوي الحقل
permissionDetails[]على إدخالات متعدّدة. في حال توفّره، سيكون هناك إدخال واحد للإذن مباشرةً على العنصر لهذا النطاق، ثم إدخالات للأذونات الموروثة أو أذونات الأعضاء على العنصر.يمكن للمطوّرين الموافقة على سلوك واجهة برمجة التطبيقات للوصول الموسّع في "ملفي" قبل أي إجراءات تنفيذية إلزامية مستقبلية. يمكنك ضبط مَعلمة الطلب
enforceExpansiveAccessعلىtrueلكي لا تؤثر التغييرات المستقبلية على الوصول الموسّع في تطبيقك.يعني الاشتراك الآن أنّ واجهة برمجة التطبيقات ستعمل بالطريقة نفسها مع العناصر في "ملفاتي" كما تعمل حاليًا مع العناصر في مساحات التخزين السحابي المشتركة. على سبيل المثال، أي محاولة لتقييد الوصول إلى مستوى أقل من الدور الموروث ستفشل عند استدعاء
permissions.update(). وبالمثل، يتعذّر تنفيذ طلبpermissions.delete()إذا كان الإذن مكتسَبًا.
رصد ومنع الوصول المحظور
قد ينشئ تطبيقك إذن وصول محدودًا (حيث يمكن للمستخدم الوصول إلى المجلد الرئيسي "ملفاتي" ولكن ليس إلى ملف داخل هذا المجلد) في مجلدات "ملفاتي" عند استخدام الطريقتَين permissions.update() أو permissions.delete().
عند استخدام هذه الطرق، يمكنك مراجعة الحقول في مورد permissions
لمعرفة ما إذا كان الطلب قد يؤدي إلى إنشاء إذن وصول مقيّد وتجنُّب إرسال
مثل هذه الطلبات. لرصد هذه الحالة، استخدِم الحقل enforceExpansiveAccess في طلبك.
بالإضافة إلى ذلك، إذا كان تطبيقك قد أنشأ إذن وصول محدودًا إلى مجلداتك، يمكنك اتّخاذ الخطوات التالية:
تصفَّح تسلسل المجلدات الهرمي لإزالة إذن الوصول المقيد. بدلاً من ذلك، عليك ضبط إذن وصول محدود إلى المجلد.
إذا كان العنصر الذي تحاول إلغاء مشاركته هو ملف، يمكنك إنشاء مجلد وسيط وتعيين أذونات وصول محدودة إليه ونقل الملف إلى المجلد الجديد.
إذا كنت لا تريد استخدام مجلدات ذات إذن وصول محدود ولكن عليك إزالة بعض أذونات الوصول، يمكنك نقل الملف إلى مجلد خاص (مثل المجلد الجذر في "ملفاتي"). يمكنك بعد ذلك إنشاء اختصار إلى الموقع الأصلي للعنصر ليتمكّن المستخدمون من مواصلة استخدامه.
مواضيع ذات صلة
- مشاركة الملفات والمجلدات ومساحات التخزين
- كيفية الوصول إلى الملفات في مساحات التخزين السحابي المشتركة
- التعرّف على المجلدات ذات إذن الوصول المحدود