Triển khai trình kết nối Microsoft SharePoint Online

Bạn có thể thiết lập Google Cloud Search để trả về kết quả từ nội dung SharePoint Online của tổ chức ngoài nội dung trên Google Workspace. Bạn có thể sử dụng trình kết nối SharePoint Online Google Cloud Search và định cấu hình trình kết nối để truy cập vào một nguồn dữ liệu SharePoint Online cụ thể.

Điểm quan trọng cần lưu ý

Chế độ cài đặt SharePoint danh dự

Trình kết nối Cloud Search SharePoint Online luôn tuân thủ chế độ cài đặt Khả năng hiển thị tìm kiếm trên SharePoint. Không thể ghi đè chế độ cài đặt này. Đối với tài liệu nháp, các quyền trên tài khoản người dùng (mà trình kết nối sử dụng để truy cập SharePoint Online) kiểm soát những tài liệu nháp được lập chỉ mục và trả về. Nếu tài khoản chỉ có quyền "Đọc đầy đủ", trình kết nối sẽ áp dụng chế độ cài đặt "Chế độ hiển thị mục nháp" trên SharePoint.

Bạn cũng định cấu hình trình kết nối để giới hạn kết quả dựa trên quyền truy cập tài khoản của người dùng. Để áp dụng tính năng cắt bỏ tính năng bảo mật cho nội dung SharePoint, bạn cần đồng bộ hoá các danh tính bên ngoài sau đây với Google Directory:

  • Người dùng Office 365 / Azure AD
  • Nhóm bảo mật Office 365 / Azure AD
  • Nhóm SharePoint (với thành viên và người dùng Office 365)

Tối ưu hoá chiến dịch Tìm kiếm

Bạn có thể cải thiện trải nghiệm của người dùng bằng cách định cấu hình trình kết nối để trả về các kết quả tìm kiếm phù hợp hơn.

Để sử dụng API này, hãy đặt giá trị cho tham số tạo HTML trong tệp cấu hình trình kết nối SharePoint Online. Các thông số này cho phép bạn đặt những trường có tác động cao hoặc thấp hơn đến kết quả trùng khớp.

Để thiết lập giản đồ, hãy làm theo hướng dẫn trong bài viết Tạo và đăng ký giản đồ. Khi bạn thiết lập một giản đồ:

  • Để ánh xạ tên của loại nội dung SharePoint với định nghĩa đối tượng tương ứng, trình kết nối chuẩn hoá tên loại nội dung bằng cách loại trừ các ký tự không được hỗ trợ. Đối với định nghĩa đối tượng, Cloud Search API chỉ hỗ trợ A-Z, a-z và 0-9 dưới dạng các ký tự hợp lệ. Ví dụ: loại nội dung "Thông báo" liên kết với định nghĩa đối tượng "Thông báo". Loại nội dung "News Article" liên kết với "Bài viết" (không có dấu cách).

  • Khi trình kết nối không thể khớp định nghĩa đối tượng với định nghĩa đối tượng, trình kết nối sẽ sử dụng loại đối tượng dự phòng (itemMetadata.objectType). Tìm hiểu thêm về thông số cấu hình siêu dữ liệu.

  • Trình kết nối ánh xạ tên thuộc tính SharePoint tới định nghĩa thuộc tính.

  • Khi trình kết nối gặp các tệp .msg của Microsoft Outlook khi lập chỉ mục nội dung, trình kết nối sẽ ghi đè loại nội dung cho các tệp và lập chỉ mục chúng dưới dạng application/vnd.ms-outlook.

Các giới hạn đã biết của trình kết nối

  • Mỗi bản sao trình kết nối chỉ có thể lập chỉ mục nội dung từ một tập hợp trang web. Để lập chỉ mục nhiều bộ sưu tập trang web, hãy thiết lập các bản sao trình kết nối bổ sung.
  • Mức sử dụng bộ nhớ sẽ tăng lên theo số lượng người dùng và nhóm riêng biệt mà bạn sử dụng trong các tệp Danh sách kiểm soát quyền truy cập (ACL) cho mỗi tập hợp trang web.
  • Quá trình xoá thông báo không diễn ra ngay lập tức và có thể mất hơn 4 giờ để trình kết nối nhận ra rằng người dùng đã xoá nội dung khỏi kho lưu trữ nguồn.

Yêu cầu về hệ thống

Yêu cầu về hệ thống
Hệ điều hành
  • Máy chủ Windows 2016
  • Ubuntu
  • Red Hat Enterprise Linux 5.0
  • SUSE Enterprise Linux 10 (64 bit)
Xác thực
  • Xác thực trực tiếp
Phần mềm
  • Môi trường SharePoint Online
  • Java JRE 1.8 được cài đặt trên máy tính sẽ chạy trình kết nối Google Cloud Search SharePoint Online

Triển khai trình kết nối

Điều kiện tiên quyết

  1. Tạo một khoá riêng tư của Google Workspace. Khoá này chứa mã tài khoản dịch vụ của bạn. Để tìm hiểu cách lấy khoá riêng tư, hãy chuyển đến phần Thiết lập quyền truy cập vào Google Cloud Search API.

  2. Quản trị viên Google Workspace của bạn phải thêm nguồn dữ liệu để tìm kiếm. Ghi lại mã nguồn dữ liệu.

  3. Nếu trình kết nối trả về kết quả dựa trên ACL (kết quả không công khai), thì quản trị viên Google Workspace của bạn phải tạo hai nguồn nhận dạng và cung cấp cho bạn mã nhận dạng của các nguồn đó:

    • một dành cho người dùng và nhóm Office 365
    • một cho nhóm SharePoint

    Quản trị viên cũng phải lấy mã khách hàng Google Workspace của tổ chức bạn và cung cấp cho bạn.

    Tìm hiểu cách nhận các giá trị này trong bài viết Liên kết danh tính người dùng trong Cloud Search.

  4. Thiết lập tài khoản người dùng cho trình kết nối có đặc quyền của Quản trị viên thu thập trang web SharePoint trực tuyến.

  5. Nếu trình kết nối trả về kết quả dựa trên ACL (kết quả không công khai), hãy tạo thông tin xác thực để đọc người dùng và nhóm từ tài khoản Office 365 của bạn. Làm theo hướng dẫn của Microsoft để tạo ứng dụng Azure Active Directory. Khi bạn thiết lập ứng dụng:

    1. Đặt tên cho ứng dụng bằng một cái tên mang tính mô tả, chẳng hạn như "gcs-o365-identity-connector".
    2. Thêm quyền. Ứng dụng cần có "Group.Read.All" và "User.Read.All".
    3. Ghi lại thông tin sau để sử dụng trong cấu hình trình kết nối:
      • Mã ứng dụng
      • Người thuê nhà
      • Mật khẩu ứng dụng khách

Bước 1. Cài đặt phần mềm trình kết nối SharePoint Online

  1. Sao chép kho lưu trữ trình kết nối trên GitHub.

    $ git clone https://github.com/google-cloudsearch/sharepoint-connector.git
    $ cd sharepoint-connector
  2. Kiểm tra phiên bản mong muốn của trình kết nối:

    $ git checkout tags/v1-0.0.3
  3. Xây dựng trình kết nối.

    $ mvn package

    Để bỏ qua quá trình kiểm thử khi bạn tạo trình kết nối, hãy chạy mvn package -DskipTests thay vì mvn package.

  4. Sao chép tệp zip của trình kết nối vào thư mục cài đặt cục bộ của bạn:

    $ 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

Bước 2. Tạo tệp cấu hình trình kết nối SharePoint Online

  1. Trong cùng thư mục với quá trình cài đặt trình kết nối, hãy tạo một tệp mới và đặt tên tệp là sharepoint-online-connector.config. Nếu bạn định chạy nhiều phiên bản trình kết nối, hãy thêm nhiều chi tiết hơn vào tên để phân biệt.

  2. Thêm thông số dưới dạng cặp khoá/giá trị vào nội dung tệp, như trong ví dụ sau:

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

    Để biết nội dung mô tả chi tiết về từng thông số, hãy xem tài liệu tham khảo về thông số cấu hình.

  3. (Không bắt buộc) Định cấu hình các thông số bổ sung của trình kết nối, nếu cần. Để biết thông tin chi tiết, hãy chuyển đến bài viết Tham số trình kết nối do Google cung cấp.

Bước 3. Thiết lập tính năng ghi nhật ký cho trình kết nối SharePoint Online

  1. Tạo thư mục có tên logs trong cùng thư mục chứa tệp nhị phân của trình kết nối.

  2. Tạo tệp mã hoá Latinh 1 có tên là logging.properties trong cùng thư mục và thêm nội dung sau:

    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
    

Bước 4. Định cấu hình trình kết nối danh tính SharePoint Online

Đây là bước bắt buộc để áp dụng các ACL dựa trên danh tính của SharePoint Online cho các kết quả tìm kiếm. Nếu bạn thiết lập trình kết nối với các ACL công khai, bạn có thể bỏ qua bước này.

  1. Trong cùng thư mục với phần cài đặt trình kết nối SharePoint Online, hãy tạo một tệp mới và đặt tên tệp là sharepoint-online-identity-connector.config.

  2. Thêm thông số dưới dạng cặp khoá/giá trị vào nội dung tệp, như trong ví dụ sau:

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

    Các giá trị gần giống với trình kết nối SharePoint Online, ngoại trừ việc tham số là api.customerId thay vì api.sourceId. Giá trị của api.customerId là mã khách hàng mà bạn nhận được từ quản trị viên Google Workspace.

Bước 5. Cài đặt trình kết nối Office 365 Identity

Đây là bước bắt buộc để áp dụng các ACL dựa trên danh tính của SharePoint Online cho các kết quả tìm kiếm. Nếu bạn thiết lập trình kết nối với các ACL công khai, bạn có thể bỏ qua bước này.

  1. Sao chép kho lưu trữ trình kết nối trên GitHub.

    $ git clone https://github.com/google-cloudsearch/office-365-connector.git
    $ cd office-365-connector
  2. Kiểm tra phiên bản mong muốn của trình kết nối:

    $ git checkout tags/v1-0.0.3
  3. Xây dựng trình kết nối.

    $ mvn package

    Để bỏ qua quá trình kiểm thử khi bạn tạo trình kết nối, hãy chạy mvn package -DskipTests thay vì mvn package.

  4. Sao chép tệp zip của trình kết nối vào thư mục cài đặt cục bộ của bạn:

    $ 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

Bước 6. Định cấu hình trình kết nối Office 365 Identity và thiết lập tính năng ghi nhật ký

  1. Trong cùng thư mục với quá trình cài đặt trình kết nối danh tính, hãy tạo một tệp mới và đặt tên tệp là o365-identity-connector.config.

  2. Thêm tham số dưới dạng cặp khoá/giá trị vào nội dung tệp, như trong ví dụ sau. Lưu ý: Tất cả thông số đều bắt buộc.

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

    Để xem nội dung mô tả chi tiết về từng tham số, hãy xem Tài liệu tham khảo về cấu hình trình kết nối Office 365 Identity.

  3. Tạo thư mục có tên logs trong cùng thư mục chứa tệp nhị phân của trình kết nối.

  4. Tạo một tệp ASCII hoặc UTF-8 có tên logging.properties trong cùng thư mục rồi thêm nội dung sau:

    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
    

Bước 7. Khởi chạy trình kết nối SharePoint Online

Trong các bước sau, bạn liên kết dữ liệu chính trong cả Office 365 và tập hợp trang web SharePoint với danh tính trong dịch vụ Cloud Identity. Quá trình đồng bộ hoá này được thực hiện bằng trình kết nối Office 365 Identity và trình kết nối danh tính SharePoint Online.

Sau khi trình kết nối Office 365 đồng bộ hoá người dùng và nhóm, hãy chạy trình kết nối danh tính SharePoint Online để đồng bộ hoá các nhóm thu thập trang web SharePoint. Sau đó, bạn chạy trình kết nối SharePoint Online để lập chỉ mục và phân phối kết quả cho người dùng Cloud Search của mình.

  1. Chạy trình kết nối danh tính 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. Chạy trình kết nối danh tính 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. Chạy trình kết nối 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

Tài liệu tham khảo về thông số cấu hình

Truy cập nguồn dữ liệu

Xem xét Thông số
Mã nguồn dữ liệu api.sourceId=1234567890abcdef

Bắt buộc. Mã nguồn dữ liệu Google Cloud Search do quản trị viên Google Workspace thiết lập.

Đường dẫn đến tệp khoá riêng tư của tài khoản dịch vụ api.serviceAccountPrivateKeyFile=PrivateKey.json

Bắt buộc. Đường dẫn đến tệp khoá tài khoản dịch vụ Google Cloud Search.

Quyền truy cập SharePoint Online

Xem xét Thông số
Tên miền đủ điều kiện cho Bộ sưu tập Trang web SharePoint sharepoint.server=http://yoursharepoint.example.com/

Bắt buộc. Nếu tên miền không đủ điều kiện, hãy thiết lập chế độ ghi đè DNS trên máy chủ lưu trữ trình kết nối.

Chế độ chỉ thu thập trang web sharepoint.siteCollectionOnly=true

Bắt buộc. Đối với SharePoint Online, hãy đặt giá trị true.

Tên người dùng SharePoint sharepoint.username=username

Bắt buộc. Tên người dùng của tài khoản dùng để truy cập vào SharePoint Online.

Mật khẩu SharePoint sharepoint.password=user_password

Bắt buộc. Mật khẩu cho tài khoản dùng để truy cập vào SharePoint Online.

Chế độ xác thực sharepoint.formsAuthenticationMode=LIVE

Bắt buộc. Đối với SharePoint Online, giá trị luôn là "LIVE".

Loại triển khai sharepoint.deploymentType=ONLINE

Bắt buộc. Đối với SharePoint Online, giá trị luôn là "TRỰC TUYẾN".

Liên kết danh tính trong SharePoint

Xem xét Thông số
ID nguồn nhận dạng api.identitySourceId=1234567890abcdef

Bắt buộc. Mã nguồn nhận dạng trên Cloud Search cho nguồn nhận dạng của nhóm SharePoint.

Nguồn nhận dạng tệp đối chiếu api.referenceIdentitySources=defaultIdentitySource

Bắt buộc. Đối với sharedPoint trực tuyến, giá trị luôn là "defaultIdentitySource".

Mã nguồn nhận dạng tệp đối chiếu api.referenceIdentitySource.defaultIdentitySource.id=112233abcd

Bắt buộc. Mã nguồn nhận dạng của người dùng Office 365 và nguồn nhận dạng Groups trên Cloud Search.

Tạo nội dung HTML

Xem xét Thông số
Trường tiêu đề mẫu HTML contentTemplate.sharePointItem.title=Title

Trường SharePoint để sử dụng làm tiêu đề mẫu HTML cho HTML được tạo.

Trường chất lượng tìm kiếm cao của nội dung HTML contentTemplate.sharePointItem.quality.high=highField1[,highField2,...]

Danh sách các trường được phân tách bằng dấu phẩy để đưa vào HTML được tạo dưới dạng các trường chất lượng cao. Khi cụm từ tìm kiếm khớp với những trường này, kết quả sẽ được xếp hạng cao hơn.

Trường chất lượng tìm kiếm trung bình của nội dung HTML contentTemplate.sharePointItem.quality.medium=mediumField1[,mediumField2,...]

Danh sách các trường được phân tách bằng dấu phẩy để đưa vào HTML được tạo dưới dạng các trường chất lượng trung bình.

Trường có chất lượng tìm kiếm thấp của nội dung HTML contentTemplate.sharePointItem.quality.low=lowField1[,lowField2,...]

Danh sách các trường được phân tách bằng dấu phẩy để đưa vào HTML được tạo dưới dạng các trường chất lượng thấp.

Các cột chưa được liên kết của nội dung HTML contentTemplate.sharepointItem.unmappedColumnsMode=APPEND

Cách trình kết nối xử lý các cột chưa được liên kết. Giá trị là APPEND (mặc định) hoặc BỎ QUA.

  • PHỤ LỤC—Trình kết nối tạo nội dung HTML có tất cả các trường, bao gồm cả những trường không được thiết lập mức chất lượng (cao, trung bình hoặc thấp).
  • BỎ QUA—Trình kết nối tạo nội dung HTML chỉ có các trường được ánh xạ.

Cấu hình trình kết nối Office 365 Identity

Xem xét Thông số
ID nguồn nhận dạng api.identitySourceId=1234567890abcdef

Bắt buộc. Mã nguồn nhận dạng Office 365. Giá trị này phải khớp với giá trị của "api.referenceIdentitySource.defaultIdentitySource.id" trong cấu hình trình kết nối SharePoint Online.

Id khách hàng Google api.customerId=c1b1d1e1

Bắt buộc. Mã khách hàng Google Workspace của tổ chức của bạn.

Mã ứng dụng Office 365 o365.clientId=a63c6eb3-29e7-486

Bắt buộc. Mã ứng dụng trong quá trình thiết lập ứng dụng Office 365.

Khách hàng thuê văn phòng 365 o365.tenant=185ef9ed-29e7-486

Bắt buộc. Người thuê tài khoản Office 365 (ứng dụng Azure Activity Directory của bạn)

Mật khẩu ứng dụng khách Office 365 o365.clientSecret=raHJN15vRLBKs

Bắt buộc. Khoá bí mật thông tin xác thực khi thiết lập ứng dụng Office 365