Melakukan Deployment Konektor Microsoft SharePoint On-Prem

Selain konten Google Workspace, Anda dapat menyiapkan Google Cloud Search untuk menampilkan hasil dari konten lokal SharePoint organisasi Anda. Anda dapat menggunakan konektor Google Cloud Search SharePoint On-Prem dan mengonfigurasinya untuk mengakses sumber data SharePoint tertentu.

Pertimbangan penting

Setelan SharePoint

Konektor Cloud Search SharePoint On-Prem selalu mengikuti setelan Visibilitas Penelusuran di SharePoint, yang tidak dapat diganti. Untuk draf dokumen, izin pada akun pengguna (yang digunakan konektor untuk mengakses SharePoint Online) mengontrol draf dokumen yang diindeks dan ditampilkan. Jika akun hanya memiliki izin "Baca Penuh", konektor akan mengikuti setelan "Visibilitas item draf" di SharePoint.

Anda juga dapat mengonfigurasi konektor untuk membatasi hasil berdasarkan akses akun pengguna. Anda dapat menggunakan akun utama Google dan akun utama eksternal untuk menentukan ACL. Untuk menerapkan pemangkasan keamanan konten SharePoint, sinkronkan identitas eksternal berikut dengan Direktori Google:

  • Pengguna Direktori Aktif
  • Grup Direktori Aktif
  • Grup Lokal SharePoint (dengan pengguna dan grup Direktori Aktif sebagai anggota)

Untuk menyinkronkan pengguna dan grup AD, gunakan Google Cloud Directory Sync, yang mengaktifkan grup yang dipetakan identitas. Untuk menyinkronkan grup lokal SharePoint, gunakan Konektor Identitas SharePoint.

Konektor juga perlu melakukan pencarian dengan AD untuk mengambil informasi tambahan guna menyinkronkan akun utama. Misalnya, pencarian dengan AD memungkinkan konektor melakukan hal berikut:

  • Petakan SID untuk grup domain ke sAMAccountName yang sesuai.
  • Petakan sAMAccountName pengguna ke alamat email untuk keanggotaan grup lokal SharePoint.

Pengoptimalan penelusuran

Anda dapat meningkatkan pengalaman pengguna dengan mengonfigurasi konektor untuk menampilkan hasil penelusuran yang lebih relevan.

Untuk menggunakan API, tetapkan nilai untuk parameter pembuatan HTML di file konfigurasi konektor SharePoint Online. Parameter ini memungkinkan Anda menetapkan kolom mana yang memiliki dampak lebih tinggi atau lebih rendah pada kecocokan.

Untuk menyiapkan skema, ikuti petunjuk di artikel Membuat dan mendaftarkan skema. Saat Anda menyiapkan skema:

  • Untuk memetakan nama jenis konten SharePoint ke definisi objek yang sesuai, konektor akan menormalkan nama jenis konten dengan mengecualikan karakter yang tidak didukung. Untuk definisi objek, Cloud Search API hanya mendukung A-Z, a-z, dan 0-9 sebagai karakter yang valid. Misalnya, jenis konten "Pengumuman" dipetakan ke definisi objek "Pengumuman". Jenis konten "News Article" dipetakan ke "NewsArticle" (tidak ada spasi).

  • Jika konektor tidak dapat mencocokkan definisi objek dengan definisi objek, konektor akan menggunakan jenis objek penggantian (itemMetadata.objectType). Pelajari parameter konfigurasi metadata lebih lanjut.

  • Untuk memetakan nama properti SharePoint ke definisi properti, konektor menormalisasi nama properti dengan mendekode karakter berenkode heksadesimal dan menghapus awalan "ows_", lalu mengecualikan karakter yang tidak didukung (semua karakter kecuali A-Z, a-z, dan 0-9 sebagai karakter yang valid).

Penanganan pesan Microsoft Outlook

Jika konektor menemukan file .msg Microsoft Outlook saat mengindeks konten, konektor akan mengganti jenis media untuk file tersebut dan mengindeksnya sebagai application/vnd.ms-outlook.

Konfigurasi multi-tenant

Jika SharePoint Anda adalah deployment multi-tenant, tempat beberapa situs pelanggan dihosting di aplikasi Web yang sama, Anda perlu mengonfigurasi mode pengumpulan situs di file konfigurasi. Dalam deployment multi-tenant, Anda hanya mendapatkan izin untuk koleksi situs Anda dan tidak bisa mendapatkan izin Full Read, seperti yang diperlukan oleh konektor SharePoint On-Prem.

Untuk mengaktifkan mode pengumpulan situs:

  • Berikan izin administrator pengumpulan situs akun pengguna konektor.
  • Tetapkan sharepoint.server di file konfigurasi konektor Anda ke URL koleksi situs, seperti http://sharepoint.example.com/sites/sitecollection. URL tidak perlu menggunakan kasus yang sama persis seperti di SharePoint.
  • Tetapkan sharepoint.siteCollectionOnly di file konfigurasi konektor Anda ke true.

Jika memiliki beberapa kumpulan situs untuk diindeks di lingkungan multi-tenant, Anda harus mengonfigurasi satu instance konektor untuk setiap kumpulan situs.

Batasan umum konektor

  • Waktu yang dibutuhkan konektor untuk mendeteksi perubahan pada item dalam {i>database<i} akan meningkat seiring dengan bertambahnya jumlah {i>database<i} yang dimonitor konektor.
  • Konsumsi memori meningkat seiring dengan jumlah pengguna unik dan grup yang Anda gunakan dalam ACL untuk setiap kumpulan situs.
  • Anda dapat mengonfigurasi konektor dengan identitas hanya dari satu Domain Active Directory.
  • Beberapa akun utama Active Directory dan Windows yang umum, seperti Everyone, BUILTIN\Users, dan All Authenticated Users, tidak didukung.
  • Notifikasi penghapusan tidak langsung diterapkan dan mungkin perlu waktu lebih dari 4 jam agar konektor dapat mengenali bahwa pengguna telah menghapus konten dari repositori sumber.

Persyaratan sistem

Persyaratan sistem
Sistem operasi
  • Windows Server 2016
  • Ubuntu
  • Red Hat Enterprise Linux 5.0
  • SUSE Enterprise Linux 10 (64 bit)
Software
  • Server SharePoint
    • Server SharePoint 2016
    • Server SharePoint 2013
  • Java JRE 1.8 yang diinstal di komputer yang akan menjalankan konektor Google Cloud Search SharePoint On-Prem
Autentikasi
  • NTLM
  • Kerberos
  • HTTP Dasar
  • ADFS

Men-deploy konektor

Prasyarat

  1. Buat kunci pribadi Google Workspace, yang berisi ID akun layanan Anda. Untuk mempelajari cara mendapatkan kunci pribadi, buka Mengonfigurasi akses ke Google Cloud Search API.

  2. Administrator Google Workspace Anda harus menambahkan sumber data untuk penelusuran. Catat ID sumber data.

  3. Jika konektor menampilkan hasil berdasarkan ACL (hasil tidak bersifat publik), administrator Google Workspace Anda harus membuat dua sumber identitas dan memberikan ID mereka:

    • Sumber identitas untuk menyinkronkan pengguna dan grup Direktori Aktif.
    • Sumber identitas untuk grup Lokal SharePoint

    Admin juga harus memperoleh ID pelanggan Google Workspace organisasi dan memberikannya kepada Anda.

    Pelajari cara mendapatkan nilai ini di artikel Memetakan identitas pengguna di Cloud Search.

  4. Siapkan akun pengguna untuk konektor yang memiliki izin Baca Penuh untuk Aplikasi Web SharePoint dalam kebijakan pengguna.

  5. Jika Aplikasi Web SharePoint tidak memiliki koleksi situs root, buat kumpulan situs tersebut.

  6. Jika ada koleksi situs yang terkunci, login ke server SharePoint dengan akun yang memiliki hak istimewa Admin dan jalankan skrip PrepareWriteLockedSites.ps1.

  7. Untuk mendapatkan metrik sumber data guna menginformasikan konfigurasi konektor Anda, login ke server SharePoint dengan akun yang memiliki hak istimewa administrasi pertanian, lalu jalankan diagnose_sp.ps1.

    Outputnya melaporkan jumlah aplikasi web, dokumen, dan keanggotaan grup pengguna. Gunakan informasi ini untuk memperkirakan jumlah instance konektor yang Anda perlukan, persyaratan memori, dan jumlah dokumen.

Langkah 1. Instal software konektor Google Cloud Search SharePoint On-Prem.

  1. Clone repositori konektor dari GitHub.

    $ git clone https://github.com/google-cloudsearch/sharepoint-connector.git
    $ cd sharepoint-connector
  2. Lihat versi konektor yang diinginkan:

    $ git checkout tags/latest_version

    Dengan: latest_version = nilai seperti v1-0.0.5

  3. Buat konektor.

    $ mvn package

    Untuk melewati pengujian saat Anda membuat konektor, jalankan mvn package -DskipTests, bukan mvn package.

  4. Salin file zip konektor ke direktori penginstalan lokal Anda:

    $ 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

Langkah 2: Membuat file konfigurasi konektor SharePoint On-Prem

  1. Di direktori yang sama dengan penginstalan konektor, buat file. Google merekomendasikan untuk memberi nama file connector-config.properties sehingga tidak ada parameter command line tambahan yang diperlukan untuk menjalankan konektor. Jika Anda berencana menjalankan banyak instance konektor, tambahkan detail pada nama untuk membedakannya.

  2. Tambahkan parameter sebagai key-value pair ke konten file, seperti pada contoh berikut:

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

    Untuk mengetahui deskripsi mendetail tentang setiap parameter, buka referensi parameter konfigurasi.

  3. (Opsional) Konfigurasi parameter konektor tambahan, sesuai kebutuhan. Untuk mengetahui detailnya, buka Parameter konektor yang disediakan Google.

Langkah 3. Untuk HTTPS, tambahkan SharePoint sebagai host tepercaya

Jika SharePoint dikonfigurasi untuk menggunakan HTTPS, dapatkan sertifikat SharePoint untuk menambahkannya sebagai host tepercaya untuk konektor.

  1. Di komputer yang akan menjalankan konektor, buka browser, lalu buka SharePoint.

  2. Di halaman peringatan yang terbuka, klik Saya Memahami Risiko dan Tambahkan Pengecualian. Halaman ini akan menampilkan pesan seperti "Koneksi Ini Tidak Tepercaya" karena sertifikat ditandatangani sendiri dan tidak ditandatangani oleh Certificate Authority tepercaya.

  3. Setelah tombol View tersedia, klik tombol tersebut.

  4. Buka tab Details dan klik Export.

  5. Simpan sertifikat di direktori konektor dengan nama sharepoint.crt.

  6. Klik Tutup, lalu Batal untuk menutup jendela.

  7. Buka command prompt dan masukkan perintah berikut:

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

    Saat muncul dialog "Percayai sertifikat ini?", jawab ya.

Langkah 4. Menyiapkan logging

  1. Di direktori yang berisi biner konektor, buat folder bernama logs.

  2. Di direktori yang sama (bukan logs), buat file berenkode Latin1 bernama logging.properties.

  3. Tambahkan teks berikut ke 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
    

Langkah 5: Mengonfigurasi konektor identitas SharePoint On-Prem

Langkah ini diperlukan untuk menerapkan ACL berbasis identitas SharePoint On-Prem ke hasil penelusuran. Jika Anda menyiapkan konektor dengan ACL publik, Anda dapat melewati langkah ini.

  1. Di direktori yang sama dengan penginstalan konektor SharePoint Online, buat file dan beri nama sharepoint-onprem-identity-connector.config.

  2. Tambahkan parameter sebagai key-value pair ke konten file, seperti dalam contoh berikut:

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

    Nilainya hampir sama seperti konektor SharePoint On-Prem, hanya saja parameternya adalah api.customerId, bukan api.sourceId. Nilai api.customerId adalah ID pelanggan yang Anda dapatkan dari admin Google Workspace.

Langkah 6. Meluncurkan konektor SharePoint On-Prem

Pada langkah-langkah berikut, Anda akan memetakan akun utama di Active Directory lokal dan kumpulan situs SharePoint ke identitas di layanan Cloud Identity. Sinkronisasi ini dilakukan dengan Google Cloud Directory Sync (GCDS) dan konektor identitas SharePoint On-Prem.

Setelah GCDS menyinkronkan pengguna dan grup, untuk menyinkronkan grup koleksi situs SharePoint, jalankan konektor identitas SharePoint On-Prem. Terakhir, jalankan konektor SharePoing On-Prem untuk mengindeks dan menayangkan hasil kepada pengguna Cloud Search Anda.

  1. Jika belum melakukannya, konfigurasikan dan jalankan GCDS. Pastikan Anda mengaktifkan grup yang dipetakan identitasnya.

  2. Jalankan konektor identitas SharePoint On-Prem:

    $ 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. Jalankan konektor SharePoint On-Prem. Gunakan sintaksis perintah untuk keamanan situs SharePoint Anda:

    • HTTP (tidak diperlukan host tepercaya):

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

      $ 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

Referensi parameter konfigurasi

Akses sumber data

Setelan Parameter
ID sumber data api.sourceId=1234567890abcdef

Wajib. ID sumber data Google Cloud Search yang disiapkan oleh administrator Google Workspace.

Lokasi ke file kunci pribadi akun layanan api.serviceAccountPrivateKeyFile=PrivateKey.json

Wajib. Jalur ke file kunci akun layanan Google Cloud Search.

Akses lokal SharePoint

Setelan Parameter
URL server SharePoint sharepoint.server=http://yoursharepoint.example.com/

Wajib. URL server SharePoint sebagai nama host yang sepenuhnya memenuhi syarat, seperti http://yoursharepoint.example.com/. Jika nama host tidak sepenuhnya memenuhi syarat, Anda harus menetapkan penggantian DNS pada host konektor.

Nama pengguna SharePoint sharepoint.username=YOURDOMAIN\\ConnectorUser

Wajib diisi saat Anda menjalankan konektor di Linux atau mesin Windows yang bukan merupakan bagian dari domain SharePoint Server AD.

Sandi SharePoint sharepoint.password=user_password

Wajib diisi saat Anda menjalankan konektor di Linux atau mesin Windows yang bukan merupakan bagian dari domain SharePoint Server AD.

Gunakan Autentikasi Live untuk terhubung ke SharePoint sharepoint.username=AdaptorUser Live Authentication Id

sharepoint.password uS3R_passWoRD

sharepoint.formsAuthenticationMode=LIVE

Gunakan Autentikasi ADFS untuk terhubung ke SharePoint 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 atau https://yoursharepoint.example.com/_trust

sharepoint.formsAuthenticationMode=ADFS

Pengindeksan koleksi situs

Setelan Parameter
Jenis indeks sharepoint.siteCollectionOnly=boolean

Opsional, kecuali untuk deployment SharePoint multi-tenant (pelajari lebih lanjut). Tetapkan ke true untuk memiliki indeks konektor sharepoint.server sebagai koleksi situs, bukan sebagai server virtual. Defaultnya adalah null (terdeteksi otomatis).

Pemetaan Identitas SharePoint

Setelan Parameter
ID Sumber Identitas api.identitySourceId=1234567890abcdef

Wajib. ID sumber identitas untuk menyinkronkan Grup Lokal SharePoint.ID sumber Google Cloud Search yang disiapkan oleh administrator Google Workspace, seperti yang dijelaskan dalam Menambahkan sumber data untuk penelusuran.

Sumber Identitas Referensi api.referenceIdentitySources=CONTOSO,contoso

Daftar sumber identitas referensi yang dipisahkan koma untuk akun utama Active Directory. Nilainya cocok dengan nama akun utama Active Directory NETBIOS referensi.

ID Sumber Identitas Referensi api.referenceIdentitySource.DOMAIN.id=identity-source-id

Wajib. ID Sumber Identitas untuk menyinkronkan akun utama Active Directory.

Pencarian Direktori Aktif

Setelan Parameter
Host Direktori Aktif adLookup.host=host

Wajib. Nama host direktori aktif, seperti dc.contoso.com, atau alamat IP.

Port pencarian Direktori Aktif adLookup.port=port

Opsional. Port defaultnya adalah 389. Gunakan 686 untuk SSL.

Metode pencarian Direktori Aktif adLookup.method=value

Opsional. Nilai defaultnya adalah `standard`. Untuk koneksi HTTPS, tetapkan ke `ssl`.

Pengguna pencarian Direktori Aktif adLookup.username=CONTOSO\user1

Wajib. Pengguna diizinkan untuk melakukan pencarian direktori aktif.

Sandi pencarian Direktori Aktif adLookup.password=password123

Wajib. Sandi untuk pengguna yang ditentukan oleh adLookup.user.

Pembuatan konten HTML

Setelan Parameter
Kolom judul template HTML contentTemplate.sharePointItem.title=Title

Kolom SharePoint yang akan digunakan sebagai judul template HTML untuk HTML yang dihasilkan.

Kolom konten HTML dengan kualitas penelusuran tinggi contentTemplate.sharePointItem.quality.high=highField1[,highField2,...]

Daftar kolom yang dipisahkan koma untuk disertakan dalam HTML yang dihasilkan sebagai kolom berkualitas tinggi. Saat istilah kueri penelusuran cocok dengan kolom tersebut, hasilnya diberi peringkat yang lebih tinggi.

Kolom konten HTML dengan kualitas penelusuran sedang contentTemplate.sharePointItem.quality.medium=mediumField1[,mediumField2,...]

Daftar kolom yang dipisahkan koma untuk disertakan dalam HTML yang dibuat sebagai kolom dengan kualitas sedang.

Kolom konten HTML dengan kualitas penelusuran rendah contentTemplate.sharePointItem.quality.low=lowField1[,lowField2,...]

Daftar kolom yang dipisahkan koma untuk disertakan dalam HTML yang dibuat sebagai kolom berkualitas rendah.

Kolom konten HTML yang belum dipetakan contentTemplate.sharepointItem.unmappedColumnsMode=APPEND

Cara konektor menangani kolom yang tidak dipetakan. Nilainya adalah APPEND (default) atau IGNORE.

  • APPEND—Konektor menghasilkan konten HTML dengan semua kolom, termasuk kolom yang tidak ditetapkan dengan tingkat kualitas (tinggi, sedang, atau rendah).
  • Abaikan—Konektor menghasilkan konten HTML dengan kolom yang dipetakan saja.