

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

# 连接 ServiceNow 数据源
<a name="kb-managed-ds-servicenow-connect"></a>

设置身份验证并将凭据存储在 AWS Secrets Manager 密钥中后，在知识库中创建 ServiceNow 数据源。本页介绍如何使用 AWS 管理控制台 或 API 创建数据源，然后介绍您可以配置的连接器参数。

**注意**  
首先完成身份验证设置。请参阅[为设置 OAuth 2.0 客户端凭据身份验证 ServiceNow](kb-managed-servicenow-oauth2-setup.md)。你需要秘密的 ARN。

## 创建数据源
<a name="kb-managed-ds-servicenow-create"></a>

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

**ServiceNow 连接到您的托管知识库**

1. 在以下位置打开亚马逊 Bedrock 控制台。[ https://console.aws.amazon.com/bedrock/ ](https://console.aws.amazon.com/bedrock/)在导航窗格中，选择**知识库**并打开您的托管知识库。

1. 在 “**数据源” 下**，为您的数据源提供一个名称。

1. 从**数据源类型**列表中选择**ServiceNow**。

1. 对于**主机 URL**，输入您的 ServiceNow实例 URL（例如，`https://{{INSTANCE}}.service-now.com`）。

1. 在 “**身份验证” 下**，选择或创建包含您的`clientId``clientSecret`、和的 AWS Secrets Manager 密钥`instanceUrl`。

1. 在 “**同步范围” 下**，选择要抓取的内容：知识文章、服务目录项及其附件。您还可以选择是否抓取非活动服务目录项目，以及是否将抓取限制为仅限于公共知识文章。

1. （可选）要限制抓取，请添加知识库、知识文章类别或服务目录筛选器。

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

要创建 ServiceNow 数据源，请使用适用于 Amazon Bedrock 构建时终端节点的代理发送[CreateDataSource](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateDataSource.html)请求。以下 AWS Command Line Interface 示例创建了一个 ServiceNow 数据源。有关每个字段的描述，请参阅随后的连接器参数参考。

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

该`servicenow-managed-connector.json`文件包含以下内容：

```
{
    "type": "MANAGED_KNOWLEDGE_BASE_CONNECTOR",
    "managedKnowledgeBaseConnectorConfiguration": {
        "connectorParameters": {
            "type": "SERVICENOW",
            "connectorType": "SERVICENOW",
            "version": "1",
            "connectionConfiguration": {
                "secretArn": "{{arn:aws:secretsmanager:us-west-2:123456789012:secret:bedrock-servicenow-creds}}",
                "authType": "OAUTH2",
                "hostUrl": "https://{{INSTANCE}}.service-now.com"
            },
            "dataEntityConfiguration": {
                "crawlKnowledgeArticles": true,
                "crawlServiceCatalogs": true,
                "crawlKnowledgeArticleAttachments": true,
                "crawlServiceCatalogAttachments": true,
                "crawlInactiveServiceCatalogItems": false,
                "crawlPublicKnowledgeArticlesOnly": false
            },
            "filterConfiguration": {
                "knowledgeArticleFilter": {
                    "inclusionKnowledgeBaseSysIds": ["{{optional-kb-sys-id}}"],
                    "inclusionKnowledgeArticleCategorySysIds": []
                },
                "serviceCatalogFilter": {
                    "inclusionServiceCatalogSysIds": [],
                    "inclusionServiceCatalogCategorySysIds": []
                },
                "maxFileSizeInMegaBytes": "500"
            }
        }
    }
}
```

这些`dataEntityConfiguration`字段控制连接器爬行哪些实体。该`filterConfiguration`字段是可选的；使用它可以将抓取范围限定为特定的知识库、知识文章类别或服务目录，并设置最大文件大小。如果没有过滤器，连接器会抓取所有活跃的知识文章和服务目录项目。

对于托管知识库，`CreateDataSource`是异步的：操作完成后，数据源状态从过渡`CREATING`到`AVAILABLE`。

------

## 连接器参数
<a name="kb-managed-config-servicenow"></a>

数据源配置使用以下连接器参数。在内部`connectorParameters`，将`type`和设置`connectorType`为，`SERVICENOW`并设置`version`为`1`。有关换行字段`connectorParameters`（例如`deletionProtectionConfiguration`和`mediaExtractionConfiguration`），请参阅[连接数据来源](kb-managed-connect-ds.md)。

下表描述了这些`connectionConfiguration`字段。


**connectionConfiguration**  

| 字段 | 必填 | 描述 | 
| --- | --- | --- | 
| secretArn | 是 | 包含您的clientId、clientSecret和 AWS Secrets Manager instanceUrl的机密的 ARN。 | 
| hostUrl | 是 | 您的 ServiceNow 实例 URL（例如https://{{INSTANCE}}.service-now.com）。 | 
| authType | 是 | 身份验证类型。 ServiceNow 支持OAUTH2。请参阅[身份验证方法](kb-managed-ds-servicenow.md#kb-managed-servicenow-auth-methods)。 | 

下表描述了控制连接器爬网实体的`dataEntityConfiguration`字段。


**数据 EntityConfiguration**  

| 字段 | 必填 | 描述 | 
| --- | --- | --- | 
| crawlKnowledgeArticles | 是 | 是否抓取知识文章 (kb\_knowledge)。 | 
| crawlServiceCatalogs | 是 | 是否抓取服务目录项目 (sc\_cat\_item)。 | 
| crawlKnowledgeArticleAttachments | 是 | 是否抓取知识文章上的附件。 | 
| crawlServiceCatalogAttachments | 是 | 是否抓取服务目录项上的附件。 | 
| crawlInactiveServiceCatalogItems | 是 | 是否抓取非活动服务目录项目。 | 
| crawlPublicKnowledgeArticlesOnly | 是 | 是否将抓取限制为仅限于公共知识文章。 | 

下表描述了可选`filterConfiguration`字段，这些字段用于搜索范围。


**过滤器配置（可选）**  

| 字段 | 必填 | 说明 | 
| --- | --- | --- | 
| knowledgeArticleFilter | 否 | 范围知识文章抓取。包含inclusionKnowledgeBaseSysIds（知识库系统 ID 列表）和inclusionKnowledgeArticleCategorySysIds（知识文章类别系统 ID 列表）。 | 
| serviceCatalogFilter | 否 | Scopes 服务目录抓取。包含inclusionServiceCatalogSysIds（服务目录系统 ID 列表）和inclusionServiceCatalogCategorySysIds（服务目录类别系统 ID 列表）。在大型实例上，按系统 ID 筛选可显著缩短同步时间。 | 
| maxFileSizeInMegaBytes | 否 | 连接器接收的任何单个文件的最大大小（以兆字节为单位）。以数字字符串形式提供（例如，"500"）。 | 

## 后续步骤
<a name="kb-managed-ds-servicenow-connect-next"></a>

创建数据源后，将其同步以将内容摄取到您的知识库中。有关更多信息，请参阅 [同步数据来源](kb-managed-sync.md)。由于 ServiceNow 不支持文档级访问控制，因此所有能够查询知识库的经过身份验证的用户都可以看到所有抓取的内容。