نشر موصّل أنظمة الملفات في Microsoft Windows

يمكنك إعداد Google Cloud Search لعرض النتائج من مشاركات Microsoft Windows في مؤسستك، بالإضافة إلى محتوى Google Workspace. يمكنك استخدام موصِّل أنظمة الملفات في Google Cloud Search وإعداده للوصول إلى المشاركات المحدّدة على Windows. يمكن لمثيل موصل واحد أن يتيح استخدام العديد من مشاركات Microsoft Windows.

اعتبارات مُهمّة

التحديثات التلقائية المستمرة

يراقب الموصِّل تلقائيًا مسارات البدء (القيم من fs.src في ملف إعداد المُوصِّل) عند بدء تشغيل الموصِّل. عندما يبلغ نظام الملفات عن حدوث تغييرات في المحتوى أو عناصر التحكم في الوصول، يتم تشغيل الموصل لإعادة الزحف إلى نظام الملف. وقد تكون عملية إعادة الزحف هذه تستهلك الكثير من الموارد. لإيقاف تتبُّع نظام الملفات، عليك ضبط fs.monitorForUpdates على false. يمكنك تقليل استخدام موارد الموصل بشكل كبير ولكن يتم تأخير عندما يعكس الموصل التغييرات. مزيد من المعلومات

التحكم في الوصول إلى ألعاب المحاكاة الرياضية اليومية (DFS)

يطبق نظام DFS التحكم في الوصول على ارتباطاته وعادةً ما يكون لكل رابط DFS قائمة ACL خاصة به. إحدى الآليات التي تستخدمها ألعاب المحاكاة الرياضية اليومية هي التعداد المستنِد إلى الوصول (ABE)، والذي يمكنه تقييد روابط ألعاب المحاكاة الرياضية اليومية التي يتم عرضها للمستخدم. وقد يحصل المستخدمون على مجموعة فرعية فقط من روابط DFS أو حتى رابط واحد فقط عند عزل ABE لأدلة الصفحة الرئيسية المستضافة. عندما يجتاز الموصل نظام DFS، يحترم الموصل قائمة التحكم بالوصول (ACL) لرابط DFS وقائمة التحكم في الوصول الخاصة بالهدف، وتكتسب قائمة التحكم في الوصول الخاصة بـ DFS.

القيود المعروفة

  • نظام الملفات: لا يتوافق موصِّل أنظمة الملفات مع محرّكات الأقراص المحلية ومحركات الأقراص المرتبطة.
  • نظام الملفات الموزعة: لا يعمل محرك الأقراص المرتبط بنظام التشغيل DFS بنظام التشغيل UNC بشكل صحيح. لا تتم قراءة بعض قوائم التحكم في الوصول بشكل صحيح.
  • يتوافق موصل أنظمة الملفات مع مساحات الاسم والروابط لنظام الملفات الموزَّعة (DFS). ومع ذلك، يتوافق الموصل مع روابط DFS فقط في مساحة اسم DFS، وليس المجلدات العادية في مساحة اسم DFS.
  • ولا يمكن النقر على روابط الملفات التي يتم عرضها في cloudsearch.google.com. كما لا يمكن النقر على روابط الملفات التي تعرضها واجهة برمجة تطبيقات طلبات البحث في معظم المتصفحات.

متطلبات النظام

متطلبات النظام
نظام التشغيل
  • إصدار Windows Server 2016
  • إصدار Windows Server 2012
  • خادم Windows 2008 R2
البرامج
  • تم تثبيت الإصدار 1.8 من Java JRE على جهاز الكمبيوتر الذي سيشغِّل موصِّل أنظمة الملفات في Google Cloud Search
بروتوكولات نظام الملفات
  • كتلة رسالة الخادم (SMB) - SMB1
  • كتلة رسالة الخادم (SMB) - SMB2
  • نظام الملفات الموزَّعة (DFS)

غير متوافقة: أنظمة ملفات Windows المحلية أو نظام ملفات Sun Network System (NFS) 2.0 أو نظام ملفات Sun Network File System (NFS) 3.0 أو نظام ملفات Linux المحلي

نشر الموصِّل

المتطلّبات الأساسية

قبل نشر موصِّل أنظمة الملفات في Cloud Search، تأكَّد من أنّ بيئتك تتضمّن جميع المكوّنات الأساسية التالية:

أذونات حساب Microsoft Windows المطلوبة

يجب أن يمتلك حساب Microsoft Windows الذي يعمل عليه الموصل أذونات كافية لتنفيذ الإجراءات التالية:

  • إدراج محتوى المجلدات
  • قراءة محتوى المستندات
  • قراءة سمات الملفات والمجلدات
  • قراءة الأذونات (قوائم ACL) لكل من الملفات والمجلدات
  • كتابة أذونات السمات الأساسية

تمنح العضوية في إحدى المجموعات التالية حسابًا على Windows الأذونات الكافية التي يحتاجها الموصِّل:

  • المشرفون
  • المستخدمون المتمرّسون
  • عوامل تشغيل الطباعة
  • عوامل تشغيل الخادم

الخطوة 1. تثبيت موصِّل أنظمة ملفات Google Cloud Search

  1. احصل على مستودع الموصل من GitHub وأنشئه.

    لاستخدام git على خادم Windows:

    1. استنساخ المستودع:

      > git clone https://github.com/google-cloudsearch/windows-filesystems-connector.git
      > cd windows-filesystems-connector
    2. تحقق من الإصدار المطلوب من الموصل:

      > git checkout tags/v1-0.0.3

    للتنزيل من GitHub مباشرةً، يُرجى اتّباع الخطوات التالية:

    1. انتقِل إلى https://github.com/google-cloudsearch/windows-filesystems-connector.
    2. انقر على نسخ أو تنزيل تنزيل ملف ZIP.
    3. يُرجى فكّ ضغط الحزمة.
    4. الانتقال إلى الدليل الجديد:
      > cd windows-filesystems-connector
  2. قم ببناء الموصل. إذا لزم الأمر، ثبِّت Apache Maven.

    > mvn package

    لتخطّي الاختبارات عند إنشاء الموصِّل، شغِّل mvn package -DskipTests بدلاً من mvn package.

  3. انسخ الملف المضغوط للموصل إلى دليل التثبيت المحلي:

    > cp target/google-cloudsearch-windows-filesystems-connector-v1-0.0.3.zip installation-dir
    > cd installation-dir
    > unzip google-cloudsearch-windows-filesystems-connector-v1-0.0.3.zip
    > cd google-cloudsearch-windows-filesystems-connector-v1-0.0.3

الخطوة 2. إنشاء ملف إعداد الموصل

  1. في الدليل نفسه مثل تثبيت الموصِّل، أنشئ ملفًا وحدِّد اسمه connector-config.properties.

  2. أضِف مَعلمات كأزواج مفتاح/قيمة إلى محتوى الملف، كما في المثال التالي:

    ### File system connector configuration ###
    
    # Required parameters for Cloud Search data source and identity source access
    api.serviceAccountPrivateKeyFile=/path/to/file.json
    api.sourceId=0123456789abcde
    api.identitySourceId=a1b1c1234567
    
    # Required parameters for file system access
    fs.src=\\\\host\\share;\\\\dfshost\\dfsnamespace;\\\\dfshost\\dfsnamespace\\link
    
    # Optional parameters for file system monitoring
    traverse.abortAfterExceptions=500
    fs.monitorForUpdates = true
    fs.preserveLastAccessTime = IF_ALLOWED
    

    للحصول على أوصاف تفصيلية لكل مَعلمة، انتقِل إلى مرجع مَعلمات الضبط.

  3. (اختياري) اضبط مَعلمات الموصل الأخرى، حسب الحاجة. للتعرُّف على التفاصيل، انتقِل إلى مَعلمات الموصِّل التي توفّرها Google.

الخطوة 3. تفعيل التسجيل

  1. أنشئ مجلدًا باسم logs في الدليل الذي يحتوي على الموصل الثنائي.
  2. أنشئ ملف ASCII أو UTF-8 باسم logging.properties في الدليل الذي يحتوي على البرنامج الثنائي للموصِّل وأضف المحتوى التالي:

    handlers = java.util.logging.ConsoleHandler,java.util.logging.FileHandler
    # Default log level
    .level = WARNING
    com.google.enterprise.cloudsearch.level = INFO
    com.google.enterprise.cloudsearch.fs.level = INFO
    
    # uncomment line below to increase logging level to enable API trace
    #com.google.api.client.http.level = FINE
    java.util.logging.ConsoleHandler.level = INFO
    java.util.logging.FileHandler.pattern=logs/connector-fs.%g.log
    java.util.logging.FileHandler.limit=10485760
    java.util.logging.FileHandler.count=10
    java.util.logging.FileHandler.formatter=java.util.logging.SimpleFormatter
    

الخطوة 4. (اختياري) ضبط أنواع الوسائط

تلقائيًا، يحاول الموصِّل اكتشاف نوع الوسائط لكل ملف باستخدام ميزة رصد نوع الوسائط المقدمة من JDK. في نظام التشغيل Microsoft Windows، تعتمد JDK على سجل Windows لتحديد أنواع الوسائط للملفات. يمكن أن يؤدي فقدان إدخال السجل إلى نوع وسائط فارغ لملفات معينة.

وإذا لزم الأمر، يمكنك تحديد نوع وسائط يستبدل أي روابط حالية أو يمنع نوع وسائط فارغ.

  1. في دليل الموصِّل، أنشِئ ملفًا بترميز Latin-1 باسم mime-type.properties.
  2. أدخل امتدادات الملفات وأنواع الوسائط المقابلة لها كما في الأمثلة التالية:

    xlsx=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
    one=application/msonenote
    txt=text/plain
    pdf=application/pdf
    

الخطوة 5: تشغيل موصل أنظمة الملفات

بعد تثبيت موصل أنظمة الملفات وإعداده، لتشغيله على الجهاز المضيف، شغِّل أمرًا مثل المثال التالي:

> java -jar google-cloudsearch-windows-filesystems-connector-v1-0.0.3.jar -Djava.util.logging.config.file=logging.properties[ -Dconfig=my.config]

حدِّد مسار ملف الإعداد إذا كان مختلفًا عن المسار التلقائي (في الدليل نفسه مثل البرنامج الثنائي الذي يحمل الاسم connector-config.properties).

مرجع مَعلمات الإعدادات

الوصول إلى مصدر البيانات

الإعدادات المَعلمة
رقم تعريف مصدر البيانات api.sourceId=1234567890abcdef

مطلوبة. معرّف مصدر Google Cloud Search الذي أعدّه مشرف Google Workspace.

المسار إلى ملف المفتاح الخاص لحساب الخدمة api.serviceAccountPrivateKeyFile=./PrivateKey.json

مطلوبة. ملف مفتاح حساب خدمة Google Cloud Search الخاص بتسهيل استخدام موصِّل أنظمة الملفات في Google Cloud Search

رقم تعريف مصدر الهوية api.identitySourceId=x0987654321

مطلوبة. رقم تعريف مصدر هوية Cloud Search الذي أعدّه مشرف Google Workspace لمزامنة هويات الدليل النشط باستخدام أداة مزامنة دليل Google Cloud.

الوصول إلى نظام الملفات

الإعدادات المَعلمة
أنظمة الملفات المصدر fs.src=path1[,path2, ...]

مطلوبة. يمكنك تحديد أنظمة الملفات المصدر كمصدر واحد أو أكثر من مصادر UNC التي يفصل بينها المحدِّد الذي تم ضبطه من خلال "fs.src.separator". إذا كنت تستخدم أحرفًا غير Latin1، يمكنك ترميزها باستخدام أحرف إلغاء Java Unicode.

حرف فاصل المسار

الإعدادات المَعلمة
حرف فاصل المسار fs.src.separator=separator-character

الفاصل التلقائي هو ";". وإذا كانت مسارات المصدر تحتوي على فاصلات منقوطة، يمكنك ضبط محدِّد مختلف، مثل الفاصلة (",")، لا يتعارض مع الأحرف في مساراتك ولا يتم حجزه من خلال بنية ملف الموقع نفسه.

إذا كانت قيمة fs.src.separator عبارة عن سلسلة فارغة، سيتم التعامل مع القيمة fs.src كمسار واحد.

سلوك الموصّل

الإعدادات المَعلمة
نطاق Windows fs.supportedDomain=domain

مطلوبة للسماح للمستخدمين الذين تم إعدادهم باستخدام أداة مزامنة دليل Google Cloud بالوصول إلى المستندات من خلال Cloud Search. حدِّد كاسم نطاق NetBIOS واحد لـ Active Directory.

تضمين الحسابات في ACLS fs.supportedAccounts=account-1[, account-2,...]

قائمة بالحسابات المفصولة بفواصل لتضمينها في قوائم التحكم بالوصول، بغض النظر عما إذا كانت حسابات مدمجة أم لا.

القيمة التلقائية هي BUILTIN\\Administrators,Everyone,BUILTIN\\Users, BUILTIN\\Guest,NT AUTHORITY\\INTERACTIVE, NT AUTHORITY\\Authenticated Users.

استبعاد الحسابات المضمنة من قوائم التحكم بالوصول (ACLs) fs.builtinGroupPrefix=prefix

حدِّد بادئة الحسابات المضمّنة. ويعتبر الحساب الذي يبدأ بهذه البادئة حسابًا مدمجًا وسيتم استبعاده من قوائم التحكم بالوصول (ACL).

القيمة التلقائية هي BUILTIN\\.

السماح بفهرسة الملفات والمجلدات المخفية fs.crawlHiddenFiles=boolean

يمكنك التعيين على true للسماح للموصل بالزحف إلى الملفات والمجلدات المخفية (على أنظمة ملفات Windows، يُعد الملف أو المجلد مخفيًا إذا تم تعيين السمة المخفية لنظام التشغيل DOS). القيمة التلقائية هي false.

السماح بفهرسة قوائم المجلدات التي تم الزحف إليها وتعدادات مساحة اسم DFS fs.indexFolders=boolean

عند الضبط على true (الإعداد التلقائي)، عندما يزحف الموصِّل إلى مجلد، ينشئ الموصِّل كائن CONTAINER_ITEM. عند الضبط على "خطأ"، ينشئ الموصِّل كائن VIRTUAL_CONTAINER_ITEM بدلاً من ذلك.

تفعيل رصد تغييرات نظام الملفات fs.monitorForUpdates=boolean

وعند ضبط هذه السياسة على true (الخيار التلقائي)، فإنّ التغييرات التي تطرأ على المحتوى أو عناصر التحكّم في الوصول تؤدي إلى إعادة الزحف إلى الموصِّل. عند إيقاف التتبُّع (الضبط على false)، يؤدي ذلك إلى تقليل استخدام موارد الموصِّل بشكل كبير، ولكن يتم تأخير الوقت الذي يعكس فيه الموصِّل التغييرات.

ضبط الحد الأقصى لحجم ذاكرة التخزين المؤقت للأدلة fs.directoryCacheSize=number-of-entries

الحد الأقصى لحجم ذاكرة التخزين المؤقت للدليل. يستخدم الموصل ذاكرة التخزين المؤقت لتحديد المجلدات المخفية لتجنب فهرسة الملفات والمجلدات في المجلدات المخفية.

والإعداد التلقائي هو 50,000 إدخال، تستهلك عادةً من 10 إلى 15 ميغابايت من ذاكرة الوصول العشوائي.

الاحتفاظ بالطابع الزمني والتحكّم في الزحف

الإعدادات المَعلمة
الاحتفاظ بالطابع الزمني للوصول الأخير fs.preserveLastAccessTime=value

عندما يزحف الموصِّل إلى الملفات والمجلدات، يمكن للموصِّل تغيير الطابع الزمني لآخر وصول للملفات والمجلدات إلى وقت الزحف. إذا لم يتم الاحتفاظ بأوقات الوصول الأخيرة، قد لا تنقل أنظمة النسخ الاحتياطي والأرشفة الملفات والمجلدات المناسبة إلى وحدة التخزين الثانوية بسبب زيارة الموصِّل.

يحاول الموصِّل تلقائيًا الاحتفاظ بوقت الوصول الأخير (تم ضبط fs.preserveLastAccessTime على ALWAYS). قد لا يتمكن الموصِّل من استعادة وقت الوصول الأخير للملف عندما لا يمتلك مستخدم الاجتياز الامتيازات الكافية لكتابة سمات الملف. عند الضبط على ALWAYS، يرفض الموصل طلبات الزحف لنظام الملفات حتى لا يغير طوابع الوصول الأخيرة إلى الملفات.

القيم المتاحة:

  • ALWAYS: يحاول الموصِّل الاحتفاظ بآخر وقت وصول أثناء زحفه إلى الملفات والمجلدات. في المرة الأولى التي يتعذر فيها على الموصِّل الاحتفاظ بوقت الوصول الأخير، يرفض الموصِّل جميع طلبات الزحف اللاحقة لنظام الملفات لمنع تغيير طوابع الوصول الأخيرة.
  • IF_ALLOWED: يحاول الموصِّل الاحتفاظ بآخر وقت وصول أثناء زحفه إلى الملفات والمجلدات. ويستمر في الزحف حتى في حال عدم الاحتفاظ ببعض الطوابع الزمنية.
  • NEVER: لا يحاول الموصِّل الاحتفاظ بوقت الوصول الأخير أثناء زحفه إلى الملفات والمجلدات.
الزحف إلى الملفات التي تم الوصول إليها بعد تاريخ معيّن فقط fs.lastAccessedDate=YYYY-MM-DD

محتوى الزحف فقط إذا كان وقت الوصول الأخير بعد التاريخ المحدد. تكون القيمة التلقائية disabled.

حدِّد التاريخ بتنسيق التاريخ ISO8601: YYYY-MM-DD. على سبيل المثال، إذا كانت القيمة هي 01-01-2010، سيزحف الموصِّل فقط إلى المحتوى الذي تم الوصول إليه بعد بداية 2010.

إذا حدّدت fs.lastAccessedDate، لا يمكنك أيضًا ضبط قيمة لـ fs.lastAccessedDays.

الزحف فقط إلى الملفات التي تم الوصول إليها خلال عدد الأيام الماضية fs.lastAccessedDays=number-of-days

محتوى الزحف فقط إذا كان وقت الوصول الأخير في حدود عدد الأيام قبل وقت العرض. تكون القيمة التلقائية disabled.

استخدِم هذه السمة لإنهاء صلاحية المحتوى الذي تمت فهرسته سابقًا ولم يتم الوصول إليه منذ فترة. على سبيل المثال، يمكنك الضبط على 365 للزحف إلى المحتوى فقط إذا تم الوصول إليه في العام الماضي.

إذا حدّدت fs.lastAccessedDays، لا يمكنك أيضًا ضبط قيمة لـ fs.lastAccessedDate.

الزحف إلى الملفات التي تم تعديلها بعد تاريخ معين فقط fs.lastModifiedDate=YYYY-MM-DD

محتوى الزحف فقط إذا كان وقت آخر تعديل بعد التاريخ المحدد. تكون القيمة التلقائية disabled.

حدِّد التاريخ بتنسيق التاريخ ISO8601: YYYY-MM-DD. على سبيل المثال، إذا كانت القيمة هي 01-01-2010، فإن الموصل يزحف فقط إلى المحتوى الذي تم تعديله بعد بداية 2010.

إذا حدّدت fs.lastModifiedDate، لا يمكنك أيضًا ضبط قيمة لـ fs.lastModifiedDays.

الزحف إلى الملفات التي تم تعديلها خلال عدد الأيام الماضية فقط fs.lastModifiedDays=number-of-days

الزحف إلى المحتوى فقط إذا كان وقت آخر تعديل في حدود عدد الأيام السابق لتاريخ العرض تكون القيمة التلقائية disabled.

استخدِم هذه السمة لإنهاء صلاحية المحتوى الذي تمت فهرسته سابقًا ولم يتم تعديله منذ فترة. على سبيل المثال، يمكنك الضبط على 365 للزحف إلى المحتوى فقط إذا تم تعديله في العام الماضي.

إذا حدّدت fs.lastModifiedDays، لا يمكنك أيضًا ضبط قيمة لـ fs.lastModifiedDate.

تخطي التحكّم في الوصول إلى خادم مشاركة الملفات

بشكل افتراضي، يحافظ الموصل على سلامة التحكم في الوصول عندما يرسل قوائم التحكم في الوصول (ACLs) إلى واجهة برمجة تطبيقات الفهرسة، بما في ذلك قوائم التحكم بالوصول في مشاركة الملف. ومع ذلك، في بعض التهيئات، قد لا يكون للموصل أذونات كافية لقراءة قائمة التحكم بالوصول (ACL) المشتركة. وفي هذه الحالات، لا يعرض الموصل أي ملفات تم الاحتفاظ بها في مشاركة الملفات هذه في نتائج البحث.

يمكنك ضبط الموصل لتجاهل قائمة التحكم بالوصول (ACL) بحيث يتم عرض المحتوى دائمًا في نتائج البحث. في هذه الحالة، تحصل واجهة برمجة التطبيقات للفهرسة على قائمة التحكم بالوصول (ACL) المتساهلة تمامًا، بدلاً من القائمة الفعلية للمشاركة.

الإعدادات المَعلمة
تخطي التحكّم في الوصول إلى خادم مشاركة الملفات fs.skipShareAccessControl=boolean

اضبط القيمة على false (تلقائي) لفرض مشاركة قوائم التحكم بالوصول. اضبط القيمة على true لتجاهل مشاركة قوائم التحكم بالوصول.