פריסת המחבר של Microsoft SharePoint Online

תוכלו להגדיר את Google Cloud Search כך שיחזיר תוצאות מתוכן SharePoint Online של הארגון, בנוסף לתוכן של Google Workspace. משתמשים במחבר Google Cloud Search SharePoint Online ומגדירים אותו לגישה למקור נתונים ספציפי של SharePoint Online.

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

הגדרות SharePoint מכובדות

מחבר Cloud Search SharePoint Online תמיד פועל לפי ההגדרה חשיפה של החיפוש ב-SharePoint, שלא ניתן לשנות. עבור טיוטות מסמכים, ההרשאות בחשבון המשתמש (שבו משתמש המחבר כדי לגשת ל-SharePoint Online) קובעות אילו טיוטות של מסמכים יתווספו לאינדקס ויוחזרו. אם לחשבון יש רק הרשאות 'קריאה מלאה', המחבר יכבד את ההגדרות של 'חשיפת פריט טיוטה' ב-SharePoint.

בנוסף, אתה מגדיר את המחבר כך שיגביל תוצאות על סמך הגישה לחשבון המשתמש. כדי להחיל חיתוך אבטחה עבור תוכן SharePoint, צריך לסנכרן את הזהויות החיצוניות הבאות עם Google Directory:

  • משתמשי Office 365 / Azure AD
  • קבוצות אבטחה של Office 365 / Azure AD
  • קבוצות SharePoint (עם משתמשים וקבוצות ב-Office 365 כחברים)

אופטימיזציה של רשת החיפוש

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

כדי להשתמש ב-API, יש להגדיר ערכים לפרמטרים של יצירת HTML בקובץ התצורה של מחבר SharePoint Online. הפרמטרים האלה מאפשרים לכם להגדיר לאילו שדות תהיה השפעה גבוהה או נמוכה יותר על התאמות.

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

  • כדי למפות את השמות של סוגי התוכן ב-SharePoint להגדרות האובייקטים התואמות, המחבר מנרמל את שמות סוגי התוכן על ידי אי הכללה של תווים שאינם נתמכים. לצורך הגדרת אובייקטים, Cloud Search API תומך רק בתווים K-Z, a-z ו-0-9 כתווים חוקיים. לדוגמה, סוג התוכן 'הודעות' ממופה להגדרת האובייקט 'הודעות'. סוג התוכן "כתבה בחדשות" ממופה ל-"NewsArticle" (ללא רווח).

  • כשהמחבר לא יכול להתאים להגדרת אובייקט להגדרת אובייקט, המחבר משתמש בסוג האובייקט החלופי (itemMetadata.objectType). מידע נוסף על פרמטרים של תצורת מטא-נתונים

  • המחבר ממפה שמות של נכסי SharePoint להגדרות של נכסים.

  • כשהמחבר נתקל בקובצי Microsoft Outlook מסוג .msg בזמן שהוא מוסיף את התוכן לאינדקס, הוא מבטל את סוג התוכן של הקבצים ומוסיף אותם לאינדקס כ-application/vnd.ms-outlook.

מגבלות ידועות של מחברים

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

דרישות המערכת

דרישות המערכת
מערכת הפעלה
  • Windows Server 2016
  • Ubuntu
  • Red Hat Enterprise Linux 5.0
  • SUSE Enterprise Linux 10 (64 סיביות)
אימות
  • אימות בזמן אמת
תוכנות
  • סביבת SharePoint Online
  • Java JRE 1.8 שמותקן במחשב שיריץ את מחבר SharePoint Online של Google Cloud Search

פריסת המחבר

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

  1. יוצרים מפתח פרטי ל-Google Workspace, שמכיל את מספר חשבון השירות שלכם. במאמר הגדרת הגישה ל-Google Cloud Search API מוסבר איך מקבלים מפתח פרטי.

  2. האדמין ב-Google Workspace צריך להוסיף מקור נתונים לחיפוש. מתעדים את המזהה של מקור הנתונים.

  3. אם המחבר מחזיר תוצאות על סמך רשימות ACL (התוצאות לא ציבוריות), האדמין ב-Google Workspace צריך ליצור שני מקורות זהות ולספק את המזהים שלהם:

    • אחת למשתמשים ולקבוצות של Office 365
    • אחת לקבוצות SharePoint

    בנוסף, האדמין צריך לקבל את מספר הלקוח של הארגון ב-Google Workspace ולתת לכם אותו.

    במאמר מיפוי של זהויות משתמשים ב-Cloud Search מוסבר איך להשיג את הערכים האלה.

  4. עליך להגדיר חשבון משתמש למחבר שיש לו הרשאות אדמין באיסוף אתרים ב-SharePoint Online.

  5. אם המחבר מחזיר תוצאות על סמך רשימות ACL (התוצאות לא גלויות לכולם), צריך ליצור פרטי כניסה כדי לקרוא משתמשים וקבוצות מחשבון Office 365. יוצרים אפליקציה של Azure Active Directory לפי ההוראות של Microsoft. כשמגדירים את האפליקציה:

    1. נותנים לאפליקציה שם תיאורי, כמו "gcs-o365-identity-connector".
    2. מוסיפים הרשאות. לאפליקציה צריך להיות "Group.Read.All" ו-"User.Read.All".
    3. רושמים את המידע הבא לשימוש בהגדרת המחבר:
      • מזהה האפליקציה
      • דייר
      • סוד לקוח

שלב 1. התקנה של תוכנת המחבר של SharePoint Online

  1. שכפול מאגר המחברים מ-GitHub.

    $ git clone https://github.com/google-cloudsearch/sharepoint-connector.git
    $ cd sharepoint-connector
  2. בדוק את הגרסה הרצויה של המחבר:

    $ git checkout tags/v1-0.0.3
  3. בניית המחבר.

    $ mvn package

    כדי לדלג על בדיקות במהלך יצירת המחבר, מריצים את mvn package -DskipTests במקום את mvn package.

  4. מעתיקים את קובץ ה-ZIP של המחבר לספריית ההתקנה המקומית:

    $ cp target/google-cloudsearch-sharepoint-connector-v1-0.0.3.zip installation-dir
    $ cd installation-dir
    $ unzip google-cloudsearch-sharepoint-connector-v1-0.0.3.zip
    $ cd google-cloudsearch-sharepoint-connector-v1-0.0.3

שלב 2. יצירת קובץ התצורה של מחבר SharePoint Online

  1. באותה ספרייה שבה נמצאת התקנת המחבר, יוצרים קובץ חדש ונותנים לו את השם sharepoint-online-connector.config. אם אתם מתכננים להפעיל מופעים רבים של מחברים, צריך להוסיף עוד פרטים לשם כדי להבדיל אותו.

  2. מוסיפים פרמטרים בתור צמדי מפתח/ערך לתוכן הקובץ, כמו בדוגמה הבאה:

    ### SharePoint Online connector configuration ###
    
    # Required parameters for data source access
    api.sourceId=08ef8becd116faa4546b8ca2c84b2879
    api.serviceAccountPrivateKeyFile=service_account.json
    
    # Required parameters for SharePoint Online access
    sharepoint.server=https://mydomain.onmicrosoft.com
    sharepoint.siteCollectionOnly=true
    sharepoint.username=admin@mydomain.onmicrosoft.com
    sharepoint.password=pa$sw0rd
    sharepoint.formsAuthenticationMode=LIVE
    sharepoint.deploymentType=ONLINE
    
    # SharePoint identity mapping parameters
    api.identitySourceId=08ef8becd116faa475de26d9b291fed9
    api.referenceIdentitySources=defaultIdentitySource
    api.referenceIdentitySource.defaultIdentitySource.id=08ef8becd116faa5d3783f8c5a80e5aa
    
    # Optional SharePoint List Item metadata parameters
    contentTemplate.sharepointItem.title=Title
    contentTemplate.sharepointItem.unmappedColumnsMode=APPEND
    

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

  3. (אופציונלי) מגדירים פרמטרים נוספים של המחבר, לפי הצורך. אפשר לקרוא פרטים נוספים במאמר פרמטרים של מחברים שמסופקים על ידי Google.

שלב 3. הגדרת רישום ביומן עבור מחבר SharePoint Online

  1. יוצרים תיקייה בשם logs באותה ספרייה שמכילה את הקובץ הבינארי של המחבר.

  2. יוצרים קובץ בקידוד לטיני בשם logging.properties באותה ספרייה ומוסיפים את התוכן הבא:

    handlers = java.util.logging.ConsoleHandler,java.util.logging.FileHandler
    # Default log level
    .level = INFO
    # uncomment line below to increase logging level for SharePoint APIsa
    #com.google.enterprise.cloudsearch.sharepoint.level=FINE
    
    # 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-sharepoint.%g.log
    java.util.logging.FileHandler.limit=10485760
    java.util.logging.FileHandler.count=10
    java.util.logging.FileHandler.formatter=java.util.logging.SimpleFormatter
    

שלב 4. הגדרת מחבר הזהות של SharePoint Online

השלב הזה נדרש כדי להחיל על תוצאות החיפוש רשימות ACL מבוססות זהות של SharePoint Online. אם מגדירים במחבר רשימות ACL ציבוריות, אפשר לדלג על השלב הזה.

  1. באותה ספרייה שבה נמצאת התקנת המחבר של SharePoint Online, יוצרים קובץ חדש ונותנים לו את השם sharepoint-online-identity-connector.config.

  2. מוסיפים פרמטרים בתור צמדי מפתח/ערך לתוכן הקובץ, כמו בדוגמה הבאה:

    ### SharePoint Online identity connector configuration ###
    # Required parameters for data source access
    api.customerId=C05d3djk8
    api.serviceAccountPrivateKeyFile=service_account.json
    
    # Required parameters for SharePoint Online access
    sharepoint.server=https://mydomain.onmicrosoft.com
    sharepoint.siteCollectionOnly=true
    sharepoint.username=admin@mydomain.onmicrosoft.com
    sharepoint.password=pa$sw0rd
    sharepoint.formsAuthenticationMode=LIVE
    sharepoint.deploymentType=ONLINE
    
    # SharePoint identity mapping parameters
    api.identitySourceId=08ef8becd116faa475de26d9b291fed9
    api.referenceIdentitySources=defaultIdentitySource
    api.referenceIdentitySource.defaultIdentitySource.id=08ef8becd116faa5d3783f8c5a80e5aa
    

    הערכים כמעט זהים למחבר SharePoint Online, מלבד api.sourceId, הפרמטר הוא api.customerId. הערך של api.customerId הוא מספר הלקוח שקיבלת מהאדמין ב-Google Workspace.

שלב 5. התקנת המחבר של Office 365 Identity

השלב הזה נדרש כדי להחיל על תוצאות החיפוש רשימות ACL מבוססות זהות של SharePoint Online. אם מגדירים במחבר רשימות ACL ציבוריות, אפשר לדלג על השלב הזה.

  1. שכפול מאגר המחברים מ-GitHub.

    $ git clone https://github.com/google-cloudsearch/office-365-connector.git
    $ cd office-365-connector
  2. בדוק את הגרסה הרצויה של המחבר:

    $ git checkout tags/v1-0.0.3
  3. בניית המחבר.

    $ mvn package

    כדי לדלג על בדיקות במהלך יצירת המחבר, מריצים את mvn package -DskipTests במקום את mvn package.

  4. מעתיקים את קובץ ה-ZIP של המחבר לספריית ההתקנה המקומית:

    $ cp target/google-cloudsearch-office-365-connector-v1-0.0.3.zip installation-dir
    $ cd installation-dir
    $ unzip google-cloudsearch-office-365-connector-v1-0.0.3.zip
    $ cd google-cloudsearch-office-365-connector-v1-0.0.3

שלב 6. הגדרת המחבר של Office 365 Identity והגדרת רישום ביומן

  1. באותה ספרייה שבה הותקנה מחבר הזהויות, יוצרים קובץ חדש ונותנים לו את השם o365-identity-connector.config.

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

    ### Office 365 Identity connector configuration ###
    api.identitySourceId=12345abcde api.customerId=abcde12345 o365.clientId=a63c6eb3-29e7-486 o365.tenant=185ef9ed-29e7-486 o365.clientSecret=raHJN15vRLBKs

    לתיאורים מפורטים של כל פרמטר, אפשר לעיין ב חומר העזר על הגדרות של מחבר זהויות ב-Office 365.

  3. יוצרים תיקייה בשם logs באותה ספרייה שמכילה את הקובץ הבינארי של המחבר.

  4. יוצרים קובץ ASCII או UTF-8 בשם logging.properties באותה ספרייה ולהוסיף את התוכן הבא:

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

שלב 7. הפעלת מחבר SharePoint Online

בשלבים הבאים תמפו את חשבונות המשתמשים גם ב-Office 365 וגם באוסף אתרי SharePoint לזהויות בשירות Cloud Identity. הסנכרון מתבצע עם המחבר של Office 365 Identity ועם מחבר הזהויות של SharePoint Online.

אחרי שהמחבר של Office 365 מסנכרן את המשתמשים והקבוצות, מפעילים את מחבר הזהויות של SharePoint Online כדי לסנכרן את קבוצות אוספי האתרים של SharePoint. לאחר מכן מריצים את המחבר של SharePoint Online כדי להוסיף לאינדקס ולהציג תוצאות למשתמשים ב-Cloud Search.

  1. מריצים את מחבר הזהויות של Office 365:

    $ java -Djava.util.logging.config.file=logging.properties -jar google-cloudsearch-office-365-connector-v1-0.0.3.jar -Dconfig=o365-identity-connector.config
  2. מריצים את מחבר הזהות של SharePoint Online:

    $ java -Djava.util.logging.config.file=logging.properties -cp "google-cloudsearch-sharepoint-connector-v1-0.0.3.jar" com.google.enterprise.cloudsearch.sharepoint.SharePointIdentityConnector -Dconfig=sharepoint-online-identity-connector.config
  3. מריצים את מחבר SharePoint Online:

    $ java -Djava.util.logging.config.file=logging.properties -jar google-cloudsearch-sharepoint-connector-v1-0.0.3.jar -Dconfig=sharepoint-online-connector.config

מסמך עזר בנושא פרמטרים של הגדרות

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

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

חובה. מזהה מקור הנתונים של Google Cloud Search שהוגדר על ידי האדמין ב-Google Workspace.

נתיב לקובץ המפתח הפרטי של חשבון השירות api.serviceAccountPrivateKeyFile=PrivateKey.json

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

גישה ל-SharePoint Online

הגדרה פרמטר
שם דומיין מלא עבור אוסף אתרי SharePoint sharepoint.server=http://yoursharepoint.example.com/

חובה. אם שם הדומיין לא מלא, צריך להגדיר עקיפת DNS במארח המחבר.

מצב 'איסוף אתרים בלבד' sharepoint.siteCollectionOnly=true

חובה. ל-SharePoint Online, מגדירים את הערך true.

שם משתמש ב-SharePoint sharepoint.username=username

חובה. שם המשתמש של החשבון ששימש לגישה ל-SharePoint Online.

סיסמת SharePoint sharepoint.password=user_password

חובה. הסיסמה של החשבון ששימש לגישה ל-SharePoint Online.

מצב אימות sharepoint.formsAuthenticationMode=LIVE

חובה. עבור SharePoint Online, הערך הוא תמיד 'LIVE'.

סוג הפריסה sharepoint.deploymentType=ONLINE

חובה. עבור SharePoint Online, הערך הוא תמיד 'online'.

מיפוי זהויות של SharePoint

הגדרה פרמטר
המזהה של מקור הזהות api.identitySourceId=1234567890abcdef

חובה. מזהה מקור הזהות ב-Cloud Search עבור מקור הזהות של קבוצות ב-SharePoint.

מקורות זיהוי של הפניות api.referenceIdentitySources=defaultIdentitySource

חובה. ב-SharePoint Online, הערך הוא תמיד 'defaultIdentitySource'.

מזהי מקור של זהות הפניה api.referenceIdentitySource.defaultIdentitySource.id=112233abcd

חובה. מזהה מקור הזהות של Cloud Search למקור הזהות של משתמשים וקבוצות ב-Office 365.

יצירת תוכן HTML

הגדרה פרמטר
שדה כותרת של תבנית HTML contentTemplate.sharePointItem.title=Title

השדה SharePoint לשימוש ככותרת תבנית ה-HTML של ה-HTML שנוצר.

שדות של תוכן HTML באיכות גבוהה לחיפוש contentTemplate.sharePointItem.quality.high=highField1[,highField2,...]

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

שדות של איכות חיפוש בינונית בתוכן HTML contentTemplate.sharePointItem.quality.medium=mediumField1[,mediumField2,...]

רשימה של שדות מופרדים בפסיקים שצריך לכלול ב-HTML שנוצר כשדות באיכות בינונית.

שדות של תוכן HTML באיכות נמוכה בחיפוש contentTemplate.sharePointItem.quality.low=lowField1[,lowField2,...]

רשימה של שדות מופרדים בפסיקים שצריך לכלול ב-HTML שנוצר כשדות באיכות נמוכה.

עמודות לא ממופות לתוכן HTML contentTemplate.sharepointItem.unmappedColumnsMode=APPEND

האופן שבו המחבר מטפל בעמודות לא ממופות. הערך הוא APPEND (ברירת המחדל) או IGNORE.

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

הגדרת מחבר זהויות של Office 365

הגדרה פרמטר
המזהה של מקור הזהות api.identitySourceId=1234567890abcdef

חובה. המזהה של מקור הזהות ב-Office 365. הערך הזה צריך להיות תואם לערך של 'api.referenceIdentitySource.defaultIdentitySource.id' בתצורת מחבר SharePoint Online.

מספר לקוח ב-Google api.customerId=c1b1d1e1

חובה. מספר הלקוח של הארגון ב-Google Workspace.

מזהה אפליקציית Office 365 o365.clientId=a63c6eb3-29e7-486

חובה. מזהה האפליקציה בהגדרת האפליקציה ב-Office 365.

דייר (tenant) ל-Office 365 o365.tenant=185ef9ed-29e7-486

חובה. הדייר של חשבון Office 365 (אפליקציית Azure Activity Directory)

סוד לקוח ב-Office 365 o365.clientSecret=raHJN15vRLBKs

חובה. סוד פרטי הכניסה מהגדרת האפליקציה של Office 365