您可以設定 Google Cloud Search,傳回貴機構的搜尋結果 除了 Google Workspace 內容外,SharePoint 也能使用地端部署內容。 使用 Google Cloud Search SharePoint On-Prem 連接器,並完成設定 存取特定的 SharePoint 資料來源。
重要事項
Honored SharePoint 設定
Cloud Search SharePoint On-Prem 連接器一律會遵循 Search SharePoint 的瀏覽權限設定無法覆寫。草稿專用 使用者帳戶的權限 (連接器用於 access SharePoint Online) 控制要建立索引及傳回哪些文件草稿。 如果帳戶只有「完整讀取」連接器會遵守「草稿」 項目瀏覽權限管理 SharePoint 上的設定
您也可以設定連接器,根據使用者帳戶限制結果 資源存取權您可以使用 Google 主體和外部主體定義 ACL。 如要對 SharePoint 內容套用安全性調整,請同步處理下列項目 外部身分:
- Active Directory 使用者
- Active Directory 群組
- SharePoint 本機群組 (包含 Active Directory 使用者和群組)
如要同步處理 AD 使用者和群組,請使用 Google Cloud Directory Sync,啟用識別資訊對應群組。如要同步處理 SharePoint 本機群組,請使用 SharePoint Identity 連接器。
連接器也必須向 AD 執行查詢,才能擷取其他資訊來同步處理主體。舉例來說,使用 AD 查詢即可讓連接器執行下列操作:
- 將網域群組的 SID 對應至對應的 sAMAccountName。
- 將使用者 sAMAccountName 對應至 SharePoint 本機群組的電子郵件地址 會員功能。
搜尋最佳化
改善使用者參與度時設定連接器,以便傳回更相關的搜尋結果。
如要使用這個 API,請在 SharePoint Online 連接器設定檔中,設定 HTML 產生參數值。透過這些參數,您就能設定哪些欄位對比對的影響較高或較低。
如要設定結構定義,請按照「建立及註冊結構定義」一文的說明操作。設定結構定義時:
為了將 SharePoint 內容類型的名稱對應至對應的物件定義,連接器會排除不支援的字元,將內容類型名稱正規化。針對物件定義,Cloud Search API 僅支援 A-Z、a-z 和 0-9 做為有效字元。例如,內容類型為「公告」對應至物件定義「公告」內容類型「News Article」對應至「NewsArticle」(沒有空格)。
如果連接器不符合物件定義與物件定義,連接器會使用備用物件類型 (
itemMetadata.objectType
)。進一步瞭解中繼資料設定參數。為了將 SharePoint 屬性名稱對應至屬性定義,連接器會將十六進位編碼字元解碼,並移除「ows_」以正規化屬性名稱前置字元,然後排除不支援的字元 (A-Z、a-z 和 0-9 以外的所有字元都是有效字元)。
Microsoft Outlook 郵件處理
連接器在建立索引內容時遇到 Microsoft Outlook .msg 檔案時,會覆寫檔案媒體類型,並將其索引為 application/vnd.ms-outlook.
。
多用戶群設定
如果您的 SharePoint 採用多用戶部署模式,可讓多個客戶網站透過同一個網頁應用程式代管,您就必須在設定檔中設定網站收集模式。在多用戶群部署中,您只會取得網站集合的權限,無法取得 SharePoint On-Prem 連接器要求的完整讀取權限。
如何啟用網站收集模式:
- 將網站收集管理員權限授予連接器使用者帳戶。
- 將連接器設定檔中的
sharepoint.server
設為網站集合網址,例如http://sharepoint.example.com/sites/sitecollection
。網址不需要與 SharePoint 上的大小寫完全相同。 - 將連接器設定檔中的
sharepoint.siteCollectionOnly
設為true
。
如果某個多用戶群環境要建立索引的多個網站集合,您必須為每個網站集合設定一個連接器執行個體。
已知連接器限制
- 連接器監控的資料庫數量越多,連接器偵測資料庫中項目變更所需的時間也會增加。
- 記憶體用量會隨著您在各個網站集合中使用 ACL 的不重複使用者和群組數量而增加。
- 您只能使用單一 Active Directory 網域的身分設定連接器。
- 不支援一些常見的 Active Directory 和 Windows 主體,例如
Everyone
、BUILTIN\Users
和All Authenticated Users
。 - 刪除通知不會立即生效,連接器可能需要超過 4 小時,才能識別出使用者從來源存放區刪除了內容。
系統需求
系統需求 | |
---|---|
作業系統 |
|
軟體 |
|
驗證 |
|
部署連接器
必要條件
建立 Google Workspace 私密金鑰,其中包含您的服務帳戶 ID。如要瞭解如何取得私密金鑰,請參閱 設定 Google Cloud Search API 的存取權。
您的 Google Workspace 管理員必須在搜尋中新增資料來源。記錄資料來源 ID。
如果連接器根據 ACL 傳回結果 (不會公開結果),則 Google Workspace 管理員必須建立兩個識別資訊來源,並提供這些來源的 ID:
- 這個識別資訊來源可用於同步處理 Active Directory 使用者和群組。
- SharePoint 本機群組的識別資訊來源
此外,管理員也必須取得貴機構的 Google Workspace 客戶 ID,再提供給您。
請參閱在 Cloud Search 中對應使用者識別資訊,瞭解如何取得這些值。
在使用者政策中,為具有 SharePoint 網頁應用程式完整讀取權限的連接器設定使用者帳戶。
如果 SharePoint 網頁應用程式沒有根網站集合,請先建立網站集合。
如果有任何網站集合採用寫入鎖定,請使用擁有管理員權限的帳戶登入 SharePoint 伺服器,然後執行
PrepareWriteLockedSites.ps1
指令碼。如要取得資料來源指標來協助您設定連接器,請登入 SharePoint 伺服器 使用具備農場管理員權限的帳戶並執行
diagnose_sp.ps1
。輸出結果會報告網頁應用程式、文件和使用者群組成員人數。這項資訊可用來估算您需要的連接器執行個體數量、記憶體需求及文件數量。
步驟 1:安裝 Google Cloud Search SharePoint On-Prem 連接器軟體。
從 GitHub 複製連接器存放區。
$ git clone https://github.com/google-cloudsearch/sharepoint-connector.git $ cd sharepoint-connector
查看所需版本的連接器:
$ git checkout tags/latest_version
其中:
latest_version
= 諸如v1-0.0.5
的值建構連接器。
$ mvn package
如要在建構連接器時略過測試,請執行
mvn package -DskipTests
(而非mvn package
)。將連接器 ZIP 檔案複製到本機安裝目錄:
$ 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
步驟 2:建立 SharePoint On-Prem 連接器設定檔
在連接器安裝作業所在的目錄中建立檔案。Google 建議您將檔案命名為
connector-config.properties
,無需使用其他指令列參數才能執行連接器。如果您打算執行多個連接器執行個體,請在名稱中加入詳細資料,以便區別。在檔案內容中加入參數做為鍵/值組合,如以下範例所示:
### 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
(選用) 視需要設定其他連接器參數。詳情請參閱 Google 提供的連接器參數,
步驟 3:使用 HTTPS 時,將 SharePoint 新增為信任的主機
如果 SharePoint 已設為使用 HTTPS,請取得 SharePoint 憑證,以便將 SharePoint 憑證新增為連接器的信任主機。
在要執行連接器的電腦上,開啟瀏覽器並前往 SharePoint。
在隨即開啟的警告頁面中,依序點選「IUnderstanding the Risks」和「Add Exception」。這個頁面會顯示類似「This Connection is 不信任」的訊息,因為憑證是自行簽署,而非由信任的憑證授權單位簽署。
出現「View」按鈕後,請按一下該按鈕。
前往「詳細資料」分頁,然後按一下「匯出」。
將憑證儲存在連接器目錄中,名稱為
sharepoint.crt
。依序點選「關閉」和「取消」,即可關閉視窗。
開啟命令提示字元並輸入下列指令:
$ keytool -importcert -keystore cacerts.jks -storepass changeit -file sharepoint.crt -alias sharepoint
當系統顯示「信任這個憑證嗎?」時,請回答 yes。
步驟 4:設定記錄功能
在包含連接器二進位檔的目錄中,建立名為
logs
的資料夾。在同一個目錄中 (而非
logs
) 中,建立名為logging.properties
的 Latin1 編碼檔案。在
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
步驟 5:設定 SharePoint On-Prem 識別資訊連接器
您必須完成這個步驟,才能將 SharePoint On-Prem 身分的 ACL 套用至搜尋結果。如果您已使用公開 ACL 設定連接器,可以略過這個步驟。
在與 SharePoint Online 連接器安裝相同的目錄中建立檔案,並命名為
sharepoint-onprem-identity-connector.config
。在檔案內容中加入參數做為鍵/值組合,如以下範例所示:
### 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
值與 SharePoint On-Prem 連接器的值幾乎相同,除了
api.sourceId
以外,參數為api.customerId
。api.customerId
的值就是 Google Workspace 管理員提供給您的客戶 ID。
步驟 6:啟動 SharePoint On-Prem 連接器
您會在下列步驟中,將內部部署 Active Directory 和 SharePoint 網站集合中的主體對應至 Cloud Identity 服務這項同步處理作業是透過 Google Cloud 完成 Directory Sync (GCDS) 和 SharePoint On-Prem 識別資訊連接器。
GCDS 同步處理使用者和群組後,如要同步處理 SharePoint 網站集合群組,請執行 SharePoint On-Prem 識別資訊連接器。最後,執行 SharePoing On-Prem 連接器,為 Cloud Search 使用者提供結果索引及提供結果。
如果您尚未 設定並執行 GCDS,請先完成設定。請務必啟用識別資訊對應群組。
執行 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
執行 SharePoint On-Prem 連接器。請使用 SharePoint 網站安全性的指令語法:
HTTP (不需要使用信任的主機):
$ java -Djava.util.logging.config.file=logging.properties -jar google-cloudsearch-sharepoint-connector-v1-version.jar
HTTPS (將 SharePoint 新增為信任的主機):
$ 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
設定參數參考資料
資料來源存取權
設定 | 參數 |
資料來源 ID | api.sourceId=1234567890abcdef
必要欄位。Google Workspace 管理員設定的 Google Cloud Search 資料來源 ID。 |
服務帳戶私密金鑰檔案的路徑 | api.serviceAccountPrivateKeyFile=PrivateKey.json
必要欄位。Google Cloud Search 服務帳戶金鑰檔案的路徑。 |
SharePoint 地端部署存取權
設定 | 參數 |
SharePoint 伺服器網址 | sharepoint.server=http://yoursharepoint.example.com/
必要欄位。採用完整主機名稱的 SharePoint 伺服器網址,例如 http://yoursharepoint.example.com/。如果主機名稱並非完整名稱,您必須在連接器主機上設定 DNS 覆寫。 |
SharePoint 使用者名稱 | sharepoint.username=YOURDOMAIN\\ConnectorUser
如果您在 Linux 上執行連接器,或是在 SharePoint Server AD 網域外的 Windows 電腦上執行連接器,則此為必填欄位。 |
SharePoint 密碼 | sharepoint.password=user_password
如果您在 Linux 上執行連接器,或是在 SharePoint Server AD 網域外的 Windows 電腦上執行連接器,則此為必填欄位。 |
使用即時驗證功能連線至 SharePoint | sharepoint.username=AdaptorUser Live Authentication Id
|
使用 ADFS 驗證連線至 SharePoint | sharepoint.username=AdaptorUser@yourdomain.com
|
網站集合索引
設定 | 參數 |
索引類型 | sharepoint.siteCollectionOnly=boolean
選用,但多用戶群 SharePoint 部署作業除外 (瞭解詳情)。如果將連接器索引 |
SharePoint 識別資訊對應
設定 | 參數 |
識別資訊來源 ID | api.identitySourceId=1234567890abcdef
必要欄位。用於同步處理 SharePoint 本機群組的識別資訊來源 ID。由 Google Workspace 管理員設定的 Google Cloud Search 來源 ID,如「在搜尋中加入資料來源」一文所述。 |
參照識別資訊來源 | api.referenceIdentitySources=CONTOSO,contoso
有效目錄主體的參照識別資訊來源清單 (以半形逗號分隔)。值與參考 Active Directory 主體的 Active Directory NETBIOS 名稱相符。 |
參照識別資訊來源 ID | api.referenceIdentitySource.DOMAIN.id=identity-source-id
必要欄位。用於同步處理 Active Directory 主體的識別資訊來源 ID。 |
Active Directory 查詢
設定 | 參數 |
Active Directory 主機 | adLookup.host=host
必要欄位。Active Directory 主機名稱,例如 dc.contoso.com 或 IP 位址。 |
Active Directory 查詢通訊埠 | adLookup.port=port
選用設定。預設值為 389。如果是安全資料傳輸層 (SSL),請使用 686。 |
Active Directory 查詢方法 | adLookup.method=value
選用設定。預設值為「standard」。如果是 HTTPS 連線,請設為 `ssl`。 |
Active Directory 查詢使用者 | adLookup.username=CONTOSO\user1
必要欄位。使用者有權執行 Active Directory 查詢。 |
Active Directory 查詢密碼 | adLookup.password=password123
必要欄位。 |
產生 HTML 內容
設定 | 參數 |
HTML 範本標題欄位 | contentTemplate.sharePointItem.title=Title
產生 HTML 的 HTML 範本標題的 SharePoint 欄位。 |
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。
|