

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 连接 Micros SharePoint oft 获取知识库
<a name="sharepoint-data-source-connector"></a>

**重要**  
为了优化检索准确性和托管体验，我们建议使用 [Amazon Bedrock 托管知识库](kb-build-managed.md)。

Microsoft SharePoint 是一项基于 Web 的协作服务，用于处理文档、网页、网站、列表等。您可以使用适用于亚马逊 Bedrock 的[AWS管理控制台或 [CreateDataSource](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateDataSource.html)API（参见 Amazon Bedrock [支持的软件开发工具包和](https://docs.aws.amazon.com/bedrock/latest/APIReference/welcome.html)）连接到您的 SharePoint 实例，以](https://console.aws.amazon.com/bedrock/home)获取您的 Amazon Bedrock 知识库。AWS CLI

**注意**  
SharePoint 数据源连接器处于预览版，可能会发生变化。  
Microsoft SharePoint 数据源不支持多模式数据，例如表格、图表、图表或其他图像。

Amazon Bedrock 支持连接到 SharePoint 在线实例。目前不支持搜寻 OneNote 文档。目前，只有 Amazon OpenSearch Serverless 矢量存储可用于此数据源。

对可爬取的文件数和文件的 MB 数是有限制的。请参阅 [Quotas for knowledge bases](https://docs.aws.amazon.com/bedrock/latest/userguide/quotas.html)。

**Topics**
+ [支持的特征](#supported-features-sharepoint-connector)
+ [先决条件](#prerequisites-sharepoint-connector)
+ [连接配置](#configuration-sharepoint-connector)

## 支持的特征
<a name="supported-features-sharepoint-connector"></a>
+ 自动检测主要文档字段
+ Inclusion/exclusion 内容过滤器
+ 对已添加、更新、删除的内容进行增量内容同步
+ 微软 Entra ID 身份验证（OAuth2 客户端凭据）

## 先决条件
<a name="prerequisites-sharepoint-connector"></a>

### SharePoint （在线）
<a name="prerequisites-sharepoint-connector-online"></a>

**重要**  
SharePoint App-Only 通过 Azure ACS 进行的身份验证已于 2026 年 4 月 2 日被微软停用，不再起作用。改用微软 Entra ID（OAuth2 客户端凭据）身份验证。配置数据源时，请将设置`authType`为`OAUTH2_CLIENT_CREDENTIALS`。

**在 SharePoint （在线）中，完成以下步骤来配置 Microsoft Entra ID 身份验证：**
+ 记下您的 SharePoint 在线网站 URL/URLs。例如 {{https://yourdomain.sharepoint.com/sites/mysite}}。您的 URL 必须以 {{https}} 开头并包含 {{sharepoint.com}}。您的网站网址必须是实际 SharePoint 网站，而不是{{sharepoint.com/}}或 {{sites/mysite/home.aspx}}
+ 记下您的 SharePoint 在线实例的域名 URL/URLs。
+ 复制您的 Microsoft 365 租户 ID。您可以在 Microsoft Entra 管理门户的“属性”中找到租户 ID。有关详细信息，请参阅[查找您的 Microsoft 365 租户 ID](https://learn.microsoft.com/en-us/sharepoint/find-your-office-365-tenant-id)。
+ 在 Microsoft Entra ID 中注册应用程序。前往 [Microsoft Entra 管理中心](https://entra.microsoft.com/)，导航到 “*应用程序注册*”，然后选择 “*新建*注册”。记下*应用程序（客户端）ID* 和*目录（租户）ID*。
+ 为注册的应用程序配置 API 权限。添加 *Microsoft Graph* → *应用程序权限* → `Sites.Read.All`。然后为您的组织授予管理员同意。
+ 创建客户端密钥。在您的应用程序注册中，前往 “*证书和密钥*” → “*新建客户机密*”。立即复制密钥值，因为它不会再次显示。
+ 将租户 ID、客户端 ID 和客户端密钥存储在中AWS Secrets Manager。您的密钥必须包含以下键值对：`clientId`、。`clientSecret`

### AWS 账户
<a name="prerequisites-sharepoint-connector-account"></a>

**在您的AWS账户中，请确保**：
+ 将身份验证凭证存储在 [AWS Secrets Manager 密钥](https://docs.aws.amazon.com/secretsmanager/latest/userguide/create_secret.html)中，并记下该密钥的 Amazon 资源名称（ARN）。按照此页面上的**连接配置**说明添加密钥中必须包含的键值对。
+ 在知识库的 AWS Identity and Access Management (IAM) role/permissions 策略中包括连接数据源的必要权限。有关将此数据源添加到知识库IAM角色所需的权限的信息，请参阅[访问数据源的权限](https://docs.aws.amazon.com/bedrock/latest/userguide/kb-permissions.html#kb-permissions-access-ds)。

**注意**  
如果您使用控制台，则可以AWS Secrets Manager前往添加您的密钥或使用现有密钥作为数据源配置步骤的一部分。作为创建知识库的控制台步骤的一部分，可以为您创建具有所有所需权限的IAM角色。配置数据源和其他配置后，具有所有必需权限的IAM角色将应用于您的特定知识库。  
我们建议您定期刷新或轮换您的凭证和密码。为了安全起见，请仅提供必要的访问权限级别。建议不要跨数据来源重复使用凭证和密钥。

## 连接配置
<a name="configuration-sharepoint-connector"></a>

要连接到您的 SharePoint 实例，您必须提供必要的配置信息，以便 Amazon Bedrock 可以访问和抓取您的数据。您还必须遵循 [先决条件](#prerequisites-sharepoint-connector)。

本部分包含此数据来源的配置示例。

有关自动检测文档字段、 inclusion/exclusion筛选器、增量同步、秘密身份验证凭据及其工作原理的更多信息，请选择以下选项：

### 自动检测主要文档字段
<a name="ds-sharepoint-document-fields"></a>

数据来源连接器会自动检测并爬取文档或内容的所有主要元数据字段。例如，数据来源连接器可以爬取与您的文档等效的文档正文、文档标题、文档创建或修改日期或其他可能适用于您文档的核心字段。

**重要**  
如果您的内容包含敏感信息，则Amazon Bedrock可以使用敏感信息进行响应。

您可以对元数据字段应用筛选运算符，以帮助您进一步提高响应的相关性。例如，文档“epoch\_modification\_time”或文档在 1970 年 1 月 1 日最后一次更新之后经历的秒数。您可以通过将“epoch\_modification\_time”设置为*大于*某个数值，筛选出最新的数据。有关可以应用于元数据字段的筛选运算符的更多信息，请参阅[元数据和筛选](https://docs.aws.amazon.com/bedrock/latest/userguide/kb-test-config.html)。

### Inclusion/exclusion 过滤器
<a name="ds-sharepoint-inclusion-exclusion"></a>

您可以包含或排除对某些内容的爬取。例如，您可以指定排除 prefix/regular 表达式模式来跳过对文件名中包含 “private” 的任何文件的抓取。您也可以指定包含 prefix/regular 表达式模式以包含某些内容实体或内容类型。如果您指定了包含和排除筛选条件，且两者都与文档匹配，则优先执行排除筛选条件，不爬取该文档。

排除或筛选掉文件名中包含“private”的 PDF 文件的正则表达式模式示例：*".\*private.\*\\\\.pdf"*

您可以对以下内容类型应用 inclusion/exclusion 过滤器：
+ `Page`：主页标题
+ `Event`：事件名称
+ `File`：附件和所有文档文件的文件名及其扩展名

目前不支持搜寻 OneNote 文档。

### 增量同步
<a name="ds-sharepoint-incremental-sync"></a>

每次您的数据源与知识库同步时，数据源连接器都会抓取新内容、修改内容和已删除内容。 Amazon Bedrock可以使用数据源的机制来跟踪内容更改并抓取自上次同步以来更改的内容。首次将数据来源与知识库同步时，默认爬取所有内容。

要将您的数据源与知识库同步，请使用 [StartIngestionJob](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_StartIngestionJob.html)API 或在控制台中选择您的知识库，然后在数据源概述部分中选择**同步**。

**重要**  
您从数据来源同步的所有数据都可供有检索数据的 `bedrock:Retrieve` 权限的任何人使用。这也可以包括任何具有受控数据来源权限的数据。有关更多信息，请参阅[知识库权限](https://docs.aws.amazon.com/bedrock/latest/userguide/kb-permissions.html)。

### 密钥身份验证凭证
<a name="ds-sharepoint-secret-auth-credentials"></a>

使用 Microsoft Entra ID 身份验证 (`OAUTH2_CLIENT_CREDENTIALS`) 时，您的秘密身份验证凭据AWS Secrets Manager必须包含以下密钥值对：
+ `clientId`: {{Application (client) ID from your Microsoft Entra ID app registration}}
+ `clientSecret`: {{client secret value from your Microsoft Entra ID app registration}}

**注意**  
您的密钥AWS Secrets Manager必须使用知识库中的相同区域。

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

**将 SharePoint 实例连接到您的知识库**<a name="connect-sharepoint-console"></a>

1. 按照中的步骤操作[在 Amazon Bedrock 知识库中通过连接到数据来源创建知识库](knowledge-base-create.md)并选择**SharePoint**作为数据源。

1. 提供数据来源的名称和（可选的）描述。

1. 提供您的 SharePoint 网站 URL/URLs。例如，对于 SharePoint 在线，{{https://yourdomain.sharepoint.com/sites/mysite}}。您的 URL 必须以 {{https}} 开头并包含 {{sharepoint.com}}。您的网站网址必须是实际 SharePoint 网站，而不是{{sharepoint.com/}}或 {{sites/mysite/home.aspx}}

1. 提供您的 SharePoint 实例的域名。

1. 在**高级设置**部分，您可以选择进行以下配置：
   + **用于临时数据存储的 KMS 密钥。**— 您可以加密临时数据，同时使用默认密钥AWS 托管式密钥或您自己的 KMS 密钥将数据转换为嵌入式数据。有关更多信息，请参阅 [加密数据提取期间的临时数据存储](encryption-kb.md#encryption-kb-ingestion)。
   + **数据删除策略** – 您可以删除数据来源的向量嵌入（这些向量嵌入默认存储在向量存储中），也可以选择保留向量存储数据。

1. 提供身份验证信息以连接到您的 SharePoint 实例。对于微软 Entra ID 身份验证：

   1. 提供租户 ID。你可以在 Microsoft Entra 管理中心的 “属性” 中找到你的租户 ID。

   1. AWS Secrets Manager前往添加您的密钥凭证，或者使用您创建的密钥的现有 Amazon 资源名称 (ARN)。你的密钥必须包含客户端 ID 和你的 Microsoft Entra ID 应用程序注册中的客户机密钥。

1. （可选）在**内容解析和分块**部分，您可以自定义如何对数据进行解析和分块。要了解有关这些定制设置的更多信息，请参阅以下资源：
   + 有关解析选项的更多信息，请参阅[数据来源的解析选项](kb-advanced-parsing.md)。
   + 有关分块策略的更多信息，请参阅[知识库的内容分块是如何运作的](kb-chunking.md)。
**警告**  
连接到数据来源后，就无法更改分块策略。
   + 有关如何自定义数据分块和使用 Lambda 函数处理元数据的详细信息，请参阅[使用自定义转换 Lambda 函数定义数据的摄取方式](kb-custom-transformation.md)。

1. 选择使用 filters/regular 表达式模式来包含或排除某些内容。否则，所有标准内容都会被抓取。

1. 继续选择嵌入模型和向量存储。要查看剩余步骤，请在连接数据来源后返回[在 Amazon Bedrock 知识库中通过连接到数据来源创建知识库](knowledge-base-create.md)，然后继续执行该步骤。

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

以下是用于连接 Amazon Bedrock 知识库的 “ SharePoint 在线” 的配置示例。您可以使用带有AWS CLI或支持的软件开发工具包（例如 Python）的 API 来配置数据源。调用后 [CreateKnowledgeBase](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateKnowledgeBase.html)，您可以调[CreateDataSource](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateDataSource.html)用创建数据源，其中包含您的连接信息`dataSourceConfiguration`。

要了解可以通过添加可选的 `vectorIngestionConfiguration` 字段来应用于摄取的定制设置，请参阅[自定义数据来源的摄取](kb-data-source-customize-ingestion.md)。

**AWS Command Line Interface**

```
aws bedrock-agent create-data-source \
 --name "SharePoint Online connector" \
 --description "SharePoint Online data source connector for Amazon Bedrock to use content in SharePoint" \
 --knowledge-base-id "your-knowledge-base-id" \
 --data-source-configuration file://sharepoint-bedrock-connector-configuration.json \
 --data-deletion-policy "DELETE"
```

**`sharepoint-bedrock-connector-configuration.json` 的内容**

```
{
    "sharePointConfiguration": {
        "sourceConfiguration": {
            "tenantId": "888d0b57-69f1-4fb8-957f-e1f0bedf64de",
            "hostType": "ONLINE",
            "domain": "yourdomain",
            "siteUrls": [
                "https://yourdomain.sharepoint.com/sites/mysite"
            ],
            "authType": "OAUTH2_SHAREPOINT_APP_ONLY_CLIENT_CREDENTIALS",
            "credentialsSecretArn": "arn:aws::secretsmanager:your-region:secret:AmazonBedrock-SharePoint"
        },
        "crawlerConfiguration": {
            "filterConfiguration": {
                "type": "PATTERN",
                "patternObjectFilter": {
                    "filters": [
                        {
                            "objectType": "File",
                            "inclusionFilters": [
                                ".*\\.pdf"
                            ],
                            "exclusionFilters": [
                                ".*private.*\\.pdf"
                            ]
                        }
                    ]
                }
            }
        }
    },
    "type": "SHAREPOINT"
}
```

------

**重要**  
SharePoint App-Only 微软已于 2026 年 4 月 2 日停用通过 Azure ACS 进行身份验证。按照上述先决条件中所述，使用 Microsoft Entra ID 身份验证 (`OAUTH2_CLIENT_CREDENTIALS`)。

## 使用 OAuth2.0
<a name="sharepoint-connector-oauth"></a>

使用 OAuth 2.0，您可以对与知识库集成的 SharePoint 连接器进行身份验证和授权访问 SharePoint资源。

### Pre-requisites
<a name="sharepoint-connector-oauth-prereq"></a>

**在中 SharePoint，对于 OAuth 2.0 身份验证，请确保**：
+ 记下您的 SharePoint 在线网站 URL/URLs。例如 {{https://yourdomain.sharepoint.com/sites/mysite}}。您的 URL 必须以 {{https}} 开头并包含 {{sharepoint.com}}。您的网站网址必须是实际 SharePoint 网站，而不是{{sharepoint.com/}}或 {{sites/mysite/home.aspx}}
+ 记下您的 SharePoint 在线实例的域名 URL/URLs。
+ 复制您的 Microsoft 365 租户 ID。在 Microsoft Entra 门户的“属性”或 OAuth 应用程序中，可以找到您的租户 ID。

  请记下管理员 SharePoint帐户的用户名和密码，并在注册应用程序时复制客户端 ID 和客户端密钥值。
**注意**  
有关示例应用程序，请参阅 Microsoft Learn 网站上的[在 Microsoft Entra ID 中注册客户端应用程序](https://learn.microsoft.com/en-us/azure/healthcare-apis/register-application)（Microsoft Entra ID 以前称为 Azure Active Directory）。
+ 注册应用程序 SharePoint 时，需要某些读取权限才能连接。
  + SharePoint: AllSites.Read （已授权）-读取所有网站集中的项目
+ 您可能需要使用管理员用户在 Azure 门户中停用**安全默认值**。有关在 Azure 门户中管理安全默认设置的更多信息，请参阅 [Microsoft 关于如何设置 enable/disable 安全默认设置的文档](https://learn.microsoft.com/en-us/microsoft-365/business-premium/m365bp-conditional-access?view=o365-worldwide&tabs=secdefaults#security-defaults-1)。
+ 您可能需要关闭账户中的多重身份验证 (MFA)，以免阻止 Amazon Bedrock 抓取 SharePoint 您的内容。 SharePoint 

要完成先决条件，请确保您已完成[AWS 账户](#prerequisites-sharepoint-connector-account) 中的步骤。

### 密钥身份验证凭证
<a name="sharepoint-secret-auth-credentials-oauth"></a>

对于的连接配置 OAuth2.0，您可以执行与自动检测主文档字段、 inclusion/exclusion 筛选器和增量同步相同的步骤，如中所[连接配置](#configuration-sharepoint-connector)述。

**对于 OAuth 2.0 身份验证，您在中的秘密身份验证凭据AWS Secrets Manager必须包含这些键值对**。
+ `username`: {{SharePoint admin username}}
+ `password`: {{SharePoint admin password}}
+ `clientId`: {{OAuth app client ID}}
+ `clientSecret`: {{OAuth app client secret}}

### 将 SharePoint 实例连接到您的知识库
<a name="sharepoint-connector-oauth-using"></a>

要在使用时将 SharePoint 实例连接到知识库，请执行 OAuth2.0以下操作：
+ （控制台）在控制台中，按照将[ SharePoint 实例连接到知识库中所述的](https://docs.aws.amazon.com/bedrock/latest/userguide/sharepoint-data-source-connector.html#connect-sharepoint-console)相同步骤进行操作。当您想提供身份验证信息以连接到您的 SharePoint 实例时。
  + 提供租户 ID。您可以在 Azure Active Directory 门户的“属性”中找到租户 ID。
  + AWS Secrets Manager前往添加您的秘密身份验证凭证，或者使用您创建的密钥的现有 Amazon 资源名称 (ARN)。您的密钥必须包含 SharePoint 管理员用户名和密码，以及您注册的应用程序客户端 ID 和客户端密钥。有关示例应用程序，请参阅 Microsoft Learn 网站上的[在 Microsoft Entra ID 中注册客户端应用程序](https://learn.microsoft.com/en-us/azure/healthcare-apis/register-application)（Microsoft Entra ID 以前称为 Azure Active Directory）。
+ (API) 以下是使用 `CreateDataSource` API 创建数据源的示例，其中包含您的连接信息 OAuth2.0。

  ```
  aws bedrock-agent create-data-source \
   --name "SharePoint Online connector" \
   --description "SharePoint Online data source connector for Amazon Bedrock to use content in SharePoint" \
   --knowledge-base-id "your-knowledge-base-id" \
   --data-source-configuration file://sharepoint-bedrock-connector-configuration.json \
   --data-deletion-policy "DELETE"
  ```

  **`sharepoint-bedrock-connector-configuration.json` 的内容**

  ```
  {
      "sharePointConfiguration": {
          "sourceConfiguration": {
              "tenantId": "888d0b57-69f1-4fb8-957f-e1f0bedf64de",
              "hostType": "ONLINE",
              "domain": "yourdomain",
              "siteUrls": [
                  "https://yourdomain.sharepoint.com/sites/mysite"
              ],
              "authType": "OAUTH2_CLIENT_CREDENTIALS",
              "credentialsSecretArn": "arn:aws::secretsmanager:your-region:secret:AmazonBedrock-SharePoint"
          },
          "crawlerConfiguration": {
              "filterConfiguration": {
                  "type": "PATTERN",
                  "patternObjectFilter": {
                      "filters": [
                          {
                              "objectType": "File",
                              "inclusionFilters": [
                                  ".*\\.pdf"
                              ],
                              "exclusionFilters": [
                                  ".*private.*\\.pdf"
                              ]
                          }
                      ]
                  }
              }
          }
      },
      "type": "SHAREPOINT"
  }
  ```