IBM Cloud Docs
Microsoft SharePoint Online

Microsoft SharePoint Online

擷取儲存於 Microsoft SharePoint 線上資料來源中的文件。

IBM Cloud Pak for Data IBM Cloud Pak for Data only

此資訊僅適用於已安裝的部署。 For more information about connecting to an online SharePoint site from a managed deployment, see SharePoint 線上.

抓取哪些文件

  • 在初始抓取內容時,會抓取可從您指定的網站集合路徑存取的所有物件的文件,並將其新增至您的集合。 與 SharePoint 內容相關的自訂元資料也會被抓取。
  • 每個集合可以抓取一個網站集合路徑。
  • 只有 Discovery 支援的文件才會被抓取,其他文件都會被忽略。 如需詳細資訊,請參閱 支援的檔案類型
  • 支援文件層級安全性。 啟用此選項後,您的使用者可以抓取和查詢他們登入 SharePoint 時可以存取的相同內容。 如需詳細資訊,請參閱 支援文件層級安全性
  • 當重新抓取來源時,會新增文件,更新的文件會修改為目前的版本,而刪除的文件則會從集合的索引中刪除。
  • 所有 Discovery 資料來源連線器都是唯讀的。 無論授予爬取帳戶的權限如何,Discovery 永遠不會寫入、更新或刪除原始資料來源中的任何內容。

Discovery 可以抓取下列物件:

  • 網站收藏
  • 站點
  • SubSites
  • 清單
  • 清單項目
  • 文件庫
  • 清單項目附件

資料來源需求

In addition to the 資料來源需求 for all installed deployments, your SharePoint Online data source must meet the following requirements:

  • 您連線的 Site Collection 必須是以企業方案建立的 Site Collection。 它不可能是以前線工作人員計畫建立的集合。

  • 根據您在設定驗證方法時指定的主體類型,驗證支援會有所不同。 在建立集合之前,請先確定您要使用的本金類型;之後將無法變更本金類型。 可用的選項如下:

    • 使用者:爬行使用者帳戶必須符合下列要求:

      • 帳戶必須擁有 Azure Active Directory 使用者 ID,並具有存取所有要抓取的物件的權限。 例如,admin_user@company.onmicrosoft.com。 使用者 ID 必須有 Site Collection Administrator 權限。

      • 帳戶必須啟用傳統驗證。 To enable legacy authentication, go to the Azure 入口網站 or contact your Azure Active Directory administrator.

        連接器僅支援啟用混合身分的 Password hash synchronization (PHS) 方法。 使用任何其他類型 (例如 Pass-through 驗證或聯邦) 必須自行承擔風險。 除非您在 2020 年 1 月之前建立 SharePoint Online 帳戶,否則預設會啟用帳戶的雙重因素驗證。 您必須停用雙因素驗證。

        若要檢視或變更多因素驗證狀態,請參閱 檢視使用者的狀態變更使用者的狀態

    • 服務:當您以 Azure Active Directory 服務主體連線到您的資料時,您可以使用多重因素驗證。

如需 SharePoint Online 的詳細資訊,請參閱 Microsoft SharePoint 開發人員文件

使用使用者本金時的必要步驟

如果要啟用文件層級安全性,您必須採取一些步驟來設定。 如需相關資訊,請參閱關於文件層次安全

下表列出了要為使用者本金驗證方法設定的權限。

  1. 註冊您的應用程式。

    如需詳細資訊,請參閱 Microsoft 文件

  2. 設定 API 權限。

使用者本金 API 設定
API 許可權 類型
Microsoft Graph(群組) Group.Read.AllGroup.ReadWrite.All 委派
Microsoft Graph(目錄) Directory.AccessAsUser.AllDirectory.Read.AllDirectory.ReadWrite.All 委派
SharePoint Online User.Read.AllUser.ReadWrite.All 委派

使用服務主體時的先決步驟

服務主體是使用者建立的應用程式、服務和自動化工具用來存取特定 Azure 資源的安全身分。 它就像是一個使用者身分 (經由證書驗證),擁有特定的角色和嚴格控制的權限。 如果您以服務主要使用者的身份連線至 SharePoint Online,則無需停用多重因素驗證即可存取您的資料。

若要準備以服務委託人身份連線,請完成下列步驟:

  1. 建立認證檔案
  2. 使用 SharePoint 線上註冊應用程式.
  3. 新增證書
  4. 設定 API 權限
  5. 啟用 Azure 存取控制服務(ACS).
  6. 建立網站權限

建立認證檔案

爬蟲支援下列私密金鑰格式:

  • PKCS #1
  • PKCS #1 帶密碼
  • PKCS #8
  • PKCS #8 連密碼

以下步驟會告訴您如何在沒有密碼的情況下,建立 PKCS #1 格式的私人密碼匙。

  1. 建立私人密碼匙。

    openssl genrsa 2048 > spo-private.key
    
  2. 建立公開金鑰。

    openssl rsa -in spo-private.key -pubout -out spo-public.key
    
  3. 建立憑證簽章請求 (CSR) 檔案。

    openssl req -new -key spo-private.key > spo-request.csr
    
  4. 建立認證檔案。

    openssl x509 -req -in spo-request.csr -signkey spo-private.key -out spo.crt -days 3650
    

在 SharePoint 線上註冊應用程式

遵循 Microsoft 文件中關於 註冊 Azure AD 應用程式 的說明。

做出以下選擇:

  • 選擇 僅此組織目錄中的帳戶選項。
  • 將用戶端類型設定為公共用戶端。
  • 請記下 Azure 應用程式 (用戶端) ID,該 ID 會在註冊您的應用程式時指定給它。

當您在入口網站註冊應用程式時,主租用戶中會自動建立應用程式物件和服務主體物件。

新增憑證

上傳之前建立的憑證。

設定 API 權限

依照 Microsoft 文件 新增 API 權限。

下表列出了要為服務主要驗證方法設定的權限,並已啟用文件層級安全性。

啟用文件層級安全性 API 設定的服務主體
API 許可權 類型
Microsoft Graph(群組) Group.Read.All 應用程式
Microsoft Graph(目錄) Directory.Read.All 應用程式
SharePoint Sites.FullControl.All 應用程式

下表列出要為服務主要驗證方法設定的權限,且文件層級安全性已停用。

已停用 API 設定文件層級安全性的服務主體
API 許可權 類型
微軟圖形 Sites.Read.All 應用程式
SharePoint Sites.Read.All 應用程式
  1. 設定 API 權限後,按一下 Grant admin consent for {tenant-name}

啟用 Azure 存取控制服務 (ACS)

只有當您要為每個網站集設定應用程式權限時,才需要此程序。

  1. 開啟 SharePoint 線上管理 Shell。

    如需詳細資訊,請參閱 開始使用 SharePoint 線上管理 Shell

  2. 執行下列指令,啟用基於 ACS 的唯應用程式驗證:

    Set-PnPTenant -DisableCustomAppAuthentication $false
    

    如需詳細資訊,請參閱 Set-PnPTenant

  3. 按照 Microsoft 文件中的步驟來 使用 SharePoint 僅限應用程式授予存取權

  4. 複製用戶端 ID 和用戶端 Secret 值。

  5. 為您的部署定義適當的權限請求。

    移至 https://{tenant-name}.sharepoint.com/sites/{site}/_layouts/15/AppInv.aspx.

    如果啟用了文件層級安全性,請指定下列 XML 請求:

    <AppPermissionRequests AllowAppOnlyPolicy="true">
      <AppPermissionRequest Scope="http://sharepoint/content/sitecollection" Right="FullControl" />
    </AppPermissionRequests>
    

    如果已停用文件層級安全性,請指定下列 XML 請求:

    <AppPermissionRequests AllowAppOnlyPolicy="true">
      <AppPermissionRequest Scope="http://sharepoint/content/sitecollection" Right="Read" />
    </AppPermissionRequests>
    
  6. 確認您信任該應用程式。

建立網站權限

新增 Microsoft Graph API 的 Sites.Selected 權限。 需要 Sites.FullControl.All 許可才能呼叫下列 API:

curl -s -XPOST -H "Authorization: ${access_token}" -H "Content-Type: application/json" \
  https://graph.microsoft.com/v1.0/sites/{site}/permissions -d '{
  "roles": ["read"],
  "grantedToIdentities": [{
    "application": {
      "id": "{azure_ad_app_id}",
      "displayName": "{display_name}"
    }
  }]
}'

如需詳細資訊,請參閱 Microsoft 文件

連接至 SharePoint 線上資料來源

從您的 Discovery 專案,完成下列步驟:

  1. 從導覽窗格中,選擇 Manage collections

  2. 按一下新增收藏集

  3. Click SharePoint 線上, and then click 下一頁.

  4. 為收藏命名。

  5. 如果 SharePoint 中的文件語言不是英文,請選擇適當的語言。

    如需受支援語言的清單,請參閱語言支援

  6. 選用:變更同步排程。

    如需詳細資訊,請參閱 爬行排程選項

  7. In the 驗證方法 section, specify the principal type you want to use when you authenticate with SharePoint from the following options:

    • 使用者:您的 Active Directory 組織中的使用者。

      Enter your credentials 部分,請填寫下列欄位:

      使用者名稱
      SharePoint 使用者的使用者名稱,該使用者有權存取所有需要被抓取和索引的網站和清單,例如 crawl_username@company.onmicrosoft.com
      密碼
      SharePoint 使用者的密碼。

      此值不會傳回,僅在您建立或修改憑證時使用。

    • 服務:使用者建立的應用程式、服務和自動化工具使用的安全身分,以存取特定的 Azure 資源。 它就像是一個使用者身分 (經由證書驗證),擁有特定的角色和嚴格控制的權限。

      4.0.3 版本新增了對使用服務主體的支援。

      Enter your credentials 部分,請填寫下列欄位:

      租戶名稱

      資料所在的租戶。 例如,ibm.onmicrosoft.com

      應用程式 ID

      您應用程式的 ID。 例如,19ce9f74-cd14-4b68-8dfc-4bcc75ed2fe9。 上傳下列檔案:

      認證檔案

      您在 SharePoint 中建立的認證檔案。 例如,myinfo.crt

      私密金鑰檔

      您在 SharePoint 中建立的私密金鑰檔案。 例如,private.app.key

      如果需要私人密碼匙密碼,請指定密碼。 If this crawler has permissions to access the specified site collection only, set the Azure 存取控制服務 switch to On, and then provide the following values:

      • 用戶端 ID
      • 用戶端密碼
  8. Specify what you want to crawl 區段中,為下列欄位新增值:

    網站收藏網址
    SharePoint 網路服務 URL。 例如,https://organization_name.com
    僅使用者本金
    Site Collection Name 欄位中,指定網站集合使用的名稱。 從網站群集設定取得名稱。
  9. 選購: If you are using a proxy server to access the data source server, then in the 代理伺服器設定 section, set the 啟用代理設定 switch to On. 為下列欄位新增數值:

    使用者名稱
    選用。 如果代理伺服器需要驗證,則需要驗證的代理伺服器使用者名稱。 如果不知道您的使用者名稱,則可以自 Proxy 伺服器的管理者取得該名稱。
    密碼
    選用。 如果代理伺服器需要驗證,則需要驗證的代理伺服器密碼。 如果不知道您的密碼,則可以自 Proxy 伺服器的管理者取得該密碼。
    代理伺服器主機名稱或 IP 位址
    代理伺服器的主機名稱或 IP 位址。
    Proxy 伺服器埠號
    您要在代理伺服器上連線的網路連接埠。
  10. 選購: If you want to activate document-level security, in the 安全性 section, set the 啟用文件層級安全性 switch to On.

    啟用此選項後,您的使用者可以抓取和查詢他們登入 SharePoint 時可以存取的相同內容。 如需詳細資訊,請參閱 支援文件層級安全性

    僅使用者本金: When you enable this option, you must add the Azure ID that was assigned to the application upon registration to the 應用 ID field.

    若要啟用文件層級安全性,您必須在 SharePoint 註冊您的應用程式。 如需詳細資訊,請參閱您使用的主機類型的先決步驟。

  11. If you want the crawler to extract text from images on the site, expand 更多處理設定, and set 應用光學字元識別 (OCR) to On.

    啟用 OCR 且您的文件包含影像時,處理時間會較長。 如需詳細資訊,請參閱 光學字元識別

  12. 按一下完成

集合快速建立。 當資料被加入集合時,需要更多時間來處理。

如果您要檢查進度,請前往 Activity 頁面。 從導覽窗格,按一下 管理收藏集,然後按一下開啟收藏集。