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

Możesz skonfigurować Google Cloud Search tak, aby zwracał wyniki z lokalnych zasobów SharePoint organizacji oprócz zasobów Google Workspace. Używasz łącznika Google Cloud Search SharePoint On-Prem i konfigurujesz go, aby uzyskać dostęp do konkretnego źródła danych SharePoint.

Ważne informacje

Uwzględniane ustawienia SharePoint

Oprogramowanie sprzęgające Cloud Search SharePoint On-Prem zawsze obsługuje ustawienie Widoczność przy wyszukiwaniu, którego nie można zastąpić. W przypadku wersji roboczych dokumentów uprawnienia na koncie użytkownika (używane przez oprogramowanie sprzęgające do uzyskiwania dostępu do usługi SharePoint Online) decydują o tym, które wersje robocze dokumentów są indeksowane i zwracane. Jeśli konto ma tylko uprawnienia „Pełny dostęp do odczytu”, łącznik uwzględnia ustawienia „Widoczność w wersji roboczej” w SharePoint.

Możesz też skonfigurować łącznik, aby ograniczyć wyniki na podstawie dostępu do konta użytkownika. Do definiowania list ACL możesz używać podmiotów w Google i podmiotów zewnętrznych. Aby zastosować ograniczanie zabezpieczeń w przypadku treści SharePoint, zsynchronizuj te tożsamości zewnętrzne z katalogiem Google:

  • Użytkownicy usługi Active Directory
  • Grupy Active Directory
  • Grupy lokalne SharePoint (z użytkownikami i grupami Active Directory jako członkami)

Aby zsynchronizować użytkowników i grupy AD, użyj Google Cloud Directory Sync, włączając grupy mapowane na tożsamość. Do synchronizowania grup lokalnych w SharePoint używasz łącznika tożsamości SharePoint.

Oprogramowanie sprzęgające musi też przeprowadzić wyszukiwanie w AD, aby pobrać dodatkowe informacje do synchronizacji podmiotów. Na przykład wyszukiwanie w usłudze AD umożliwia oprogramowaniu sprzęgającemu wykonywanie tych czynności:

  • Zmapuj identyfikator SID grupy domen na odpowiedni identyfikator sAMAccountName.
  • Zmapuj nazwę użytkownika sAMAccountName na adres e-mail dla członkostwa w lokalnej grupie SharePoint.

Optymalizacja wyszukiwania

Możesz zwiększyć wygodę użytkowników, konfigurując złącze tak, aby zwracało trafniejsze wyniki wyszukiwania.

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

Aby skonfigurować schemat, wykonaj instrukcje podane w artykule Tworzenie schematu i rejestrowanie go. Podczas konfigurowania schematu:

  • Aby mapować nazwy typów treści SharePoint na odpowiadające im definicje obiektów, sprzęgacz 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ł prasowy” jest mapowany na „Artykuł prasowy” (bez spacji).

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

  • Aby mapować nazwy właściwości SharePoint na ich definicje, konwerter normalizuje nazwy właściwości, dekodując znaki w kodzie szesnastkowym i usuwając prefiksy „ows_”, a następnie wykluczając znaki nieobsługiwane (wszystkie znaki oprócz A–Z, a–z i 0–9 jako prawidłowe).

Obsługa wiadomości w programie Microsoft Outlook

Gdy oprogramowanie sprzęgające napotka pliki .msg w programie Microsoft Outlook podczas indeksowania treści, zastępuje w nich typ multimediów i indeksuje je jako application/vnd.ms-outlook..

Konfiguracje dla wielu najemców

Jeśli SharePoint jest wdrożeniem wielodostępnym, w którym wiele witryn klientów jest hostowanych w tej samej aplikacji internetowej, musisz skonfigurować tryb kolekcji witryn w pliku konfiguracji. W przypadku wdrożeń wielodostępowych masz uprawnienia tylko do kolekcji witryn i nie możesz uzyskać uprawnień Pełny odczyt, które są wymagane przez oprogramowanie sprzęgające SharePoint On-Prem.

Aby włączyć tryb zbierania witryn:

  • Przyznaj kontu użytkownika oprogramowania sprzęgającego uprawnienia administratora kolekcji witryn.
  • W pliku konfiguracji oprogramowania sprzęgającego ustaw wartość sharepoint.server na adres URL kolekcji witryn, np. http://sharepoint.example.com/sites/sitecollection. Adres URL nie musi być zapisany wielkimi literami tak jak w SharePoint.
  • Ustaw wartość sharepoint.siteCollectionOnly w pliku konfiguracji oprogramowania sprzęgającego na true.

Jeśli masz wiele zbiorów witryn do zindeksowania w środowisku wielodzierżawnym, musisz skonfigurować po jednym wystąpieniu łącznika dla każdego z nich.

Znane ograniczenia w przypadku usługi Connectors

  • Czas potrzebny na wykrycie zmian elementów w bazach danych wydłuża się wraz z liczbą monitorowanych przez łącznik baz danych.
  • Zużycie pamięci wzrasta wraz z liczbą unikalnych użytkowników i grup, których używasz w uprawnieniach dostępu do poszczególnych kolekcji witryn.
  • Możesz skonfigurować łącznik z tożsamościami z tylko jednej domeny Active Directory.
  • Niektóre popularne podmioty zabezpieczeń Active Directory i Windows, takie jak Everyone, BUILTIN\Users i All Authenticated Users, nie są obsługiwane.
  • Powiadomienia o usunięciu nie są wysyłane natychmiast. Może minąć ponad 4 godziny, zanim oprogramowanie sprzęgające wykryje, ż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)
Oprogramowanie
  • Serwer SharePoint
    • SharePoint Server 2016
    • SharePoint Server 2013
  • Java JRE 1.8 zainstalowana na komputerze, na którym ma działać łącznik Google Cloud Search SharePoint On-Prem.
Uwierzytelnianie
  • NTLM
  • Kerberos
  • HTTP Basic
  • ADFS

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, zapoznaj się z artykułem Konfigurowanie dostępu do interfejsu Google Cloud Search API.

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

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

    • Źródło tożsamości na potrzeby synchronizowania użytkowników i grup Active Directory.
    • Źródło tożsamości dla lokalnych 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 oprogramowania sprzęgającego, które ma w zasadach dotyczących użytkowników uprawnienia do pełnego odczytu aplikacji internetowej SharePoint.

  5. Jeśli aplikacja internetowa SharePoint nie ma kolekcji witryn głównych, utwórz ją.

  6. Jeśli jakiekolwiek zbiory witryn mają zablokowany dostęp do zapisu, zaloguj się na serwerze SharePoint za pomocą konta z uprawnieniami administratora i uruchom skrypt PrepareWriteLockedSites.ps1.

  7. Aby uzyskać dane źródłowe, które posłużą do skonfigurowania łącznika, zaloguj się na serwer SharePoint za pomocą konta z przywilejami administracyjnymi w farmie i uruchom diagnose_sp.ps1.

    Dane wyjściowe zawierają liczbę aplikacji internetowych, dokumentów i uczestnictwa w grupach użytkowników. Na podstawie tych informacji możesz oszacować, ile instancji usługi łącznika, pamięci i dokumentów potrzebujesz.

Krok 1. Zainstaluj oprogramowanie łącznika Google Cloud Search SharePoint On-Prem.

  1. Sklonuj repozytorium z łącznikami z GitHuba.

    $ git clone https://github.com/google-cloudsearch/sharepoint-connector.git
    $ cd sharepoint-connector
  2. Pobierz żądaną wersję oprogramowania sprzęgającego:

    $ git checkout tags/latest_version

    Gdzie: latest_version = wartość, np. v1-0.0.5

  3. Utwórz oprogramowanie sprzęgające.

    $ mvn package

    Aby pominąć testy podczas kompilowania łącznika, uruchom mvn package -DskipTests zamiast mvn package.

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

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

Krok 2. Tworzenie pliku konfiguracji oprogramowania sprzęgającego SharePoint On-Prem

  1. Utwórz plik w tym samym katalogu, w którym znajduje się instalacja oprogramowania sprzęgającego. Google zaleca nazwę pliku connector-config.properties, dzięki czemu do uruchomienia oprogramowania sprzęgającego nie są wymagane dodatkowe parametry wiersza poleceń. Jeśli planujesz uruchomić wiele instancji oprogramowania sprzęgającego, dodaj do nazwy szczegóły, aby je rozróżnić.

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

    ### Sharepoint On-Prem Connector configuration ###
    
    # Required parameters for data source access
    api.sourceId=08ef8becd116faa4546b8ca2c84b2879
    api.serviceAccountPrivateKeyFile=service_account.json
    api.identitySourceId=08ef8becd116faa475de26d9b291fed9
    
    # Required parameters for SharePoint on-premises access
    sharepoint.server=http://sp-2016:32967/sites/doc-center-site-collection
    sharepoint.siteCollectionOnly=true
    sharepoint.username=contoso\\admin
    sharepoint.password=pa$sw0rd
    sharepoint.stripDomainInUserPrincipals=true
    
    # Required parameters for AD lookup
    adLookup.host=dc.contoso.com
    adLookup.username=contoso\\admin
    adLookup.password=pa$sw0rd
    api.referenceIdentitySources=CONTOSO,contoso
    api.referenceIdentitySource.contoso.id=08ef8becd116faa5d3783f8c5a80e5aa
    api.referenceIdentitySource.CONTOSO.id=08ef8becd116faa5d3783f8c5a80e5aa
    
    # Optional parameters for schema mapping
    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 usługi szyfrowania. Szczegółowe informacje znajdziesz w artykule Parametry oprogramowania sprzęgającego dostarczone przez Google.

Krok 3. W przypadku protokołu HTTPS dodaj SharePoint jako zaufanego hosta

Jeśli SharePoint jest skonfigurowany do używania HTTPS, pobierz certyfikat SharePoint, aby dodać go jako zaufany host dla łącznika.

  1. Na komputerze, na którym ma działać łącznik, otwórz przeglądarkę i przejdź do SharePoint.

  2. Na wyświetlonej stronie z ostrzeżeniem kliknij Rozumiem ryzykoDodaj wyjątek. Na stronie wyświetla się komunikat, np. „To połączenie nie jest zaufane”, ponieważ certyfikat jest podpisany samodzielnie, a nie przez zaufany urząd certyfikacji.

  3. Gdy pojawi się przycisk Wyświetl, kliknij go.

  4. Otwórz kartę Szczegóły i kliknij Eksportuj.

  5. Zapisz certyfikat w katalogu oprogramowania sprzęgającego o nazwie sharepoint.crt.

  6. Aby zamknąć okna, kliknij Zamknij, a potem Anuluj.

  7. Otwórz wiersz polecenia i wpisz to polecenie:

    $ keytool -importcert -keystore cacerts.jks -storepass changeit -file sharepoint.crt -alias sharepoint

    Gdy pojawi się pytanie „Zaufać temu certyfikatowi?”, odpowiedz tak.

Krok 4. Skonfiguruj logowanie

  1. W katalogu zawierającym plik binarny oprogramowania sprzęgającego utwórz folder o nazwie logs.

  2. W tym samym katalogu (nie logs) utwórz plik o nazwie logging.properties zakodowany w alfabecie Latin1.

  3. Dodaj do pliku logging.properties ten tekst:

    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 5. Konfigurowanie lokalnego oprogramowania sprzęgającego tożsamości SharePoint

Ten krok jest wymagany, aby w wynikach wyszukiwania zastosować oparte na tożsamości listy kontroli dostępu usługi Dataplex On-Prem. Jeśli skonfigurujesz konwerter za pomocą publicznych reguł kontroli dostępu, możesz pominąć ten krok.

  1. W tym samym katalogu co instalacja oprogramowania sprzęgającego z SharePoint Online utwórz plik i nadaj mu nazwę sharepoint-onprem-identity-connector.config.

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

    ### SharePoint On-prem identity connector configuration ###
    
    # Required parameters for data source access
    api.customerId=C05d3djk8
    api.serviceAccountPrivateKeyFile=service_account.json
    api.identitySourceId=08ef8becd116faa475de26d9b291fed9
    
    # Required parameters for SharePoint access
    sharepoint.server=http://sp-2016:32967/sites/doc-center-site-collection
    sharepoint.siteCollectionOnly=true
    sharepoint.username=contoso\\admin
    sharepoint.password=pa$sw0rd
    sharepoint.stripDomainInUserPrincipals=true
    
    # Required parameters for AD lookup
    adLookup.host=dc.contoso.com
    adLookup.username=contoso\\admin
    adLookup.password=pa$sw0rd
    api.referenceIdentitySources=CONTOSO,contoso
    api.referenceIdentitySource.contoso.id=08ef8becd116faa5d3783f8c5a80e5aa
    api.referenceIdentitySource.CONTOSO.id=08ef8becd116faa5d3783f8c5a80e5aa
    

    Wartości są prawie takie same jak w przypadku łącznika SharePoint On-Prem, z tym że zamiast api.sourceId jest parametr api.customerId. Wartością parametru api.customerId jest identyfikator klienta otrzymany od administratora Google Workspace.

Krok 6. Uruchamianie lokalnego oprogramowania sprzęgającego SharePoint

W kolejnych krokach zmapujesz podmioty zarówno w usłudze Active Directory na komputerze lokalnym, jak i w kolekcji witryn SharePoint do tożsamości w usłudze Cloud Identity. Synchronizacja jest wykonywana za pomocą Google Cloud Directory Sync (GCDS) i łącznika tożsamości SharePoint On-Prem.

W celu zsynchronizowania grup kolekcji witryn SharePoint po GCDS zsynchronizuj konta użytkowników i grupy, korzystając z oprogramowania sprzęgającego tożsamości Dataplex On-Prem. Na koniec uruchom oprogramowanie sprzęgające SharePoing On-Prem, aby zindeksować i przekazać wyniki użytkownikom Cloud Search.

  1. Jeśli jeszcze tego nie zrobiono, skonfiguruj i uruchom GCDS. Włącz grupy z mapowaniem tożsamości.

  2. Uruchom lokalny oprogramowanie sprzęgające tożsamości SharePoint:

    $ java -Djava.util.logging.config.file=logging.properties -cp "google-cloudsearch-sharepoint-connector-version.jar" com.google.enterprise.cloudsearch.sharepoint.SharePointIdentityConnector -Dconfig=sharepoint-onprem-identity-connector.config
  3. Uruchom lokalny oprogramowanie sprzęgające SharePoint. Użyj składni polecenia dotyczącej zabezpieczeń witryny SharePoint:

    • HTTP (nie wymaga zaufanych hostów):

      $ java -Djava.util.logging.config.file=logging.properties -jar google-cloudsearch-sharepoint-connector-v1-version.jar
    • HTTPS (dodanie SharePoint jako zaufany host):

      $ java -Djavax.net.ssl.trustStore=cacerts.jks -Djavax.net.ssl.trustStoreType=jks -Djavax.net.ssl.trustStorePassword=changeit -Djava.util.logging.config.file=logging.properties -jar google-cloudsearch-sharepoint-connector-v1-version.jar

Odniesienie do parametrów konfiguracji

Dostęp do źródła danych

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

Wymagane. Identyfikator źródła danych Google Cloud Search skonfigurowanego przez administratora Google Workspace.

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

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

Dostęp do SharePoint w środowisku lokalnym

Ustawienie Parametr
Adres URL serwera SharePoint sharepoint.server=http://yoursharepoint.example.com/

Wymagane. Adres URL serwera SharePoint jako pełna nazwa hosta, np. http://twójserwersharepoint.example.com/. Jeśli nazwa hosta nie jest w pełni kwalifikowana, musisz ustawić zastąpienie DNS na hoście oprogramowania sprzęgającego.

Nazwa użytkownika SharePoint sharepoint.username=YOURDOMAIN\\ConnectorUser

Wymagane, gdy uruchamiasz oprogramowanie sprzęgające w systemie Linux lub na komputerze z systemem Windows, który nie należy do domeny AD serwera SharePoint.

Hasło do SharePoint sharepoint.password=user_password

Wymagane, gdy uruchamiasz oprogramowanie sprzęgające w systemie Linux lub na komputerze z systemem Windows, który nie należy do domeny AD serwera SharePoint.

Łączenie z SharePoint za pomocą uwierzytelniania na żywo sharepoint.username=AdaptorUser Live Authentication Id

sharepoint.password uS3R_passWoRD

sharepoint.formsAuthenticationMode=LIVE

Łączenie z SharePoint za pomocą uwierzytelniania ADFS sharepoint.username=AdaptorUser@yourdomain.com

sharepoint.password=uS3R_passWoRD

sharepoint.sts.endpoint=https://adfs.example.com/adfs/services/trust/2005/usernamemixed

sharepoint.sts.realm=urn:myserver:sharepoint lub https://yoursharepoint.example.com/_trust

sharepoint.formsAuthenticationMode=ADFS

Indeksowanie kolekcji witryn

Ustawienie Parametr
Typ indeksu sharepoint.siteCollectionOnly=boolean

Opcjonalne, z wyjątkiem wdrożeń SharePoint dla wielu dzierżaw (więcej informacji). Jeśli ustawisz wartość Prawda, indeks oprogramowania sprzęgającego sharepoint.server będzie używany jako zbiór witryn, a nie jako serwer wirtualny. Wartość domyślna to null (wykrywane automatycznie).

Mapowanie tożsamości w SharePoint

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

Wymagane. Identyfikator źródła tożsamości do synchronizowania grup lokalnych SharePoint.Identyfikator źródła Google Cloud Search skonfigurowany przez administratora Google Workspace zgodnie z instrukcjami podanymi w artykule Dodawanie źródła danych do wyszukiwania.

Źródła tożsamości do odwołania api.referenceIdentitySources=CONTOSO,contoso

Lista źródeł tożsamości referencyjnych dla podmiotów w aktywnej usłudze katalogu, rozdzielona przecinkami. Wartość pasuje do nazwy NETBIOS w Active Directory w przypadku referencyjnych podmiotów zabezpieczeń Active Directory.

Identyfikatory źródeł tożsamości referencyjnych api.referenceIdentitySource.DOMAIN.id=identity-source-id

Wymagane. Identyfikator źródła tożsamości do synchronizowania podmiotów Active Directory.

Wyszukiwanie w Active Directory

Ustawienie Parametr
Host Active Directory adLookup.host=host

Wymagane. Nazwa hosta Active Directory, np. dc.contoso.com, lub adres IP.

Port wyszukiwania w Active Directory adLookup.port=port

Opcjonalnie: Wartość domyślna to 389. Użyj portu 686 do SSL.

Metoda wyszukiwania w Active Directory adLookup.method=value

Opcjonalnie: Domyślna wartość to „standard”. W przypadku połączeń HTTPS ustaw wartość „ssl”.

Użytkownik wyszukiwania w Active Directory adLookup.username=CONTOSO\user1

Wymagane. Użytkownik upoważniony do wykonywania wyszukiwań w Active Directory.

Hasło wyszukiwania w Active Directory adLookup.password=password123

Wymagane. Hasło użytkownika określonego przez adLookup.user.

Generowanie treści HTML

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

Pole SharePoint używane jako tytuł szablonu HTML dla wygenerowanego kodu HTML.

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

Oddzielona przecinkami lista pól, które mają być uwzględnione w wygenerowanym kodzie HTML jako pola wysokiej jakości. Gdy wyszukiwane hasła pasują do tych pól, wyniki są lepiej oceniane.

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

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

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

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

Niezmapowane kolumny treści HTML contentTemplate.sharepointItem.unmappedColumnsMode=APPEND

Sposób obsługi kolumn bez mapowania przez łącznik. Wartość to APPEND (domyślnie) lub IGNORE.

  • APPEND—połączenie generuje zawartość HTML ze wszystkimi polami, w tym z polami, które nie mają ustawionego poziomu jakości (wysoki, średni lub niski).
  • IGNORE (ignoruj) – łącznik generuje zawartość HTML z tylko zmapowanymi polami.