

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 連接 OneDrive 資料來源
<a name="kb-managed-ds-onedrive-connect"></a>

設定身分驗證並將登入資料存放在 AWS Secrets Manager 秘密之後，請在知識庫中建立 OneDrive 資料來源。此頁面說明如何使用 AWS 管理主控台 或 API 建立資料來源，後面接著您可以設定的連接器參數參考。

**注意**  
請先完成身分驗證設定。請參閱 [設定 OneDrive 的 Microsoft Entra App ID 身分驗證](kb-managed-onedrive-entra-setup.md)（建議） 或 [設定 OneDrive 的 OAuth 2.0 身分驗證](kb-managed-onedrive-oauth2-setup.md)。您需要憑證的秘密 ARN、租戶 ID 和 （文件層級存取控制） Amazon S3 位置。

## 建立資料來源
<a name="kb-managed-ds-onedrive-create"></a>

------
#### [ Console ]

**將 OneDrive 連線至您的受管知識庫**

1. 在**資料來源**下，提供資料來源的名稱。

1. 從資料來源下拉式清單中選取 **OneDrive**。

1. 在**來源**下，輸入您的 **OneDrive 租戶 ID**。

1. 在**身分驗證**下，選取 **Microsoft Entra ID 應用程式**或 **OAuth 2.0 身分驗證。**

1. 選取或建立 AWS Secrets Manager 秘密以存放您的登入資料。

1. （選用） 若要啟用文件層級存取控制，請選取**使用 ACLs 控制文件存取**，並提供**憑證路徑**：`.p12`憑證檔案的 Amazon S3 路徑。此選項僅適用於 Microsoft Entra ID 應用程式身分驗證，建立後無法變更。如需詳細資訊，請參閱[文件層級存取控制](kb-managed-ds-onedrive-acl.md)。

1. （選用） 展開**同步範圍**以選擇要編目的內容。使用 Microsoft Entra ID 應用程式身分驗證時，只能爬取個人磁碟機。

1. （選用） 展開**使用者電子郵件**，以新增要包含或排除其資料之使用者的特定電子郵件。

1. （選用） 展開**檔案路徑篩選條件**，以包含或排除特定檔案和資料夾。

1. （選用） 展開 **Mime 類型 regex 模式**以新增 regex 模式，以包含或排除特定 MIME 類型。

1. （選用） 展開**日期型實體同步**以指定日期篩選條件。

------
#### [ API ]

若要建立 OneDrive 資料來源，請傳送 [CreateDataSource](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateDataSource.html) 請求與 Amazon Bedrock 建置時間端點的代理程式。下列 AWS Command Line Interface 範例會建立使用 Microsoft Entra App ID 身分驗證的資料來源。若要啟用文件層級存取控制，`aclEnabled`請將 設定為 ，`true`並將 `certificateS3Path`新增至 `connectionConfiguration`。如需每個欄位的說明，請參閱以下連接器參數參考。

```
aws bedrock-agent create-data-source \
 --name "{{OneDrive-connector}}" \
 --knowledge-base-id "{{your-knowledge-base-id}}" \
 --data-source-configuration file://onedrive-managed-connector.json
```

`onedrive-managed-connector.json` 檔案包含下列項目：

```
{
    "type": "MANAGED_KNOWLEDGE_BASE_CONNECTOR",
    "managedKnowledgeBaseConnectorConfiguration": {
        "connectorParameters": {
            "type": "ONEDRIVE",
            "version": "1",
            "aclEnabled": false,
            "connectionConfiguration": {
                "secretArn": "{{arn:aws:secretsmanager:us-west-2:123456789012:secret:bedrock-onedrive-creds}}",
                "tenantId": "{{12345678-1234-1234-1234-123456789012}}",
                "authType": "ENTRA_APP_ID"
            },
            "dataEntityConfiguration": {
                "crawlPersonalDrives": true
            }
        }
    }
}
```

若要啟用文件層級存取控制，`aclEnabled`請將 設定為 ，`true`並將 `certificateS3Path`新增至 `connectionConfiguration`：

```
{
    "type": "ONEDRIVE",
    "version": "1",
    "aclEnabled": true,
    "connectionConfiguration": {
        "secretArn": "{{arn:aws:secretsmanager:us-west-2:123456789012:secret:bedrock-onedrive-creds}}",
        "tenantId": "{{12345678-1234-1234-1234-123456789012}}",
        "authType": "ENTRA_APP_ID",
        "certificateS3Path": {
            "s3BucketName": "{{your-certificate-bucket}}",
            "s3KeyName": "{{certs/certificate.p12}}"
        }
    },
    "dataEntityConfiguration": {
        "crawlPersonalDrives": true
    }
}
```

對於`OAUTH2`資料來源，將 `authType` 設定為 `OAUTH2`並省略 `certificateS3Path`。

對於受管知識庫， `CreateDataSource`是非同步的：當操作完成`CREATING``AVAILABLE`時，資料來源狀態會從 轉換為 。

------

## 連接器參數
<a name="kb-managed-config-onedrive"></a>

資料來源組態使用下列連接器參數。若要連線至 OneDrive，請在 中將 指定`ONEDRIVE`為連接器類型`connectorParameters`。如需包裝的欄位 `connectorParameters`（例如 `deletionProtectionConfiguration`和 `mediaExtractionConfiguration`)，請參閱 [連接資料來源](kb-managed-connect-ds.md)。


**connectionConfiguration**  

| 欄位 | 必要 | 描述 | 
| --- | --- | --- | 
| secretArn | 是 | 包含 OneDrive 登入資料的 AWS Secrets Manager 秘密 ARN。 | 
| tenantId | 是 | Microsoft Entra (Azure AD) 租用戶 ID。 | 
| authType | 是 | 身分驗證類型： ENTRA\_APP\_ID（建議） 或 OAUTH2。請參閱 [身分驗證方法](kb-managed-ds-onedrive.md#kb-managed-onedrive-auth-methods)。 | 
| certificateS3Path | 有條件 | 當 aclEnabled為 時為必要 true(Microsoft Entra App ID 身分驗證）。包含 s3KeyName Amazon S3 中.p12憑證檔案的 s3BucketName和 。不用於僅限內容爬取或搭配 使用OAUTH2。 | 


**dataEntityConfiguration**  

| 欄位 | 必要 | 說明 | 
| --- | --- | --- | 
| crawlPersonalDrives | 否 | 是否要編目使用者的個人磁碟機。 | 
| crawlSharedWithMe | 否 | 是否要編目與登入使用者共用的檔案。僅支援 OAUTH2身分驗證。Microsoft Entra 應用程式 ID （僅限應用程式） 身分驗證無法抓取共用檔案。 | 

**注意**  
目前不支援 OneNote 筆記本。


**filterConfiguration （選用）**  

| 欄位 | 必要 | 說明 | 
| --- | --- | --- | 
| inclusionUserEmailAddresses | 否 | 要包含其磁碟機的使用者電子郵件地址。 | 
| exclusionUserEmailAddresses | 否 | 要排除其磁碟機的使用者電子郵件地址。 | 
| userFilterPath | 否 | 指向檔案的 Amazon S3 URL，列出要包含或排除的使用者。 | 
| inclusionDriveItems | 否 | 要包含的磁碟機項目路徑。 | 
| exclusionDriveItems | 否 | 要排除的磁碟機項目路徑。 | 
| includeMimeTypes | 否 | 要包含的 MIME 類型。 | 
| excludeMimeTypes | 否 | 要排除的 MIME 類型。 | 
| absoluteDateBefore | 否 | 僅包含在此日期之前修改的內容 (ISO 8601)。 | 
| absoluteDateAfter | 否 | 僅包含在此日期之後修改的內容 (ISO 8601)。 | 

**注意**  
使用`OAUTH2`身分驗證時，連接器會在登入使用者的委派內容中爬取。以使用者為基礎的篩選條件 (`inclusionUserEmailAddresses`、`exclusionUserEmailAddresses`、`userFilterPath`) 會判斷哪些使用者會驅動連接器嘗試；系統會以無提示方式略過無法存取的登入使用者。若要在租用戶中爬取每個使用者的 OneDrive，無論許可為何，請使用 `ENTRA_APP_ID` 身分驗證。


**aclEnabled （選用）**  

| 欄位 | 必要 | 說明 | 
| --- | --- | --- | 
| aclEnabled | 否 | 設定為 true以啟用文件層級存取控制。在 certificateS3Path中需要ENTRA\_APP\_ID身分驗證和 connectionConfiguration。您無法在建立資料來源後變更此設定。如需詳細資訊，請參閱[文件層級存取控制](kb-managed-ds-onedrive-acl.md)。 | 

## 變更身分驗證方法
<a name="kb-managed-ds-onedrive-change-auth"></a>

您可以使用 [UpdateDataSource](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_UpdateDataSource.html) 操作或 ，透過使用新的 `authType`和 登入資料更新資料來源，來變更資料來源的身分驗證方法 （例如，從 OAuth 2.0 變更為 Microsoft Entra App ID) AWS 管理主控台。文件層級存取控制設定會在您建立資料來源時修正，因此若要新增或移除 ACLs，您必須建立新的資料來源。

## 後續步驟
<a name="kb-managed-ds-onedrive-connect-next"></a>

建立資料來源之後，請同步資料來源，以將內容擷取到您的知識庫。如需詳細資訊，請參閱[同步資料來源](kb-managed-sync.md)。若要依使用者許可篩選查詢結果，請參閱 [文件層級存取控制](kb-managed-ds-onedrive-acl.md)。