为代理配置数据丢失防护策略

组织数据是管理员负责保护的最重要的资产。 构建自动化以使用该数据的能力在公司的成功中占很大一部分。

您可以为最终用户快速构建和推出高价值代理。 您可以将代理与许多数据源和服务连接。 其中一些资源和服务可能是外部非 Microsoft 服务,甚至可能包括一些社交网络。

人们很容易忽视泄露的可能性。 这种暴露可能是由于数据泄漏或与不应访问数据的服务和访问群体的连接造成的。

管理员可以使用具有现有连接器和 Copilot Studio 连接器的数据丢失防护(DLP)策略来管理组织中的代理。 DLP 策略是在 Power Platform 管理中心创建的。 若要创建 DLP 策略,您必须是租户管理员或具有环境管理员角色

先决条件

Copilot Studio 连接器

Copilot Studio 连接器可以在 DLP 策略中归入到以下数据组中,在查看 DLP 策略时,这些数据组会显示在 Power Platform 管理中心中:

  • 企业
  • 非业务
  • 已屏蔽

您可以使用 DLP 策略中的连接器来保护组织的数据,防止代理制作者泄露任何恶意或无意的数据。

重要提示

默认情况下,所有租户中都禁用代理的 DLP 强制实施。 了解如何 启用强制执行

连接器需要位于单个数据组中,因为无法在不同组中的连接器之间共享数据。

Power Platform 管理中心提供多个 Copilot Studio 连接器。 这些连接器可以按如下方式配置 DLP:

连接器名称 Description
Copilot Studio 中的 Application Insights 阻止代理制作者 连接代理 Application Insights
在 Copilot Studio 中无需 Microsoft Entra ID 身份验证即可聊天 阻止代理制作者发布未配置身份验证的代理。
代理用户必须对自己 进行身份验证才能与代理聊天。
有关更多信息,请参阅 数据丢失防护示例 - 要求在代理中进行最终用户身份验证。
Copilot Studio 中的 Direct Line 渠道 阻止代理制作者启用或使用 Direct Line 渠道。
例如,演示网站、自定义网站和其他 Direct Line 渠道将被阻止。
Copilot Studio 中的 Facebook 渠道 阻止代理制作者启用或使用 Facebook 渠道。
Copilot Studio 中包含 SharePoint 和 OneDrive 的知识源 阻止代理制作者发布配置为 SharePoint 知识源的代理。 支 持DLP 连接器端点筛选以允许或拒绝端点。
Copilot Studio 中包含公共网站和数据的知识源 阻止代理制作者发布配置了公共网站作为知识源的代理。 支 持DLP 连接器端点筛选以允许或拒绝端点。
Copilot Studio 中的文档知识来源 阻止代理制作者发布将文档配置为知识源的代理。
Copilot Studio 中的 Microsoft Teams 渠道 阻止代理制作者启用或使用 Teams 渠道。
Copilot Studio 中的全渠道 阻止代理制作者启用或使用全渠道渠道。
Copilot Studio 技能 阻止代理制作者在代理中使用 Copilot Studio 技能。
有关更多信息,请参阅 数据丢失防护示例 - 阻止代理 中的技能和 数据丢失防护示例 - 阻止代理中的 HTTP 请求。
事件触发器与 Copilot Studio 阻止代理制作者在代理中使用 Copilot Studio 事件触发器。
有关更多信息,请参阅 数据丢失防护示例 - 阻止代理中的事件触发器。

示例 DLP 策略配置

为了帮助您开始使用 Copilot Studio 代理治理,我们创建了以下示例来详细说明不同的场景:

使用 PowerShell 为组织中的代理启用和管理 DLP 实施

您可以使用 and PowerAppDlpErrorSettings PowerShell cmdlet 配置是否应将 PowerVirtualAgentsDlpEnforcement DLP 策略应用于代理。

您可以:

  • 确认是否为租户中的代理启用了 DLP。
  • 在审核模式下启用或禁用 DLP(-Mode SoftEnabled),以便代理制作者可以看到错误,但不会阻止他们执行在完全启用 DLP 实施时将被阻止的操作。
  • 启用或禁用 DLP 实施,以显示 DLP 实施错误,并防止代理制作者发布受 DLP 影响的机器人或配置 DLP 相关设置。
  • 将特定代理从 DLP 实施中免除。
  • 添加和更新向代理制作者在 Web 和 Teams 应用中遇到 DLP Copilot Studio 时显示的了解更多和联系人电子邮件链接。

重要提示

在使用 PowerShell cmdlet 或此处所示的示例脚本之前,确保使用 PowerShell 安装以下模块

  • Microsoft.PowerApps.Administration.PowerShell
  • Microsoft.PowerApps.PowerShell -AllowClobber

您需要是租户管理员才能使用 cmdlet。

通常,您将根据 DLP 推出流程使用这些 cmdlet,此流程可能包括以下步骤(按顺序):

  1. 添加或更新在代理制作者的 DLP 错误中显示的了解更多和管理员联系人电子邮件链接。

  2. 确定当前启用了 DLP 策略实施的代理(如果有)。

  3. 使用审核或“软”模式,让制作者可以在 Copilot Studio Web 和 Teams 应用中看到 DLP 错误。

  4. 联系制作者并告知他们有关其应用或流的最佳操作过程来缓解风险。

  5. 为代理启用 DLP 强制,以防止受 DLP 影响的任务和功能。

您可能还决定将一个或多个代理从 DLP 策略实施中免除,具体取决于代理的使用案例和要求。

您可以使用 Set-PowerAppDlpErrorSettings PowerShell cmdlet 配置电子邮件和了解更多信息链接。 您的代理制作者在遇到 DLP 错误时将看到此信息。

Copilot Studio Web 应用的屏幕截图,显示与 DLP 相关的错误,突出显示错误文本

如果是第一次添加电子邮件和了解更多信息链接,运行以下 PowerShell 脚本,将 <email><URL><tenant ID> 参数的值替换为您自己的值。

$ContactDetails = [pscustomobject] @{
    Enabled=$true
    Email="<email>"
}
$ErrorMessageDetails = [pscustomobject] @{
    Enabled=$true
    Url="<URL>"
}
$ErrorSettingsObj = [pscustomobject] @{
    ErrorMessageDetails=$ErrorMessageDetails
    ContactDetails=$ContactDetails
}
New-PowerAppDlpErrorSettings -TenantId "<tenant ID>" -ErrorSettings $ErrorSettingsObj

要更新现有配置,使用相同的 PowerShell 脚本,将 New-PowerAppDlpErrorSettings 替换为 Set-PowerAppDlpErrorSettings

注意

这些设置适用于指定租户内的所有 Power Platform 应用。

为代理启用和配置 DLP 实施

您可以使用 PowerVirtualAgentsDlpEnforcement cmdlet 在 Copilot Studio 中启用、禁用、配置和审核 DLP 执行。

在以下任意示例中,用您的租户的 ID 替换(或声明)<tenant ID>

您可以通过替换 <date> 格式中的 MM-DD-YYYY日期,将范围限定为在特定日期之后创建的代理。 要删除划定的范围,删除 -OnlyForBotsCreatedAfter 参数及其值。

确认代理的 DLP 强制实施

默认情况下,所有租户中都禁用代理的 DLP 强制实施。

您可以运行以下 PowerShell cmdlet 来检查是否为租户启用了 Copilot Studio 的 DLP。

Get-PowerVirtualAgentsDlpEnforcement -TenantId <tenant ID>

备注

如果您尚未配置 Copilot Studio DLP,cmdlet 的结果将为空。

使用审核或“软”模式可以在 Copilot Studio Web 或 Teams 应用中查看 DLP 错误

在审核模式下运行以下 PowerShell 脚本启用 DLP 策略。 代理制作者在 Web 和 Teams 应用程序中配置代理 Copilot Studio 时将看到与 DLP 相关的错误,但不会阻止他们执行与 DLP 相关的操作。 此外,启用软 模式时 ,制作者无法发布代理。

Set-PowerVirtualAgentsDlpEnforcement -TenantId <tenant ID> -Mode SoftEnabled

要查找可能受组织现有 DLP 策略影响的代理,您可以:

  1. 使用卓越中心(CoE)初学者工具包 获取组织中的代理列表。 转到 CoE 控制板上的 Copilot Studio 概述页面,查看组织中的代理和环境名称。

    打开到 Copilot Studio 概览的初学者工具包仪表板的屏幕截图。

  2. 与组织中的代理制作者一起开展活动,以解决 DLP 错误或更新的 DLP 策略。 您可以通过选择 错误通知横幅中的 Details(详细信息 ),然后从错误消息详细信息中选择 Download(下载 )来下载所有代理 DLP 错误。

为代理启用 DLP 实施

重要提示

在启用 DLP 实施之前,请确保您知道哪些代理会因违反 DLP 策略而向代理用户显示错误。

如果您遇到问题,可以从 DLP 策略中免除代理或禁用 DLP 实施,同时制作者修复代理以符合 DLP 策略。

您可以运行以下 PowerShell 命令在 Copilot Studio 中执行 DLP 策略。 代理制作者将无法执行受 DLP 影响的操作,如果最终用户扳机键,他们将看到错误。

Set-PowerVirtualAgentsDlpEnforcement -TenantId <tenant ID> -Mode Enabled -OnlyForBotsCreatedAfter <date>

从 DLP 策略中免除机器人

如果您已为租户启用了 DLP 实施,但需要免除代理向制作者和用户显示 DLP 错误,则可以运行以下 PowerShell 脚本。

请确保将、、 <environment ID> <bot ID><tenant ID>替换为 <policy ID> 要豁免的代理的相应 ID。

小费

您可以从代理的 URL 中找到 <environment ID> and <bot ID>

<policy ID> 会与下载详细信息文件中的错误详细信息一起列出。 您可以通过在 Copilot Studio 中的错误通知横幅上选择下载详细信息来下载该文件。

$environmentId = "<environment ID>" 
$botId = "<bot ID>"; 
$tenantId = "<tenant ID>" 
$policyName = "<policy ID>"

# Ensure the DLP commands are installed
if (-not (Get-Command "Get-PowerAppDlpPolicyExemptResources" -ErrorAction SilentlyContinue))
{
    Write-Host "Please ensure the Power Apps DLP commands are available: https://docs.microsoft.com/power-platform/admin/powerapps-powershell#environments-commands" -ForegroundColor Red
    return;
}
# Set up the PVA resource information
$pvaResourceId = "$environmentId+$botId"
$pvaResourceType = "Bot"
$exemptBot = [pscustomobject]@{
                id = $pvaResourceId
                type = $pvaResourceType
              }
Write-Host "Getting exempt resources"
$resources = Get-PowerAppDlpPolicyExemptResources -TenantId $tenantId -PolicyName $policyName
if (-not $resources)
{
    $resources = [pscustomobject]@{  exemptResources = @($exemptBot) }
    Write-Host "No exempt resources configured yet"
}
$resources = New-PowerAppDlpPolicyExemptResources -TenantId $tenantId -PolicyName $policyName -NewDlpPolicyExemptResources $resources
Write-Host "Added bot to exempt resources"

为代理禁用 DLP 强制实施

以下命令将在代理中禁用 DLP 强制。

Set-PowerVirtualAgentsDlpEnforcement -TenantId <tenant ID> -Mode Disabled