Wdrażanie oprogramowania sprzęgającego Microsoft SharePoint Online

Możesz skonfigurować Google Cloud Search tak, aby zwracała wyniki z treści SharePoint Online należących do Twojej organizacji, a także z treści Google Workspace. Używasz oprogramowania sprzęgającego Google Cloud Search SharePoint Online i konfigurujesz je tak, aby miało dostęp do określonego źródła danych SharePoint Online.

Istotne kwestie

Ustawienia SharePoint

Oprogramowanie sprzęgające Cloud Search SharePoint Online zawsze uwzględnia ustawienie Widoczność wyszukiwania w SharePoint, którego nie można zastąpić. W przypadku dokumentów w wersji roboczej uprawnienia na koncie użytkownika (którego oprogramowanie sprzęgające używa do uzyskiwania dostępu do SharePoint Online) określają, które dokumenty w wersji roboczej są indeksowane i zwracane. Jeśli konto ma tylko uprawnienia „Pełny odczyt”, łącznik uwzględnia ustawienia „Widoczność elementu w wersji roboczej” w SharePoint.

Możesz też skonfigurować łącznik tak, aby ograniczał wyniki na podstawie dostępu do konta użytkownika. Aby zastosować przycinanie zabezpieczeń w przypadku treści SharePoint, zsynchronizuj z katalogiem Google te zewnętrzne tożsamości:

  • Użytkownicy Office 365 / Azure AD
  • Grupy zabezpieczeń Office 365 / Azure AD
  • grupy SharePoint (z użytkownikami i grupami Office 365 jako członkami);

Optymalizacja wyszukiwania

Możesz poprawić komfort użytkowników, konfigurując złącze tak, aby zwracało trafniejsze wyniki wyszukiwania.

Aby użyć interfejsu API, ustaw wartości parametrów generowania kodu HTML w pliku konfiguracji oprogramowania sprzęgającego SharePoint Online. Te parametry pozwalają określić, które pola mają większy lub mniejszy wpływ na dopasowania.

Aby skonfigurować schemat, postępuj zgodnie z instrukcjami w artykule Tworzenie i rejestrowanie schematu. Gdy skonfigurujesz schemat:

  • Aby mapować nazwy typów treści SharePoint na odpowiednie definicje obiektów, łącznik normalizuje nazwy typów treści, wykluczając nieobsługiwane znaki. W przypadku definicji obiektów interfejs Cloud Search API obsługuje tylko znaki A–Z, a–z i 0–9. Na przykład typ treści „Ogłoszenia” jest mapowany na definicję obiektu „Ogłoszenia”. Typ treści „Artykuł informacyjny” jest mapowany na „NewsArticle” (bez spacji).

  • Gdy oprogramowanie sprzęgające nie może dopasować definicji obiektu do definicji obiektu, używa rezerwowego typu obiektu (itemMetadata.objectType). Dowiedz się więcej o parametrach konfiguracji metadanych.

  • Łącznik mapuje nazwy właściwości SharePoint na definicje właściwości.

  • Gdy łącznik podczas indeksowania treści napotka pliki .msg programu Microsoft Outlook, zastąpi typ treści tych plików i zindeksuje je jako application/vnd.ms-outlook.

Znane ograniczenia dotyczące łączników

  • Każda instancja łącznika może indeksować treści tylko z jednej kolekcji witryn. Aby indeksować wiele kolekcji witryn, skonfiguruj dodatkowe instancje łącznika.
  • Zużycie pamięci rośnie wraz z liczbą unikalnych użytkowników i grup używanych w listach ACL dla każdej kolekcji witryn.
  • Powiadomienia o usunięciu nie są natychmiastowe. Może minąć ponad 4 godziny, zanim oprogramowanie sprzęgające rozpozna, że użytkownik usunął treści z repozytorium źródłowego.

Wymagania systemowe

Wymagania systemowe
System operacyjny
  • Windows Server 2016
  • Ubuntu
  • Red Hat Enterprise Linux 5.0
  • SUSE Enterprise Linux 10 (64-bitowy)
Uwierzytelnianie
  • Uwierzytelnianie na żywo
Oprogramowanie
  • Środowisko SharePoint Online
  • Java JRE 1.8 zainstalowana na komputerze, na którym będzie działać łącznik Google Cloud Search SharePoint Online.

Wdrażanie oprogramowania sprzęgającego

Wymagania wstępne

  1. Utwórz klucz prywatny Google Workspace, który zawiera identyfikator konta usługi. Aby dowiedzieć się, jak uzyskać klucz prywatny, przeczytaj artykuł Konfigurowanie dostępu do interfejsu Google Cloud Search API.

  2. Administrator Google Workspace musi dodać źródło danych do przeszukiwania. Zapisz identyfikator źródła danych.

  3. Jeśli łącznik zwraca wyniki na podstawie list ACL (wyniki nie są publiczne), administrator Google Workspace musi utworzyć 2 źródła tożsamości i przekazać Ci ich identyfikatory:

    • jedna dla użytkowników i grup Office 365,
    • jedna dla grup SharePoint,

    Administrator musi też uzyskać identyfikator klienta Google Workspace Twojej organizacji i przekazać go Tobie.

    Dowiedz się, jak uzyskać te wartości, w artykule Mapowanie tożsamości użytkowników w Cloud Search.

  4. Skonfiguruj konto użytkownika dla łącznika, które ma uprawnienia administratora kolekcji witryn SharePoint Online.

  5. Jeśli łącznik zwraca wyniki na podstawie list ACL (wyniki nie są publiczne), utwórz dane logowania, aby odczytywać użytkowników i grupy z konta Office 365. Postępuj zgodnie z instrukcjami firmy Microsoft dotyczącymi tworzenia aplikacji Azure Active Directory. Podczas konfigurowania aplikacji:

    1. Nadaj aplikacji opisową nazwę, np. „gcs-o365-identity-connector”.
    2. Dodaj uprawnienia. Aplikacja potrzebuje uprawnień „Group.Read.All” i „User.Read.All”.
    3. Zapisz te informacje, aby użyć ich w konfiguracji oprogramowania sprzęgającego:
      • Identyfikator aplikacji
      • Najemca
      • Tajny klucz klienta

Krok 1. Zainstaluj oprogramowanie sprzęgające usługi SharePoint Online

  1. Sklonuj repozytorium łącznika z GitHub.

    $ git clone https://github.com/google-cloudsearch/sharepoint-connector.git
    $ cd sharepoint-connector
  2. Sprawdź wybraną wersję oprogramowania sprzęgającego:

    $ git checkout tags/v1-0.0.3
  3. Utwórz oprogramowanie sprzęgające.

    $ mvn package

    Aby pominąć testy podczas tworzenia oprogramowania sprzęgającego, uruchom polecenie mvn package -DskipTests zamiast mvn package.

  4. Skopiuj plik ZIP oprogramowania sprzęgającego do lokalnego katalogu instalacyjnego:

    $ 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

Krok 2. Tworzenie pliku konfiguracji oprogramowania sprzęgającego SharePoint Online

  1. W tym samym katalogu, w którym zainstalowano łącznik, utwórz nowy plik i nadaj mu nazwę sharepoint-online-connector.config. Jeśli planujesz uruchomić wiele instancji łącznika, dodaj do nazwy więcej szczegółów, aby je odróżnić.

  2. Dodaj parametry jako pary klucz/wartość do zawartości pliku, jak w tym przykładzie:

    ### 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
    

    Szczegółowe opisy poszczególnych parametrów znajdziesz w dokumentacji parametrów konfiguracji.

  3. (Opcjonalnie) W razie potrzeby skonfiguruj dodatkowe parametry złącza. Więcej informacji znajdziesz w artykule Parametry złącza dostarczonego przez Google.

Krok 3. Konfigurowanie logowania w przypadku oprogramowania sprzęgającego SharePoint Online

  1. W tym samym katalogu, w którym znajduje się plik binarny łącznika, utwórz folder o nazwie logs.

  2. W tym samym katalogu utwórz plik o nazwie logging.properties zakodowany w formacie Latin-1 i dodaj do niego tę treść:

    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
    

Krok 4. Konfigurowanie łącznika tożsamości SharePoint Online

Ten krok jest wymagany, aby zastosować do wyników wyszukiwania listy ACL oparte na tożsamości w SharePoint Online. Jeśli łącznik został skonfigurowany z publicznymi listami ACL, możesz pominąć ten krok.

  1. W tym samym katalogu, w którym zainstalowano łącznik SharePoint Online, utwórz nowy plik i nadaj mu nazwę sharepoint-online-identity-connector.config.

  2. Dodaj parametry jako pary klucz/wartość do zawartości pliku, jak w tym przykładzie:

    ### 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
    

    Wartości są prawie takie same jak w przypadku oprogramowania sprzęgającego SharePoint Online, z tym wyjątkiem, że zamiast api.sourceId parametr to api.customerId. Wartość api.customerId to identyfikator klienta, który został Ci przekazany przez administratora Google Workspace.

Krok 5. Instalowanie łącznika tożsamości Office 365

Ten krok jest wymagany, aby zastosować do wyników wyszukiwania listy ACL oparte na tożsamości w SharePoint Online. Jeśli łącznik został skonfigurowany z publicznymi listami ACL, możesz pominąć ten krok.

  1. Sklonuj repozytorium łącznika z GitHub.

    $ git clone https://github.com/google-cloudsearch/office-365-connector.git
    $ cd office-365-connector
  2. Sprawdź wybraną wersję oprogramowania sprzęgającego:

    $ git checkout tags/v1-0.0.3
  3. Utwórz oprogramowanie sprzęgające.

    $ mvn package

    Aby pominąć testy podczas tworzenia oprogramowania sprzęgającego, uruchom polecenie mvn package -DskipTests zamiast mvn package.

  4. Skopiuj plik ZIP oprogramowania sprzęgającego do lokalnego katalogu instalacyjnego:

    $ 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

Krok 6. Konfigurowanie łącznika tożsamości Office 365 i konfigurowanie rejestrowania

  1. W tym samym katalogu, w którym znajduje się instalacja łącznika tożsamości, utwórz nowy plik i nadaj mu nazwę o365-identity-connector.config.

  2. Dodaj parametry jako pary klucz/wartość do zawartości pliku, jak w tym przykładzie. Uwaga: wszystkie parametry są wymagane.

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

    Szczegółowe opisy poszczególnych parametrów znajdziesz w dokumentacji konfiguracji łącznika tożsamości Office 365.

  3. W tym samym katalogu, w którym znajduje się plik binarny łącznika, utwórz folder o nazwie logs.

  4. Utwórz w tym samym katalogu plik ASCII lub UTF-8 o nazwie logging.properties i dodaj do niego tę treść:

    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
    

Krok 7. Uruchamianie oprogramowania sprzęgającego SharePoint Online

W kolejnych krokach zmapujesz podmioty zabezpieczeń w Office 365 i kolekcji witryn SharePoint na tożsamości w usłudze Cloud Identity. Synchronizacja odbywa się za pomocą łącznika tożsamości Office 365 i łącznika tożsamości SharePoint Online.

Po zsynchronizowaniu użytkowników i grup przez łącznik Office 365 uruchom łącznik tożsamości SharePoint Online, aby zsynchronizować grupy kolekcji witryn SharePoint. Następnie uruchom łącznik SharePoint Online, aby indeksować wyniki i udostępniać je użytkownikom Cloud Search.

  1. Uruchom łącznik tożsamości 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. Uruchom łącznik tożsamości 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. Uruchom oprogramowanie sprzęgające 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

Informacje o parametrach konfiguracji

Dostęp do źródła danych

Ustawienie Parametr
Identyfikator źródła danych api.sourceId=1234567890abcdef

Wymagany. Identyfikator źródła danych Google Cloud Search skonfigurowany przez administratora Google Workspace.

Ścieżka do pliku klucza prywatnego konta usługi api.serviceAccountPrivateKeyFile=PrivateKey.json

Wymagany. Ścieżka do pliku klucza konta usługi Google Cloud Search.

Dostęp do SharePoint Online

Ustawienie Parametr
Pełna i jednoznaczna nazwa domeny kolekcji witryn SharePoint sharepoint.server=http://yoursharepoint.example.com/

Wymagany. Jeśli nazwa domeny nie jest w pełni kwalifikowana, ustaw zastąpienie DNS na hoście łącznika.

Tryb „Tylko zbiór witryn” sharepoint.siteCollectionOnly=true

Wymagany. W przypadku SharePoint Online ustaw wartość true.

Nazwa użytkownika SharePoint sharepoint.username=username

Wymagany. Nazwa użytkownika konta używanego do uzyskiwania dostępu do SharePoint Online.

Hasło do SharePoint sharepoint.password=user_password

Wymagany. Hasło do konta używanego do uzyskiwania dostępu do SharePoint Online.

Tryb uwierzytelniania sharepoint.formsAuthenticationMode=LIVE

Wymagany. W przypadku SharePoint Online wartość to zawsze „LIVE”.

Typ wdrożenia sharepoint.deploymentType=ONLINE

Wymagany. W przypadku SharePoint Online wartość to zawsze „ONLINE”.

Mapowanie tożsamości w SharePoint

Ustawienie Parametr
Identyfikator źródła tożsamości api.identitySourceId=1234567890abcdef

Wymagany. Identyfikator źródła tożsamości Cloud Search dla źródła tożsamości grup SharePoint.

Odwoływanie się do źródeł tożsamości api.referenceIdentitySources=defaultIdentitySource

Wymagany. W przypadku SharePoint Online wartość to zawsze „defaultIdentitySource”.

Identyfikatory źródła tożsamości api.referenceIdentitySource.defaultIdentitySource.id=112233abcd

Wymagany. Identyfikator źródła tożsamości Cloud Search dla źródła tożsamości Użytkownicy i grupy Office 365.

Generowanie treści HTML

Ustawienie Parametr
Pole tytułu szablonu HTML contentTemplate.sharePointItem.title=Title

Pole SharePoint, które ma być używane jako tytuł szablonu HTML dla wygenerowanego kodu HTML.

Pola wysokiej jakości wyszukiwania treści HTML contentTemplate.sharePointItem.quality.high=highField1[,highField2,...]

Lista pól rozdzielonych przecinkami, które mają zostać uwzględnione w wygenerowanym kodzie HTML jako pola wysokiej jakości. Gdy wyszukiwane hasła pasują do tych pól, wyniki są wyświetlane wyżej.

Pola jakości wyszukiwania w przypadku treści HTML contentTemplate.sharePointItem.quality.medium=mediumField1[,mediumField2,...]

Lista pól rozdzielonych przecinkami, które mają być uwzględnione w wygenerowanym kodzie HTML jako pola średniej jakości.

Pola niskiej jakości wyszukiwania treści HTML contentTemplate.sharePointItem.quality.low=lowField1[,lowField2,...]

Lista pól rozdzielonych przecinkami, które mają być uwzględnione w wygenerowanym kodzie HTML jako pola o niskiej jakości.

Kolumny bez mapowania w treści HTML contentTemplate.sharepointItem.unmappedColumnsMode=APPEND

Jak łącznik obsługuje nieprzypisane kolumny. Wartość to APPEND (domyślna) lub IGNORE.

  • APPEND – łącznik generuje treść HTML ze wszystkimi polami, w tym z polami, dla których nie ustawiono poziomu jakości (wysoki, średni lub niski).
  • IGNORE (IGNORUJ) – oprogramowanie sprzęgające generuje treść HTML tylko ze zmapowanymi polami.

Konfigurowanie łącznika tożsamości Office 365

Ustawienie Parametr
Identyfikator źródła tożsamości api.identitySourceId=1234567890abcdef

Wymagany. Identyfikator źródła tożsamości Office 365. Ta wartość powinna być zgodna z wartością parametru `api.referenceIdentitySource.defaultIdentitySource.id` w konfiguracji konektora SharePoint Online.

Identyfikator klienta Google api.customerId=c1b1d1e1

Wymagany. Identyfikator klienta Google Workspace Twojej organizacji.

Identyfikator aplikacji Office 365 o365.clientId=a63c6eb3-29e7-486

Wymagany. Identyfikator aplikacji z konfiguracji aplikacji Office 365.

Najemca Office 365 o365.tenant=185ef9ed-29e7-486

Wymagany. dzierżawa konta Office 365 (aplikacja Azure Active Directory);

Klucz klienta Office 365 o365.clientSecret=raHJN15vRLBKs

Wymagany. Obiekt tajny danych logowania z konfiguracji aplikacji Office 365