تم ربط كل ملف ومجلد ومساحة تخزين سحابي مشتركة في Google Drive
الأذونات. يحتوي كل مورد
يحدِّد الإذن لـ type
محدَّد (مستخدم أو مجموعة أو نطاق أو أي مستخدم).
وrole
، مثل "معلِّق" أو "القارئ". على سبيل المثال، قد يحتوي ملف على
إذن يمنح مستخدمًا معيّنًا (type=user
) إذنًا بالقراءة فقط
(role=reader
) بينما يمنح إذن آخر أعضاء مجموعة معيّنة
(type=group
) إمكانية إضافة تعليقات إلى ملف (role=commenter
).
للاطّلاع على قائمة كاملة بالأدوار والعمليات التي يسمح بها كلٌ منها، يُرجى الاطّلاع على الأدوار الأذونات.
سيناريوهات لمشاركة موارد Drive
هناك خمسة أنواع مختلفة من سيناريوهات المشاركة:
لمشاركة ملف في "ملفاتي"، يجب أن يكون لدى المستخدم
role=writer
أوrole=owner
.إذا كانت القيمة المنطقية
writersCanShare
علىFalse
للملف، يجب أن يكون لدى المستخدمrole=owner
.إذا كان المستخدم الذي لديه
role=writer
لديه إذن وصول مؤقت محكوم تاريخ انتهاء الصلاحية ووقته، فلن يتمكن من مشاركة الملف. لمزيد من المعلومات، معلومات، راجع تعيين تاريخ انتهاء الصلاحية لتقييد الملف الوصول.
لمشاركة مجلد في "ملفاتي"، يجب أن يكون لدى المستخدم
role=writer
أوrole=owner
إذا تم ضبط القيمة المنطقية
writersCanShare
علىFalse
للملف، يجب أن يحصل المستخدم علىrole=owner
الأكثر تساهلاً.لا يُسمح بالوصول المؤقت (الخاضع بتاريخ ووقت انتهاء الصلاحية) في مجلدات "ملفاتي" مع
role=writer
. لمزيد من المعلومات، المعلومات، راجع تحديد تاريخ انتهاء الصلاحية لتقييد إمكانية الوصول إلى الملفات
لمشاركة ملف في مساحة تخزين سحابي مشتركة، يجب أن يكون لدى المستخدم
role=writer
،role=fileOrganizer
أوrole=organizer
.- لا ينطبق الإعداد
writersCanShare
على العناصر في مساحات التخزين السحابي المشتركة. ويتم التعامل معها كما لو كانت مضبوطة دائمًا علىTrue
.
- لا ينطبق الإعداد
لمشاركة مجلد في مساحة تخزين سحابي مشتركة، يجب أن يكون لدى المستخدم
role=organizer
.- إذا كانت القيود
sharingFoldersRequiresOrganizerPermission
على تم ضبط مساحة التخزين السحابي المشتركة علىFalse
، ويمكن للمستخدمين الذين لديهمrole=fileOrganizer
مشاركة المجلدات في مساحة التخزين السحابي المشتركة هذه.
- إذا كانت القيود
لإدارة عضوية مساحة التخزين السحابي المشتركة، يجب أن يكون لدى المستخدم
role=organizer
. فقط يمكن للمستخدمين والمجموعات أن يكونوا أعضاء في مساحات التخزين السحابي المشتركة.
تحديد تاريخ انتهاء الصلاحية لتقييد الوصول إلى الملفات
عندما تعمل مع أشخاص في مشروع حساس، قد ترغب في تقييد وصولهم إلى ملفات معينة في Drive بعد فترة من الوقت. بالنسبة إلى الملفات في "ملفاتي"، يمكنك تحديد تاريخ انتهاء صلاحية ليكون تقييد أو إزالة إمكانية الوصول إلى هذا الملف.
لتحديد تاريخ انتهاء الصلاحية:
- يمكنك استخدام
permissions.create
. وتعيينpermissions.expirationTime
(إلى جانب الحقول الأخرى المطلوبة). لمزيد من المعلومات، يُرجى مراجعة أنشئ إذنًا. - يمكنك استخدام
permissions.update
. وتعيين الحقلpermissions.expirationTime
(بالإضافة إلى الحقول المطلوبة). لمزيد من المعلومات، يُرجى الاطّلاع على تغيير الأذونات.
يشير الحقل expirationTime
إلى وقت انتهاء صلاحية الإذن باستخدام RFC 3339.
التاريخ والوقت
. تخضع أوقات انتهاء الصلاحية للقيود التالية:
- ولا يمكن ضبطها على أذونات المستخدِم والمجموعة إلا.
- يجب أن يكون الوقت في المستقبل.
- لا يمكن أن يكون الوقت في المستقبل أكثر من سنة.
لمزيد من المعلومات حول تاريخ انتهاء الصلاحية، اطّلِع على المقالات التالية:
نشر الأذونات
سيتم نشر قوائم الأذونات لمجلد لأسفل، وسيتم نشر كل الملفات الفرعية تكتسب المجلدات الأذونات من المجلد الرئيسي. كلما كانت الأذونات أو التسلسل الهرمي، يحدث الانتشار بشكل متكرر عبر كل العناصر المجلدات. على سبيل المثال، إذا كان هناك ملف في مجلد وتم نقل هذا المجلد داخل مجلد آخر، يتم نشر الأذونات في المجلد الجديد إلى الملف. إذا منح المجلد الجديد مستخدم الملف دورًا جديدًا، مثل "الكاتب"، هو/هي يلغي دوره القديم.
بالعكس، إذا كان الملف يكتسب role=writer
من مجلد وتم نقله إلى
مجلد آخر يوفر "قارئًا" يتم اكتساب الملف الآن
role=reader
لا يمكن إزالة الأذونات المكتسَبة من ملف أو مجلد في مساحة تخزين سحابي مشتركة. بدلاً من ذلك، يجب تعديل هذه الأذونات على الأصل المباشر أو غير المباشر من التي كانت مكتسَبة منها. يمكن إزالة الأذونات المكتسَبة من العناصر ضمن "ملفاتي" أو "تمت مشاركتها معي".
وعلى النقيض، يمكن إلغاء الأذونات الموروثة على ملف أو مجلد في
Google Drive. لذلك، إذا كان أحد الملفات يكتسب role=writer
من ملف
مجلد Drive، يمكنك ضبط role=reader
في الملف على خفض
مستوى الإذن لديك.
الإمكانات
لا يؤدي مورد الأذونات في النهاية
تحديد قدرة المستخدم الحالي على تنفيذ إجراءات على ملف أو مجلد.
بدلاً من ذلك، يحتوي مورد الملفات على مجموعة من
حقول capabilities
المنطقية المستخدمة للإشارة إلى ما إذا كان يمكن تطبيق إجراء
تنفيذها على ملف أو مجلد. تضبط واجهة برمجة التطبيقات Google Drive هذه الحقول استنادًا إلى
مورد أذونات المستخدم الحالي المرتبط بالملف أو المجلد.
على سبيل المثال، عندما يسجّل أليكس الدخول إلى تطبيقك ويحاول مشاركة ملف، فإن دور أليكس
تم التحقق من الأذونات في الملف. وإذا سمح لهم الدور بمشاركة ملف،
تتم تعبئة capabilities
المرتبط بالملف، مثل canShare
بالنسبة إلى الدور. إذا أراد أليكس مشاركة الملف، فسيتحقق تطبيقك من
capabilities
لضمان ضبط canShare
على true
.
للاطّلاع على مثال لاسترداد الملف capabilities
، يُرجى مراجعة التحقق من المستخدم.
الأذونات
إنشاء إذن
الحقلان التاليان ضروريان عند إنشاء إذن:
type
:type
يحدد نطاق الإذن (user
أوgroup
أوdomain
أوanyone
). إذن باستخدامtype=user
ينطبق على مستخدم معين بينما ينطبق إذا كان هناك إذن معtype=domain
يسري على جميع المستخدمين في نطاق معين.role
: الحقلrole
تحدد العمليات التي يمكن أن تنفذهاtype
. على سبيل المثال، إذن باستخدامtype=user
وrole=reader
يمنح مستخدمًا محددًا الإذن بالقراءة فقط في الملف أو المجلد. أو الحصول على إذن باستخدام "type=domain
" ويتيحrole=commenter
لجميع المستخدمين في النطاق إضافة تعليقات إلى الملف. بالنسبة قائمة كاملة بالأدوار والعمليات التي يسمح بها كل منها، راجع الأدوار الأذونات.
عند إنشاء إذن لاستخدام type=user
أو type=group
، يجب أيضًا:
عليك تقديم emailAddress
لربطه
المستخدم أو المجموعة المحددة إلى الإذن.
عند إنشاء إذن باستخدام "type=domain
"، عليك أيضًا تقديم
domain
لربط نطاق محدّد
من أجل الحصول على الإذن.
لإنشاء إذن، اتّبِع الخطوات التالية:
- استخدام الطريقة
permissions.create
معfileId
للملف أو المجلد المرتبط بها. - في نص الطلب، حدِّد
type
وrole
. - في حال كانت
type=user
أوtype=group
، قدِّمemailAddress
. إذا كانتtype=domain
، تقديمdomain
عرض مثال
يعرض نموذج الرمز البرمجي التالي كيفية إنشاء إذن. تعرض الاستجابة نسخة افتراضية من مورد Permission
، بما في ذلك permissionId
الممنوح.
طلب
POST https://www.googleapis.com/drive/v3/files/FILE_ID
/permissions
{ "requests": [ { "type": "user", "role": "commenter", "emailAddress": "alex@altostrat.com" } ] }
الردّ
{
"kind": "drive#permission",
"id": "PERMISSION_ID
",
"type": "user",
"role": "commenter"
}
استخدام الجماهير المستهدفة
الجماهير المستهدفة هي مجموعات من الأشخاص، مثل الأقسام أو الفِرق، يمكنك ننصح المستخدمين بمشاركة عناصرهم معها. يمكنك تشجيع المستخدمين على مشاركة ذات جمهور محدد أو محدود أكثر من جمهورك بالكامل التنظيم. يمكن أن تساعدك ميزة "الجماهير المستهدفة" في تحسين أمان وخصوصية وتسهل على المستخدمين مشاركتها بشكل مناسب. لمزيد من المعلومات، لمزيد من المعلومات، يُرجى الاطّلاع على لمحة عن الهدف شرائح الجمهور .
لاستخدام الجماهير المستهدفة:
في "وحدة تحكّم المشرف في Google"، انتقِل إلى "القائمة". > الدليل > الجماهير المستهدفة.
الانتقال إلى "الجماهير المستهدفة"
عليك تسجيل الدخول باستخدام حساب لديه امتيازات مشرف متميّز لتنفيذ هذه المهمة.
في قائمة الجماهير المستهدفة، انقر على اسم الجمهور المستهدف. إلى إنشاء جمهور مستهدف، راجع إنشاء هدف الجمهور
انسخ المعرّف الفريد من عنوان URL للجمهور المستهدَف:
https://admin.google.com/ac/targetaudiences/ID
.أنشئ إذنًا باستخدام
type=domain
، واضبط الحقلdomain
علىID.audience.googledomains.com
.
لعرض كيفية تفاعل المستخدمين مع الجماهير المستهدفة، اطّلِع على تجربة المستخدم بشأن الرابط. مشاركة .
استرداد جميع الأذونات لملف أو مجلد أو مساحة تخزين سحابي مشتركة
استخدِم الطريقة permissions.list
من أجل
استرداد جميع الأذونات لملف أو مجلد أو مساحة تخزين سحابي مشتركة
عرض مثال
يعرض نموذج الرمز البرمجي التالي كيفية الحصول على جميع الأذونات. ويعرض الرد قائمة بالأذونات.
طلب
GET https://www.googleapis.com/drive/v3/files/FILE_ID
/permissions
الردّ
{
"kind": "drive#permissionList",
"permissions": [
{
"id": "PERMISSION_ID
",
"type": "user",
"kind": "drive#permission",
"role": "commenter"
}
]
}
التحقّق من أذونات المستخدم
عندما يفتح تطبيقك ملفًا، من المفترَض أن يتحقّق من إمكانات الملف وأن يعرض
واجهة المستخدم لإظهار أذونات المستخدم الحالي. على سبيل المثال، إذا كان المستخدم
لا يتضمن الملف إمكانية canComment
على الملف، وبالتالي إمكانية التعليق
أن يكون معطَّلاً في واجهة المستخدم.
لمزيد من المعلومات حول capabilities
، يمكنك الاطّلاع على الإمكانات.
أعلاه.
للتحقّق من الإمكانات، يمكنك الاتصال بالرقم files.get
من خلال
المعلمة fileId
والمعلمة fields
تم تعيينها على الحقل capabilities
. بالنسبة
للمزيد من المعلومات حول عرض الحقول باستخدام المَعلمة fields
، يُرجى الاطّلاع على
عرض حقول معيّنة لأحد الملفات:
عرض مثال
يعرض نموذج الرمز البرمجي التالي كيفية التحقّق من أذونات المستخدمين. يعرض الرد قائمة بالإمكانيات التي يمتلكها المستخدم في الملف. تتوافق كل إمكانية مع إجراء دقيق يمكن للمستخدم اتخاذه. تتم تعبئة بعض الحقول فقط للعناصر في مساحات التخزين السحابي المشتركة.
طلب
GET https://www.googleapis.com/drive/v3/files/FILE_ID
?fields=capabilities
الردّ
{ "capabilities": { "canAcceptOwnership": false, "canAddChildren": false, "canAddMyDriveParent": false, "canChangeCopyRequiresWriterPermission": true, "canChangeSecurityUpdateEnabled": false, "canComment": true, "canCopy": true, "canDelete": true, "canDownload": true, "canEdit": true, "canListChildren": false, "canModifyContent": true, "canModifyContentRestriction": true, "canModifyLabels": true, "canMoveChildrenWithinDrive": false, "canMoveItemOutOfDrive": true, "canMoveItemWithinDrive": true, "canReadLabels": true, "canReadRevisions": true, "canRemoveChildren": false, "canRemoveMyDriveParent": true, "canRename": true, "canShare": true, "canTrash": true, "canUntrash": true } }
تحديد مصدر الدور لملفات مساحة التخزين السحابي المشتركة مجلدات
لتغيير الدور على ملف أو مجلد، عليك معرفة مصدر الدور. بالنسبة إلى مساحات التخزين السحابي المشتركة، يمكن أن يستند مصدر الدور إلى العضوية في مساحة التخزين السحابي المشتركة. Drive أو الدور في مجلد أو الدور على ملف.
لتحديد مصدر الدور في مساحة تخزين سحابي مشتركة أو عناصر داخلها
القيادة، أو الاتصال بالرقم permissions.get
باستخدام
تم تعيين المعلمة fileId
وpermissionId
وfields
على
permissionDetails
. للعثور على permissionId
، استخدم
permissions.list
مع fileId
. إلى
جلب الحقل permissionDetails
في طلب permissions.list
، اضبط
مَعلمة fields
إلى permissions/permissionDetails
.
يتضمَّن هذا الحقل جميع أذونات الملفات الموروثة والمباشرة للمستخدم، أو مجموعة أو مجال.
عرض مثال
يعرض نموذج الرمز البرمجي التالي كيفية تحديد مصدر الدور. تعرض الاستجابة permissionDetails
لمورد Permission
. يوفر الحقل inheritedFrom
معرّف العنصر الذي تم اكتساب الإذن منه.
طلب
GET https://www.googleapis.com/drive/v3/files/FILE_ID
/permissions/PERMISSION_ID
?fields=permissionDetails&supportsAllDrives=true
الردّ
{
"permissionDetails": [
{
"permissionType": "member",
"role": "commenter",
"inheritedFrom": "INHERITED_FROM_ID
",
"inherited": true
},
{
"permissionType": "file",
"role": "writer",
"inherited": false
}
]
}
تغيير الأذونات
لتغيير الأذونات لملف أو مجلد، يمكنك تغيير الدور الذي تم تعيينه:
يمكنك الاتصال بالرقم
permissions.update
باستخدامpermissionId
لإذن التغيير وfileId
لـ ملف أو مجلد أو مساحة تخزين سحابي مشتركة مرتبطة للعثور علىpermissionId
، استخدمpermissions.list
معfileId
.حدِّد الهوية الجديدة في الطلب
role
.
يمكنك منح أذونات لملفات أو مجلدات فردية في مساحة تخزين سحابي مشتركة
إذا كان المستخدم أو المجموعة عضوًا حاليًا. على سبيل المثال، لدى أليكس role=commenter
.
كجزء من عضويتهم في مساحة تخزين سحابي مشتركة. ومع ذلك، يمكن أن يمنح تطبيقك "أليكس"
role=writer
لملف في مساحة تخزين سحابي مشتركة. في هذه الحالة، نظرًا لأن الدور الجديد
أكثر تساهلاً من الدور
الممنوح من خلال عضويتهم، فإن أعضاء
يصبح الدور الفعال للملف أو المجلد.
عرض مثال
يعرض نموذج الرمز البرمجي التالي كيفية تغيير الأذونات على ملف أو مجلد من معلِّق إلى كاتب. تعرض الاستجابة نسخة افتراضية من مورد Permission
.
طلب
PATCH https://www.googleapis.com/drive/v3/files/FILE_ID
/permissions/PERMISSION_ID
{ "requests": [ { "role": "writer" } ] }
الردّ
{
"kind": "drive#permission",
"id": "PERMISSION_ID
",
"type": "user",
"role": "writer"
}
إبطال إذن الوصول إلى ملف أو مجلد
لإبطال الوصول إلى ملف أو مجلد، اتصل
delete
مع fileId
permissionId
لحذف الإذن
بالنسبة إلى العناصر الموجودة في "ملفاتي"، فيمكن حذف حساب إذن. يؤدي حذف إذن مكتسب إلى إبطال إمكانية الوصول إلى العنصر والعناصر الفرعية، إن وجدت.
بالنسبة إلى العناصر في مساحة التخزين السحابي المشتركة، لا يمكن إبطال الأذونات المكتسبة. تحديث أو إبطال الإذن في الملف أو المجلد الرئيسي بدلاً من ذلك.
تُستخدم العملية delete
أيضًا لحذف الأذونات التي يتم تطبيقها مباشرةً على
ملف أو مجلد مساحة تخزين سحابي مشتركة.
عرض مثال
يعرض نموذج الرمز التالي كيفية إبطال إمكانية الوصول من خلال حذف permissionId
. إذا كانت الاستجابة ناجحة، يكون نص الاستجابة فارغًا. لتأكيد إزالة الإذن، استخدِم permissions.list
مع fileId
.
طلب
DELETE https://www.googleapis.com/drive/v3/files/FILE_ID
/permissions/PERMISSION_ID
نقل ملكية الملفات إلى حساب آخر على Google Workspace في المؤسسة نفسها
ملكية الملفات الحالية في "ملفاتي" يمكن نقلها من حساب Google Workspace واحد إلى حساب آخر في المؤسسة نفسها. يشير هذا المصطلح إلى مؤسسة تمتلك مؤسسة يمتلك محرك الأقراص الملفات الموجودة داخله. لذلك، لا يمكن نقل الملكية. للملفات والمجلدات في مساحات التخزين السحابي المشتركة. إمكانية نقل منظِّمي مساحة التخزين السحابي المشتركة عناصر من "مساحة التخزين السحابي المشتركة" هذه وفي "ملفاتي" الخاصة بهم أي ينقل الملكية إليه.
لنقل ملكية ملف في "ملفاتي"، نفِّذ أحد الإجراءات التالية: التالي:
إنشاء إذن ملف يمنح مستخدمًا محددًا (
type=user
) إذن وصول المالك (role=owner
)تعديل إذن ملف حالي باستخدام
role=owner
ثم نقله الملكية للمستخدم المحدّد (transferOwnership=true
).
نقل ملكية الملف من حساب مستهلك إلى آخر
يمكن نقل ملكية الملفات بين حساب مستهلك إلى حساب آخر. ومع ذلك، لا ينقل Drive ملكية ملف بين اثنين المستهلك الحسابات إلى أن يوافق المالك الجديد المحتمل صراحةً على عملية النقل. للتحويل ملكية الملف من حساب مستهلك إلى آخر:
يبدأ المالك الحالي نقل الملكية من خلال إنشاء إذن ملف المالك الجديد المحتمل. يجب أن يتضمن الإذن هذه الإعدادات:
role=writer
وtype=user
وpendingOwner=true
. إذا كانت أن المالك الجديد ينشئ إذنًا للمالك المحتمل عبر البريد الإلكتروني يتم إرسال إشعار إلى المالك الجديد المحتمل للإشارة إلى أنه يُطلب منك تولّي ملكية الملف.يقبل المالك الجديد طلب نقل الملكية من خلال إنشاء ملف أو تعديله. إذن الملف الخاص بهم. يجب أن يتضمّن الإذن الإعدادات التالية: "
role=owner
" وtransferOwnership=true
" إذا كان المالك الجديد ينشئ إذن جديد، يتم إرسال إشعار عبر البريد الإلكتروني إلى المالك السابق يشير إلى أنه تم نقل الملكية.
عند نقل ملف، يتم خفض مستوى دور المالك السابق إلى writer
.
تغيير أذونات متعددة باستخدام الطلبات المجمّعة
نوصي بشدة باستخدام طلبات مجمَّعة لتعديل عدة طلبات الأذونات.
في ما يلي مثال على تعديل إذن مُجمَّع باستخدام ومكتبة البرامج.