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