Melakukan Deployment Konektor Microsoft SharePoint On-Prem

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

Pertimbangan penting

Setelan SharePoint yang dihormati

Konektor Cloud Search SharePoint On-Prem selalu mengikuti setelan Search Visibility di SharePoint, yang tidak dapat diganti. Untuk dokumen draf, izin di akun pengguna (yang digunakan konektor untuk mengakses SharePoint Online) mengontrol dokumen draf 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 bagi konten SharePoint, sinkronkan identitas eksternal berikut dengan Google Directory:

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

Untuk menyinkronkan pengguna dan grup AD, Anda menggunakan Google Cloud Directory Sync, yang mengaktifkan grup yang dipetakan identitasnya. Untuk menyinkronkan grup lokal SharePoint, Anda menggunakan 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.
  • Memetakan 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 dalam file konfigurasi konektor SharePoint Online. Parameter ini memungkinkan Anda menetapkan kolom yang memiliki dampak lebih tinggi atau lebih rendah pada kecocokan.

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

  • Untuk memetakan nama jenis konten SharePoint ke definisi objek yang sesuai, konektor 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 "Artikel Berita" dipetakan ke "ArtikelBerita" (tanpa 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 menormalkan nama properti dengan mendekode karakter yang dienkode hex 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

Saat 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, dengan beberapa situs pelanggan dihosting di aplikasi Web yang sama, Anda perlu mengonfigurasi mode koleksi situs di file konfigurasi. Dalam deployment multi-tenant, Anda hanya mendapatkan izin untuk koleksi situs dan tidak dapat mendapatkan izin Baca Penuh, seperti yang diperlukan oleh konektor SharePoint On-Prem.

Untuk mengaktifkan mode koleksi situs:

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

Jika Anda memiliki beberapa koleksi situs untuk diindeks di lingkungan multi-tenant, Anda perlu mengonfigurasi satu instance konektor untuk masing-masing koleksi situs.

Batasan umum konektor

  • Waktu yang diperlukan konektor untuk mendeteksi perubahan pada item di database akan meningkat seiring dengan jumlah database yang dipantau konektor.
  • Penggunaan memori meningkat seiring dengan jumlah pengguna dan grup unik yang Anda gunakan dalam ACL untuk setiap kumpulan situs.
  • Anda dapat mengonfigurasi konektor dengan identitas dari satu Domain Active Directory saja.
  • Beberapa akun utama Active Directory dan Windows umum, seperti Everyone, BUILTIN\Users, dan All Authenticated Users, tidak didukung.
  • Notifikasi penghapusan tidak langsung dan konektor dapat memerlukan waktu lebih dari 4 jam untuk 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
    • SharePoint Server 2016
    • SharePoint Server 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-nya kepada Anda:

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

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

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

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

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

  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, login ke server SharePoint dengan akun yang memiliki hak istimewa administrasi farm dan jalankan diagnose_sp.ps1.

    Output 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 mem-build 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 Anda tidak perlu menambahkan parameter command line lain untuk menjalankan konektor. Jika Anda berencana menjalankan banyak instance konektor, tambahkan detail ke 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 dari setiap parameter, buka referensi parameter konfigurasi.

  3. (Opsional) Konfigurasikan 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 dan buka SharePoint.

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

  3. Setelah tombol Lihat tersedia, klik tombol tersebut.

  4. Buka tab Detail, lalu klik Ekspor.

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

  6. Klik Tutup, lalu Batalkan untuk menutup jendela.

  7. Buka command prompt, lalu masukkan perintah berikut:

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

    Saat ditanya "Anda memercayai 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 yang dienkode 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 pada 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 dengan konektor SharePoint On-Prem, kecuali bahwa 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 koleksi 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 SharePoint On-Prem untuk mengindeks dan menayangkan hasil kepada pengguna Cloud Search Anda.

  1. Jika Anda belum melakukannya, konfigurasikan dan jalankan GCDS. Pastikan untuk mengaktifkan grup dengan pemetaan identitas.

  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 memerlukan host tepercaya):

      $ java -Djava.util.logging.config.file=logging.properties -jar google-cloudsearch-sharepoint-connector-v1-version.jar
    • HTTPS (tambahkan 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 SharePoint lokal

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 bagian dari domain Server SharePoint AD.

Sandi SharePoint sharepoint.password=user_password

Wajib diisi saat Anda menjalankan konektor di Linux atau mesin Windows yang bukan bagian dari domain Server SharePoint 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 benar agar konektor mengindeks sharepoint.server sebagai koleksi situs, bukan sebagai server virtual. Default-nya 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 direktori aktif. Nilai cocok dengan nama NETBIOS Active Directory dari entity utama direktori aktif 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. Hostname direktori aktif, seperti dc.contoso.com, atau alamat IP.

Port pencarian Direktori Aktif adLookup.port=port

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

Metode pencarian Direktori Aktif adLookup.method=value

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

Pengguna pencarian Direktori Aktif adLookup.username=CONTOSO\user1

Wajib diisi. 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. Jika istilah kueri penelusuran cocok dengan kolom ini, hasilnya akan diberi peringkat 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 dihasilkan 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 dihasilkan 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).
  • IGNORE—Konektor menghasilkan konten HTML hanya dengan kolom yang dipetakan.