

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

# 微软 OneDrive 连接器 V1.0
<a name="data-source-v1-onedrive"></a>

Microsoft OneDrive 是一项基于云的存储服务，你可以用它来存储、共享和托管你的内容。你可以使用索引你 Amazon Kendra 的 Microsoft OneDrive 数据源。

**注意**  
对 OneDrive 连接器 V1.0/Microsft OneDrive API 的支持计划于 2023 年 6 月结束。我们建议使用 OneDrive 连接器 V2.0/ TemplateConfiguration API。

要对 Amazon Kendra OneDrive 数据源连接器进行故障排除，请参阅[数据来源故障排除](troubleshooting-data-sources.md)。

**Topics**
+ [支持的功能](#supported-features-v1-onedrive)
+ [先决条件](#prerequisites-v1-onedrive)
+ [连接说明](#data-source-v1-procedure-onedrive)

## 支持的功能
<a name="supported-features-v1-onedrive"></a>
+ 字段映射
+ 包含/排除筛选条件

## 先决条件
<a name="prerequisites-v1-onedrive"></a>

在使用索 Amazon Kendra 引 OneDrive 数据源之前，请在 OneDrive 和 AWS 帐户中进行这些更改。

**在 Azure Active Directory（AD）中，请确保：**
+ 已创建 Azure Active Directory（AD）应用程序
+ 使用 AD 应用程序 ID 在 AD 站点上注册应用程序的密钥。该密钥必须包含应用程序 ID 和密钥。
+ 已复制组织的 AD 域。
+ 在 Microsoft Graph 选项上为您的 AD 应用程序添加了以下应用程序权限：
  + 读取所有网站集中的文件（File.Read.All）
  + 阅读所有用户的完整个人资料（User.Read.All）
  + 读取目录数据（Directory.Read.All）
  + 阅读所有组（Group.Read.All）
  + 阅读所有网站集中的项目（Site.Read.All）
+ 复制必须为其文档编制索引的用户列表。您可以选择提供用户名列表，也可以在存储在 Amazon S3中的文件中提供用户名。创建数据来源后，您可以：
  + 修改用户列表。
  + 从用户列表更改为存储在存储 Amazon S3 桶中的列表。
  + 更改用户列表的 Amazon S3 存储桶位置。如果您更改存储桶位置，则还必须更新数据源的 IAM 角色，使其能够访问存储桶。
**注意**  
如果您将用户名列表存储在 Amazon S3 存储桶中，则数据源的 IAM 策略必须提供对存储桶的访问权限以及对存储桶加密时使用的密钥（如果有）的访问权限。
+ 已选中每个文档在您计划用于同一索引的其他数据源中 OneDrive 以及其他数据源中都是唯一的。您要用于编制索引的每个数据来源在所有数据来源中都不能包含相同的文档。文档对索引来说 IDs 是全局的，并且每个索引必须是唯一的。

**在你的 AWS 账户，请确保你有：**
+ [已创建 Amazon Kendra 索引](https://docs.aws.amazon.com/kendra/latest/dg/create-index.html)，如果使用 API，则记下索引 ID。
+ 为您的数据源@@ [创建了一个 IAM 角色](https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html#iam-roles-ds)，如果使用 API，请记下该角色的 ARN。 IAM 
**注意**  
如果您更改了身份验证类型和证书，则必须更新您的 IAM 角色才能访问正确的 AWS Secrets Manager 密钥 ID。
+ 将您的 OneDrive 身份验证凭证存储在 AWS Secrets Manager 密钥中，如果使用 API，请记下该密钥的 ARN。
**注意**  
我们建议您定期刷新或轮换您的凭证和密码。为了安全起见，请仅提供必要的访问权限级别。我们建议**不要**跨数据来源以及连接器版本 1.0 和 2.0（如果适用）重复使用凭证和密钥。

如果您没有现有的 IAM 角色或密钥，则可以在将 OneDrive 数据源连接到时使用控制台创建新的 IAM 角色和 Secrets Manager 密钥 Amazon Kendra。如果您使用的是 API，则必须提供现有 IAM 角色和 Secrets Manager 密钥的 ARN 以及索引 ID。

## 连接说明
<a name="data-source-v1-procedure-onedrive"></a>

要 Amazon Kendra 连接到您的 OneDrive 数据源，您必须提供 OneDrive 凭据的详细信息， Amazon Kendra 以便访问您的数据。如果您尚未进行配置， OneDrive 请参 Amazon Kendra 阅[先决条件](#prerequisites-v1-onedrive)。

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

**要连接 Amazon Kendra 到 OneDrive** 

1. 登录 AWS 管理控制台 并打开[Amazon Kendra 控制台](https://console.aws.amazon.com/kendra/)。

1. 在左侧导航窗格中，选择**索引**，然后从索引列表中选择要使用的索引。
**注意**  
您可以选择在**索引设置**下配置或编辑您的**用户访问控制**设置。

1. 在**开始使用**页面上，选择**添加数据来源**。

1. 在**添加数据来源**页面上，选择 **OneDrive 连接器**，然后选择**添加连接器**。如果使用版本 2（如果适用），请选择带有“V2.0”标签的 **OneDrive 连接器**。

1. 在**指定数据来源详细信息**页面上，输入以下信息：

   1. 在**名称和描述**中，在**数据来源名称**中输入您的数据来源的名称。可以包含连字符，但不能包含空格。

   1. （可选）**描述**：输入数据来源的描述信息。

   1. 在**默认语言**中，选择用于筛选文档以编制索引的语言。除非另行指定，否则语言默认为英语。在文档元数据中指定的语言会覆盖所选语言。

   1. 在**标签**中，用于**添加新标签**-包括可选标签以搜索和筛选您的资源或跟踪您的 AWS 成本。

   1. 选择**下一步**。

1. 在**定义访问权限和安全性**页面上，请输入以下信息：

   1. **OneDrive 租户 ID**-输入不带协议的 OneDrive 租户 ID。

   1. **身份验证类型** - 选择**新建**或**现有**。

   1. 

      1. 如果您选择**现有**，请为**选择密钥**选择现有密钥。

      1. 如果您选择**新建**，请在**新的 AWS Secrets Manager 密钥**部分中输入以下信息：

         1. **密钥名称** - 密钥的名称。前缀 “AmazonKendra-OneDrive-” 会自动添加到您的密钥名称中。

         1. 对于**应用程序 ID** 和**应用程序密码**-输入您 OneDrive 帐户中的身份验证凭据值，然后选择**保存**身份验证。

   1. **IAM 角色**-选择现有 IAM 角色或创建新 IAM 角色来访问您的存储库凭据和索引内容。
**注意**  
IAM 用于索引的角色不能用于数据源。如果您不确定是否将现有角色用于编制索引或常见问题解答，为了避免出错，请选择**创建新角色**。

   1. 选择**下一步**。

1. 在**配置同步设置**页面上，请输入以下信息：

   1. 根据您的使用案例，选择**列表文件**和**名称列表**。

      1. 如果选择**列表文件**，请输入以下信息：

         1.  **选择位置** - 输入 Amazon S3 存储桶的路径。

            **将用户列表文件添加到 Amazon S3**-选择将您的用户列表文件添加到您的 Amazon S3 存储桶。

            **用户本地组映射** - 选择使用本地组映射来筛选您的内容。

      1. 如果选择**名称列表**，请输入以下信息：

         1.  **用户名** - 输入最多 10 个要索引的用户驱动器。要添加 10 个以上的用户，请创建一个包含用户名的文件。

            **添加另一个** - 选择添加更多用户。

            **用户本地组映射** - 选择使用本地组映射来筛选您的内容。

   1. 对于**其他配置** - 添加正则表达式模式以包含或排除某些文件。最多可以添加 100 个模式。

   1. 在 “**同步运行计划**” 中，“**频率**”-选择与数据源同步的频率。 Amazon Kendra 

   1. 选择**下一步**。

1. 在**设置字段映射**页面上，请输入以下信息：

   1. 对于**默认数据源字段****和其他建议的字段映射**-从 Amazon Kendra 生成的默认数据源字段中选择要映射到索引的字段。

   1. 选择**下一步**。

1. 在**查看和创建**页面上，请检查输入的信息是否正确，然后选择**添加数据来源**。您也可以选择在此页面上编辑信息。成功添加数据来源后，您的数据来源将显示在**数据来源**页面上。

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

**要连接 Amazon Kendra 到 OneDrive**

您必须使用 [OneDriveConfiguration](https://docs.aws.amazon.com/kendra/latest/APIReference/API_OneDriveConfiguration.html)API 指定以下内容：
+ **租户 ID** - 指定组织的 Azure Active Directory 域。
+ **OneDrive 用户**-指定应为其文档编制索引的用户帐户列表。
+ **亚马逊秘密资源名称 (ARN)**-提供包含您账户身份验证凭证的 Secrets Manager 密钥的亚马逊资源名称 (ARN)。 OneDrive 密钥必须使用具有以下键的 JSON 结构存储：

  ```
  {
      "username": "OAuth client ID",
      "password": "client secret"
  }
  ```
+ **IAM ro** le —指定`RoleArn`何时调用`CreateDataSource`以向 IAM 角色提供访问您的 Secrets Manager 密钥的权限以及调用 OneDrive 连接器 APIs 所需的公众的权限，以及 Amazon Kendra。有关更多信息，请参阅 [ OneDrive S3 数据来源的IAM 角色](https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html#iam-roles-ds)。

您还可以添加以下可选功能：
+  **包含和排除筛选条件** - 指定是包含还是排除文档。
**注意**  
大多数数据来源使用正则表达式模式，即称为筛选条件的包含或排除模式。如果您指定包含筛选条件，则只会为与包含筛选条件匹配的内容编制索引。不会为任何与包含筛选条件不匹配的文档编制索引。如果您指定包含和排除筛选条件，则不会为与排除筛选条件匹配的文档编制索引，即使它们与包含筛选条件相匹配。
+  **字段映射** - 选择将 OneDrive 数据来源字段映射到 Amazon Kendra 索引字段。有关更多信息，请参阅[映射数据来源字段](https://docs.aws.amazon.com/kendra/latest/dg/field-mapping.html)。
**注意**  
要搜索您的文档，必须输入文档正文字段或文档正文等效字段。 Amazon Kendra 您必须将数据来源中的文档正文字段名映射到索引字段名称 `_document_body`。其他所有字段均为可选字段。
+  **用户上下文筛选和访问控制** – 如果文档有 ACL，则Amazon Kendra 会爬取文档的访问控制列表（ACL）。ACL 信息用于根据用户或其所在组对文档的访问权限来筛选搜索结果。有关更多信息，请参阅[用户上下文筛选](https://docs.aws.amazon.com/kendra/latest/dg/user-context-filter.html#datasource-context-filter)。

------