

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

# Document-level 访问控制
<a name="sharepoint-kb-acl"></a>

Admin-managed SharePoint 知识库可以选择支持文档级访问控制。启用后，Amazon Quick 将在每次抓取 SharePoint 期间同步访问控制列表 (ACL)。系统会在查询时验证每个用户的权限，因此用户只能看到他们有权访问的文档中的 SharePoint答案。

## 工作原理
<a name="sharepoint-kb-acl-how-it-works"></a>

当用户查询使用管理员管理的 SharePoint 知识库且启用 ACL 管理的 Amazon Quick 代理时，系统会分两个阶段实施访问控制：

1. **Pre-retrieval 筛选** — Amazon Quick 对向量索引执行语义搜索，以找到最相关的文档段落。系统会应用上次爬网 SharePoint 时同步的访问控制列表。这将生成一套初步的候选人文件。

1. **Real-time 验证** — 系统通过检查查询用户的当前访问权限来实时验证候选文档。 SharePoint响应中仅包含用户当前有权访问的文档。

这种两阶段方法提供了文档级访问控制，即使 SharePoint 权限在两次同步之间发生变化，该控制也能保持最新状态。

## 启用 ACL 管理
<a name="sharepoint-kb-acl-enable"></a>

ACL 管理是在知识库创建期间在 **“其他设置”** 步骤中配置的。选中 “**使用 ACL 控制文档访问权限**” 复选框将其启用。

**重要**  
创建知识库后，无法更改 ACL 管理。如果需要更改此设置，则必须创建新的知识库。

要启用 ACL 管理，您的 Entra 应用程序注册必须具有以下权限：
+ `User.Read.All`还有`GroupMember.Read.All`在微软 Graph 上。
+ `Sites.FullControl.All`在 SharePoint 资源上，或者授予每个站点`Sites.Selected`的权限。

有关 ACL 最佳实践的更多信息，请参阅[知识库中管理 ACL 的最佳实践](acl-best-practices-kb.md)。

## Real-time 访问验证
<a name="sharepoint-kb-acl-realtime"></a>

实时验证阶段使用由 Amazon Quick 自动管理的委托 OAuth 流程。Quick 专门为此目的创建和管理一个单独的 Microsoft Entra 应用程序。此应用程序不需要客户配置。它不同于您在设置期间创建的管理员管理的应用程序注册和任何用户管理的 OAuth 应用程序。

1. 用户在快速聊天助手中提问。

1. 如果答案涉及 ACL-enabled知识库中的 SharePoint 内容，Quick 会提示用户**登录 SharePoint**。

1. 用户登录并接受 Microsoft 同意对话框（如果未获得管理员同意）。

1. Quick 使用用户的委托令牌实时验证对每个候选文档的访问权限。

1. 响应中仅包含用户当前有权访问的文档。 SharePoint

登录是一次性步骤。委托的凭证使用刷新令牌，持续时间约为 90 天。

### 委托权限
<a name="sharepoint-kb-acl-realtime-permissions"></a>

实时 ACL 应用程序请求以下委托权限：


**Real-time ACL — 委派权限**  

| 权限 | Scope | 用途 | 
| --- | --- | --- | 
| 阅读所有网站集中的项目 | Sites.Read.All | 验证用户对 SharePoint 网站内容的访问权限。 | 
| 阅读你的文件 | Files.Read.All | 验证用户对特定文件的访问权限。 | 
| 查看您的基本个人资料 | User.Read | 识别已登录的用户。 | 
| 保持对您授予访问权限的数据的访问权限 | offline\_access | 刷新令牌，这样用户就无需频繁地重新进行身份验证。 | 

### 管理员同意
<a name="sharepoint-kb-acl-admin-consent"></a>

实时 ACL 检查使用单独的 Microsoft Entra 应用程序，与用户管理的设置或管理员管理的应用程序注册中使用的应用程序不同。如果您的组织需要管理员同意，则管理员必须为每个应用程序单独授予同意。

当您在知识库创建期间启用 ACL 管理时，Amazon Quick 控制台会提供授予管理员同意的直接链接。此链接适用于实时 ACL 应用程序。如果你是 Microsoft 365 管理员，则可以直接从控制台授予同意。否则，请与您的管理员共享该链接。

如果未获得管理员同意，则每位用户都会在第一次查询 SharePoint 内容时看到同意对话框。接受后，他们将在大约 90 天内不会再收到提示。

有关通过同意对话框或 Microsoft Entra 管理中心授予管理员同意的详细说明，请参阅[授予全组织管理员同意](sharepoint-kb-user-managed.md#entra-admin-consent)。

## 后续步骤
<a name="sharepoint-kb-acl-next-steps"></a>

有关 ACL 最佳实践的更多信息，请参阅[知识库中管理 ACL 的最佳实践](acl-best-practices-kb.md)。有关创建管理员管理的 SharePoint 知识库的信息，请参阅。[Admin-managed 设置（服务凭证）](sharepoint-kb-admin-managed.md)