פריסת המחבר של Microsoft Windows File Systems

אתם יכולים להגדיר את Google Cloud Search כך שיחזיר תוצאות משיתופי Microsoft Windows של הארגון שלכם, בנוסף לתוכן ב-Google Workspace. משתמשים במחבר של Cloud Search File Systems ומגדירים אותו כך שיקבל גישה לשיתופים ספציפיים ב-Windows. מופע יחיד של מחבר יכול לתמוך בכמה שיתופי Microsoft Windows.

שיקולים חשובים

לפני שמפעילים את המחבר File Systems, כדאי לעיין בשיקולים הבאים.

עדכונים אוטומטיים רציפים

כברירת מחדל, המחבר עוקב באופן רציף אחרי נתיבי ההתחלה (ערכים מ-fs.src בקובץ ההגדרות) כשהוא מופעל. כשמערכת הקבצים מדווחת על שינויים בתוכן או באמצעי בקרת הגישה, המחבר סורק מחדש את מערכת הקבצים. הסריקה מחדש הזו עלולה לצרוך הרבה משאבים. כדי להשבית את המעקב, מגדירים את fs.monitorForUpdates לערך false. כך מצמצמים את השימוש במשאבים, אבל יש עיכובים בשינויים שמוצגים בכלי לחיבור נתונים. מידע נוסף

בקרת גישה ל-DFS

מערכת DFS מחילה בקרת גישה על הקישורים שלה, ובדרך כלל לכל קישור DFS יש ACL משלו. מערכת DFS משתמשת בספירה מבוססת-גישה (ABE) כדי להגביל את הקישורים שמוחזרים למשתמש. יכול להיות שמשתמשים יראו רק קבוצת משנה של קישורי DFS או רק קישור אחד כש-ABE מבודד ספריות ביתיות. במעבר בין מערכות DFS, המחבר מתחשב ברשימת ה-ACL של קישור ה-DFS וברשימת ה-ACL של השיתוף של היעד. רשימת ה-ACL של השיתוף עוברת בירושה מרשימת ה-ACL של ה-DFS.

מגבלות ידועות

בקטע הזה מפורטות המגבלות הידועות של מחבר מערכת הקבצים.

  • מערכת קבצים: המחבר לא תומך במיפוי או בכוננים מקומיים.
  • מערכת קבצים מבוזרת (DFS): מיפוי כונן ל-UNC DFS לא פועל כמו שצריך, ויכול להיות שחלק מרשימות בקרת הגישה (ACL) לא ייקראו בצורה נכונה.
  • המחבר תומך בקישורים ובמרחבי שמות של DFS, אבל לא בתיקיות רגילות במרחב השמות של DFS.
  • ברוב הדפדפנים אי אפשר ללחוץ על קישורים לקבצים ב-cloudsearch.google.com או על קישורים שמוחזרים על ידי Query API.

דרישות מערכת

לפני שמפעילים את מחבר מערכות הקבצים, צריך לוודא שהמכונה המארחת עומדת בדרישות הבאות:

דרישות מערכת
מערכת הפעלה
  • Windows Server 2016
  • Windows Server 2012
  • Windows Server 2008 R2
תוכנה
  • ‫Java JRE 1.8 מותקן במחשב שבו פועל המחבר
פרוטוקולים של מערכת קבצים
  • ‫Server Message Block ‏ (SMB) –‏ SMB1
  • Server Message Block ‏ (SMB) –‏ SMB2
  • מערכת קבצים מבוזרת (DFS)

לא נתמך: מערכות קבצים מקומיות של Windows,‏ NFS 2.0,‏ NFS 3.0 או מערכות קבצים מקומיות של Linux.

פריסת המחבר

כדי לפרוס את המחבר File Systems, פועלים לפי השלבים הבאים.

דרישות מוקדמות

לפני שמפעילים את המחבר, צריך לוודא שבסביבה יש את הרכיבים הבאים:

ההרשאות הנדרשות בחשבון Microsoft Windows

לחשבון Windows שבו פועל המחבר צריכות להיות הרשאות ל:

  • הצגת תוכן התיקייה.
  • קריאת תוכן המסמך.
  • קריאת מאפייני קבצים ותיקיות.
  • הרשאות קריאה (ACL) לקבצים ולתיקיות.
  • כתיבה של מאפיינים בסיסיים.

חברות באחת מהקבוצות האלה בדרך כלל מעניקה הרשאות מספיקות: אדמינים, משתמשים מתקדמים, מפעילים של מדפסות או מפעילים של שרתים.

שלב 1. התקנת המחבר

מורידים או משכפלים את מאגר המחברים מ-GitHub, ואז יוצרים את חבילת המחברים.

  1. מקבלים את מאגר המחברים מ-GitHub ובונים אותו.

    כדי להשתמש ב-git בשרת Windows:

    > git clone https://github.com/google-cloudsearch/windows-filesystems-connector.git
    > cd windows-filesystems-connector
    > git checkout tags/v1-0.0.3

    כדי להוריד ישירות:

    1. עוברים אל windows-filesystems-connector.
    2. לוחצים על שכפול או הורדה > הורדת קובץ zip.
    3. פותחים את החבילה ומעבירים אותה לספרייה.
  2. בונים את המחבר באמצעות Apache Maven:

    > mvn package
    כדי לדלג על בדיקות, משתמשים ב-mvn package -DskipTests.

  3. מחלצים את קובץ ה-ZIP של המחבר לתיקיית ההתקנה:

    > 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. מוסיפים פרמטרים כצמדי מפתח/ערך. לדוגמה:

    # Required parameters
    api.serviceAccountPrivateKeyFile=/path/to/file.json
    api.sourceId=0123456789abcde
    api.identitySourceId=a1b1c1234567
    
    # File system access
    fs.src=\\\\host\\share;\\\\dfshost\\dfsnamespace
    
    # Optional parameters
    traverse.abortAfterExceptions=500
    fs.monitorForUpdates = true
    fs.preserveLastAccessTime = IF_ALLOWED
    

    בחומר העזר בנושא פרמטרים של הגדרות מפורטים פרמטרים שספציפיים למערכת קבצים. רשימה של פרמטרים נפוצים שמשמשים את כל מחברי Cloud Search מופיעה במאמר פרמטרים של מחברים שסופקו על ידי Google.

שלב 3. הפעלת רישום

יוצרים ספרייה ליומנים ויוצרים קובץ תצורה של רישום ביומן.

  1. יוצרים תיקייה בשם logs בספריית המחברים.
  2. יוצרים קובץ בשם 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. (אופציונלי) הגדרת סוגי מדיה

המחבר מנסה לזהות את סוגי המדיה של הקבצים באמצעות מנגנון ברירת המחדל שלו, שמסתמך על רשומות במרשם ב-Windows. אם חסר ערך ברישום של סיומת קובץ, יכול להיות שהמחבר לא יזהה את סוג המדיה בצורה נכונה. אם סוגי המדיה לא מזוהים בצורה נכונה, או אם רוצים לשנות את סוג ברירת המחדל של תוסף, פועלים לפי השלבים הבאים:

  1. יוצרים קובץ בשם mime-type.properties בספריית המחבר.
  2. מזינים את התוספים והסוגים כפי שמופיע כאן: extension=media/type: properties xlsx=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet one=application/msonenote txt=text/plain pdf=application/pdf

שלב 5. הפעלת המחבר File Systems

מפעילים את המחבר ממכונת המארח:

> 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 בספרייה שבה המחבר פועל. אם קובץ ההגדרות שלכם נקרא בשם אחר או נמצא בספרייה אחרת, צריך להשתמש בפרמטר -Dconfig כדי לציין את הנתיב שלו.

הסבר על פרמטרים להגדרה

בטבלאות הבאות מפורטים הפרמטרים שמשמשים להגדרת המחבר File Systems (מערכות קבצים), ומוסבר מה כל אחד מהם עושה.

גישה למקור נתונים

הגדרה פרמטר
מזהה מקור הנתונים api.sourceId=1234567890abcdef

חובה. מזהה המקור ב-Cloud Search.

חשבון שירות api.serviceAccountPrivateKeyFile=./PrivateKey.json

חובה. הנתיב לקובץ המפתח של חשבון השירות.

המזהה של מקור הזהות api.identitySourceId=x0987654321

חובה. מזהה מקור הזהויות ב-Cloud Search שהוגדר על ידי האדמין ב-Google Workspace לסנכרון זהויות של Active Directory באמצעות GCDS.

גישה למערכת קבצים

משתמשים בפרמטרים האלה כדי לציין את המקורות במערכת הקבצים שרוצים לסרוק.

הגדרה פרמטר
מערכות קבצים של מקורות 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

נדרש כדי לאפשר למשתמשים שהוגדרו באמצעות GCDS לגשת למסמכים דרך Cloud Search. מציינים שם דומיין יחיד של NetBIOS ב-Active Directory.

הכללת חשבונות ברשימות ACL fs.supportedAccounts=account-1[, account-2,...]

רשימה של חשבונות שמופרדים באמצעות פסיקים, שייכללו ברשימות בקרת הגישה (ACL), גם אם הם חשבונות מובנים.

ערך ברירת המחדל הוא BUILTIN\\Administrators,Everyone,BUILTIN\\Users, BUILTIN\\Guest,NT AUTHORITY\\INTERACTIVE, NT AUTHORITY\\Authenticated Users.

החרגה של חשבונות מובנים מרשימות ACL fs.builtinGroupPrefix=prefix

מציינים את הקידומת של חשבונות מובנים. חשבון שמתחיל בקידומת הזו נחשב לחשבון מובנה ויוחרג מרשימות בקרת הגישה.

ערך ברירת המחדל הוא BUILTIN\\.

אפשר לאנדקס קבצים ותיקיות מוסתרים fs.crawlHiddenFiles=boolean

מגדירים את הערך ל-true כדי לסרוק קבצים נסתרים. ערך ברירת המחדל הוא false.

אפשר לאנדקס רשימות של תיקיות שנסרקו וספירות של מרחבי שמות DFS fs.indexFolders=boolean

כשמגדירים את הערך true (ברירת מחדל), כשמחבר סורק תיקייה, הוא יוצר אובייקט CONTAINER_ITEM. אם הערך הוא false, המחבר יוצר במקום זאת אובייקט VIRTUAL_CONTAINER_ITEM.

הפעלת מעקב אחר שינויים במערכת הקבצים fs.monitorForUpdates=boolean

אם ההגדרה היא true (ברירת מחדל), המחבר יסרוק מחדש באופן אוטומטי כשיהיו שינויים בתוכן או באמצעי בקרת הגישה. הגדרה של הערך false מפחיתה את השימוש במשאבים, אבל גורמת לכך שהשינויים ישתקפו בתוצאות החיפוש באיחור.

הגדרת הגודל המקסימלי של מטמון הספריות fs.directoryCacheSize=number-of-entries

הגודל המקסימלי של מטמון הספריות. המחבר משתמש במטמון כדי לזהות תיקיות מוסתרות, וכך נמנע מאינדוקס של קבצים ותיקיות בתיקיות מוסתרות.

ברירת המחדל היא 50,000 רשומות, שצורכות בדרך כלל 10-15 מגה-בייט של זיכרון RAM.

שמירה של חותמות זמן

הפרמטרים האלה משמשים כדי לציין איך המחבר שומר על חותמות הזמן.

הגדרה פרמטר
שמירה על זמן הגישה fs.preserveLastAccessTime=value

כשסורקים קבצים ותיקיות, המחבר יכול לשנות את חותמת הזמן של הגישה האחרונה לשעת הסריקה. אם לא נשמרים נתוני הגישה האחרונה, יכול להיות שמערכות גיבוי וארכיון לא יעבירו קבצים ותיקיות מתאימים לאחסון משני כי המחבר ניגש אליהם.

כברירת מחדל, fs.preserveLastAccessTime מוגדר ל-ALWAYS, כלומר המחבר מנסה לשמור את זמן הגישה האחרון. אם לחשבון המשתמש שמריץ את המחבר אין הרשאות לכתוב מאפייני קובץ, המחבר לא יכול לשחזר את זמן הגישה האחרון. אם הערך מוגדר ל-ALWAYS והמחבר לא יכול לשמור את זמן הגישה האחרון, הוא דוחה בקשות סריקה למערכת הקבצים כדי שלא ישנה את חותמות הזמן של הקבצים.

הערכים האפשריים כוללים:

  • ALWAYS: המחבר מנסה לשמור את זמן הגישה האחרון בזמן שהוא סורק קבצים ותיקיות. אם אי אפשר לשמור את שעת הגישה האחרונה, המערכת דוחה את כל בקשות הסריקה הבאות למערכת הקבצים כדי למנוע שינוי של חותמות הזמן.
  • IF_ALLOWED: המחבר מנסה לשמור את זמן הגישה האחרון בזמן שהוא סורק קבצים ותיקיות. הסריקה נמשכת גם אם יכול להיות שחלק מהחותמות לא יישמרו.
  • NEVER: המחבר לא מנסה לשמור את זמן הגישה האחרון.
סריקה רק של קבצים שהייתה אליהם גישה אחרי תאריך מסוים fs.lastAccessedDate=YYYY-MM-DD

סריקת תוכן רק אם זמן הגישה האחרון הוא אחרי התאריך שצוין (בפורמט YYYY-MM-DD, ‏ ISO8601). ערך ברירת המחדל הוא disabled. לדוגמה, 2010-01-01 סורק תוכן שאפשר לגשת אליו אחרי תחילת 2010. אי אפשר להשתמש ב-fs.lastAccessedDays.

סריקה רק של קבצים שהייתה אליהם גישה במספר הימים האחרונים fs.lastAccessedDays=number-of-days

הסריקה של התוכן תתבצע רק אם הזמן האחרון שבו הייתה גישה לתוכן הוא בטווח של מספר הימים שצוין מהיום. ערך ברירת המחדל הוא disabled. שימושי להסרת תוכן ישן שתוקפו פג, למשל: 365 סורק תוכן שהייתה אליו גישה בשנה האחרונה. אי אפשר להשתמש ב-fs.lastAccessedDate.

סריקה רק של קבצים ששונו אחרי תאריך מסוים fs.lastModifiedDate=YYYY-MM-DD

סריקת תוכן רק אם השעה שבה התוכן שונה לאחרונה היא אחרי התאריך שצוין (בפורמט YYYY-MM-DD, ‏ ISO8601). ערך ברירת המחדל הוא disabled. לדוגמה, 2010-01-01 סורק תוכן שהשתנה אחרי תחילת 2010. אי אפשר להשתמש ב-fs.lastModifiedDays.

סריקת קבצים ששונו רק במספר הימים האחרון fs.lastModifiedDays=number-of-days

סריקת התוכן תתבצע רק אם הזמן של השינוי האחרון הוא במסגרת מספר הימים שצוין מהיום. ערך ברירת המחדל הוא disabled. שימושי להסרת תוכן ישן שתוקפו פג, למשל: 365 סורק תוכן ששוּנה בשנה האחרונה. אי אפשר להשתמש ב-fs.lastModifiedDate.

דילוג על רשימות ACL של שיתוף קבצים

אתם יכולים להגדיר את המחבר כך שיתעלם מרשימות ACL של שיתופים אם אין לו הרשאות לקרוא אותן. התוכן מוחזר עם ACL שמאפשר שיתוף.

הגדרה פרמטר
דילוג על רשימות ACL של שיתוף fs.skipShareAccessControl=boolean

הגדרת הערך true גורמת להתעלמות מקובצי ACL של שיתוף. ערך ברירת המחדל הוא false.