响应有关删除 Power Apps 客户数据的数据使用者权限 (DSR) 请求

从组织的客户数据中删除个人数据的“删除权”是欧盟 (EU) 一般数据保护条例 (GDPR) 中的一项关键保护措施。 删除个人数据包括删除系统生成的日志,但不包括审核日志信息。

用户可使用 Power Apps 创建业务线应用程序,后者是企业日常运营的关键组成部分。 用户从组织离职时,您需要手动检查和确定是否要删除该用户创建的特定数据和资源。 只要从 Microsoft Entra 删除了该用户的帐户,都将自动删除其他个人数据。

下面是哪些个人数据将自动删除,哪些数据需要您手动检查和删除的比较明细:

需要手动检查和删除 从 Microsoft Entra 删除了用户时自动删除
环境** 网关
环境权限*** 网关权限
画布应用/自定义页面** Power Apps 通知
区域应用权限 Power Apps 用户设置
连接** Power Apps 用户应用设置
连接权限
自定义连接器**
自定义连接器权限

** 这些资源中每种都包含“创建者”和“修改者”记录,而这些记录中则包含个人数据。 出于安全考虑,这些记录将保留到删除资源为止。

*** 对于包含 Microsoft Dataverse 数据库的环境,环境权限(即哪些用户分派给环境开发者和管理员角色)以记录形式存储在该数据库中。 有关如何响应使用 Dataverse 的 DSR 的指导,请参阅响应 Dataverse 客户数据的数据使用者权限 (DSR) 请求

对于需要手动检查的数据和资源, Power Apps 提供了以下体验,以便重新分派(必要时)或删除特定用户的个人数据:

下面是哪些体验可用于删除其中包含个人数据的每种资源的明细:

包含个人数据的资源 网站访问 PowerShell 访问
Environment Power Platform 管理中心 Power Apps cmdlet
环境权限** Power Platform 管理中心 Power Apps cmdlet
画布应用/自定义页面 Power Platform 管理中心
Power Apps
Power Apps cmdlet
区域应用权限 Power Platform 管理中心 Power Apps cmdlet
连接 应用创建者:可用
管理员:可用
连接权限 应用创建者:可用
管理员:可用
自定义连接器 应用创建者:可用
管理员:可用
自定义连接器权限 应用创建者:可用
管理员:可用

** 由于引入了 Dataverse,所以如果在环境中创建数据库,将把环境权限和模型驱动应用权限以记录的形式存储在该数据库的环境内。 有关如何响应使用 Dataverse 的 DSR 的指导,请参阅响应 Dataverse 客户数据的数据使用者权限 (DSR) 请求

必备条件

对于用户

任何拥有有效 Power Apps 许可证的用户都可以使用 Power Apps适用于应用创建者的 PowerShell cmdlet 执行本文中概述的用户操作。

非托管租户

如果您是非托管租户的成员(即您的 Microsoft Entra 租户没有全局管理员),您可以执行本文中概述的步骤删除自己的个人数据。 但是,由于您的租户没有全局管理员,所以您需要按照步骤 13:从 Microsoft Entra 删除用户中概述的说明从租户删除您自己的帐户。

若要确定您是否是非托管租户的成员,请执行以下步骤:

  1. 在浏览器中打开以下 URL,务必替换该 URL 中您的电子邮件地址:https://login.microsoftonline.com/common/userrealm/name@contoso.com?api-version=2.1

  2. 如果您是非托管租户成员,您将在响应中看到 "IsViral": true

{
  ...
  "Login": "name@unmanagedcontoso.com",
  "DomainName": "unmanagedcontoso.com",
  "IsViral": true,
  ...
}
  1. 否则,您属于托管租户

针对管理员

若要使用 Power Platform 管理中心、Power Automate 管理中心或适用于 Power Apps 管理员的 PowerShell cmdlet 执行本文中概述的管理操作,您需要:

步骤 1:删除或重新分配用户创建的所有环境

作为管理员,您在处理用户创建的每个环境的 DSR 删除请求时,需要作出两项决定:

  1. 如果您确定组织中没有人在使用该环境,可以选择将其删除。

  2. 如果您确定仍然需要该环境,您可以选择不删除该环境,并且将自己(或组织中的其他用户)作为环境管理员添加。

重要提示

删除环境将永久删除其中的所有资源,包括所有应用、流、连接等。所以删除环境前,请检查其中的内容。

授予对用户环境的访问权限

管理员可以通过执行以下步骤授予对环境的管理访问权限:

  1. Power Platform 管理中心,选择一个环境以向您自己或您组织中的另一个用户授予管理员特权。

  2. 如果该环境是由用户通过 DSR 请求创建的,请在访问权限环境管理员下,选择查看全部

选择“环境管理员”、“查看全部”。

删除由用户创建的环境

管理员可以通过以下步骤,查看和删除特定用户创建的环境:

  1. Power Platform 管理中心,选择一个环境。

  2. 如果环境是用户根据 DSR 请求创建的,请选择删除,然后执行步骤删除该环境。

删除环境。

使用 PowerShell 授予用户环境的访问权限

管理员可以使用适用于 Power Apps 管理员的 PowerShell cmdlet中的 Set-AdminPowerAppEnvironmentRoleAssignment 函数为自己(或组织内的其他用户)授予用户创建的所有环境的访问权限:

Add-PowerAppsAccount
$deleteDsrUserId = "0ecb1fcc-6782-4e46-a4c4-738c1d3accea"
$myUserId = $global:currentSession.UserId

#Assign yourself as an admin to each environment created by the user
Get-AdminPowerAppEnvironment -CreatedBy $deleteDsrUserId | Set-AdminPowerAppEnvironmentRoleAssignment -RoleName EnvironmentAdmin -PrincipalType User -PrincipalObjectId $myUserId

#Retrieve the environment role assignments to confirm
Get-AdminPowerAppEnvironment -CreatedBy $deleteDsrUserId | Get-AdminPowerAppEnvironmentRoleAssignment

重要提示

只有 Dataverse 中没有数据库环境的环境中才支持此函数。

使用 PowerShell 删除用户创建的环境

管理员可以使用适用于 Power Apps 管理员的 PowerShell cmdlet 中的 Remove-AdminPowerAppEnvironment 函数删除一位用户创建的所有环境:

Add-PowerAppsAccount
$deleteDsrUserId = "0ecb1fcc-6782-4e46-a4c4-738c1d3accea"

# Retrieve all environments created by the user and then delete them
Get-AdminPowerAppEnvironment -CreatedBy $deleteDsrUserId | Remove-AdminPowerAppEnvironment

步骤 2:删除用户对其他所有环境的权限

可以为用户分配环境中的权限(如环境管理员和环境开发者),这些权限以“角色分配”的形式存储在 Power Apps 服务中。引入 Dataverse 后,如果在环境中创建数据库,这些“角色分配”将作为记录存储在该数据库的环境内。

对于无 Dataverse 数据库的环境

Power Platform 管理中心

管理员可以通过执行以下步骤,从 Power Platform 管理中心开始删除用户的环境权限:

  1. Power Platform 管理中心,选择一个环境。

    您必须是 Microsoft 365 全局管理员Microsoft Entra 全局管理员才能够查看组织内已经创建的所有环境。

  2. 如果您的环境没有 Dataverse 数据库,您将看到访问权限部分。 在访问权限下,选择环境管理员环境制作者,然后选择查看全部

    选择“环境管理员”、“查看全部”。

  3. 选择一个用户,选择删除删除其权限,然后选择继续

PowerShell

管理员可使用适用于 Power Apps 管理员的 PowerShell cmdlet 中的 Remove-AdminPowerAppEnvironmentRoleAssignment 函数删除某个用户在所有无 Dataverse 数据库的环境中的所有环境角色分配:

Add-PowerAppsAccount
$deleteDsrUserId = "0ecb1fcc-6782-4e46-a4c4-738c1d3accea"

#find all environment role assignments for the user for environments without a Dataverse database and delete them
Get-AdminPowerAppEnvironmentRoleAssignment -UserId $deleteDsrUserId | Remove-AdminPowerAppEnvironmentRoleAssignment

重要提示

只有没有 Dataverse 数据库环境的环境才支持此函数。

对于有 Dataverse 数据库的环境

由于引入了 Dataverse,所以如果在环境中创建数据库,将把这些“角色分配”以记录的形式存储在该数据库的环境内。 有关如何在 Dataverse 中从数据库的环境删除个人数据的信息,请参阅以下文档:删除 Common Data Service 用户个人数据

步骤 3:删除或重新分配用户负责的所有区域应用

使用 Power Apps 管理 PowerShell cmdlet 重新分配用户的区域应用

如果管理员决定不删除用户的区域应用,可以使用 Power Apps 管理 PowerShell cmdlet 中的 Set-AdminPowerAppOwner 函数重新分配用户负责的应用:

Add-PowerAppsAccount
$deleteDsrUserId = "0ecb1fcc-6782-4e46-a4c4-738c1d3accea"
$newAppOwnerUserId = "72c272b8-14c3-4f7a-95f7-a76f65c9ccd8"

#find all apps owned by the DSR user and assigns them a new owner
Get-AdminPowerApp -Owner $deleteDsrUserId | Set-AdminPowerAppOwner -AppOwner $newAppOwnerUserId

使用 Power Apps 站点删除用户的区域应用

用户可以从 Power Apps 站点删除应用。 有关如何删除应用的完整步骤,请参阅删除应用。

使用 Power Platform 管理中心删除用户的画布应用

管理员可以通过以下步骤删除某用户创建的应用:

  1. Power Platform 管理中心,选择一个环境。

    您必须是 Microsoft 365 全局管理员Microsoft Entra 全局管理员才能够查看组织内已经创建的所有环境。

  2. 资源下,选择 Power Apps

  3. 选择一个应用,然后选择删除>从云中删除

使用 Power Apps 管理 PowerShell cmdlet 删除用户的区域应用

如果管理员决定删除某个用户负责的所有区域应用,可以使用 Power Apps 管理 PowerShell cmdlet 中的 Remove-AdminApp 函数:

Add-PowerAppsAccount
$deleteDsrUserId = "0ecb1fcc-6782-4e46-a4c4-738c1d3accea"

#find all apps owned by the DSR user and deletes them
Get-AdminPowerApp -Owner $deleteDsrUserId | Remove-AdminPowerApp

步骤 4:删除用户对区域应用的权限

只要与用户共享应用,Power Apps 中都会存储一个“角色分配”记录,用于描述该用户对这个应用的权限(CanEdit 还是 CanUse)。 有关详细信息,请参阅文章“共享应用”。

备注

如果删除应用,将删除其角色分配。 只能通过为应用分配新负责人来删除应用负责人的角色分配。

若要删除画布应用的用户权限,请参阅预览:共享模型驱动应用。 对于步骤 5,删除而不是从列表中添加角色。

适用于管理员的 PowerShell cmdlet

管理员可以使用 Power Apps 管理 PowerShell cmdlet 中的 Remove-AdminPowerAppRoleAssignment 函数删除用户的所有区域应用角色分配:

Add-PowerAppsAccount
$deleteDsrUserId = "0ecb1fcc-6782-4e46-a4c4-738c1d3accea"

#find all app role assignments for the DSR user and deletes them
Get-AdminPowerAppRoleAssignment -UserId $deleteDsrUserId | Remove-AdminPowerAppRoleAssignment

步骤 5:删除用户创建的连接

建立与其他 API 和 SaaS 系统之间的连接时,连接和连接器一起使用。 连接中包含对创建这些连接的用户的引用,因此,可以通过删除连接来删除对该用户的所有引用。

适用于应用创建者的 PowerShell cmdlet

用户可以通过使用应用创建者 PowerShell cmdlet 中的 Remove-AdminPowerAppConnection 函数删除其所有连接:

Add-PowerAppsAccount

#Retrieves all connections for the calling user and deletes them
Get-AdminPowerAppConnection | Remove-AdminPowerAppConnection

适用于 Power Apps 管理员的 PowerShell cmdlet

管理员可以使用 Power Apps 管理 PowerShell cmdlet 中的 Remove-AdminPowerAppConnection 函数删除用户的所有连接:

Add-PowerAppsAccount
$deleteDsrUserId = "0ecb1fcc-6782-4e46-a4c4-738c1d3accea"

#Retrieves all connections for the DSR user and deletes them
Get-AdminPowerAppConnection -CreatedBy $deleteDsrUserId | Remove-AdminPowerAppConnection

步骤 6:删除用户对共享连接的权限

适用于应用创建者的 PowerShell cmdlet

用户可以通过使用用创建者 PowerShell cmdlet 中的 Remove-AdminPowerAppConnectionRoleAssignment 函数删除其共享连接的所有连接角色分配:

Add-PowerAppsAccount

#Retrieves all connection role assignments for the calling users and deletes them
Get-AdminPowerAppConnectionRoleAssignment | Remove-AdminPowerAppConnectionRoleAssignment

备注

如果不删除连接资源,则不能删除负责人角色分配。

适用于管理员的 PowerShell cmdlet

管理员可以使用 Power Apps 管理 PowerShell cmdlet 中的 Remove-AdminPowerAppConnectionRoleAssignment 函数删除用户的所有连接角色分配:

Add-PowerAppsAccount
$deleteDsrUserId = "0ecb1fcc-6782-4e46-a4c4-738c1d3accea"

#Retrieves all connection role assignments for the DSR user and deletes them
Get-AdminPowerAppConnectionRoleAssignment -PrincipalObjectId $deleteDsrUserId | Remove-AdminPowerAppConnectionRoleAssignment

步骤 7:删除用户创建的自定义连接器

自定义连接器是自带连接器的补充,可用于连接其他 API、SaaS 和自定义开发的系统。 您可能希望将自定义连接器所有权转移给组织中的其他用户或删除自定义连接器。

适用于应用创建者的 PowerShell cmdlet

用户可以使用适用于应用创建者的 PowerShell cmdlet 中的 Remove-AdminPowerAppConnector 函数删除自己的所有自定义连接器:

Add-PowerAppsAccount

#Retrieves all custom connectors for the calling user and deletes them
Get-AdminPowerAppConnector | Remove-AdminPowerAppConnector

适用于管理员的 PowerShell cmdlet

管理员可以使用 Power Apps 管理 PowerShell cmdlet 中的 Remove-AdminPowerAppConnector 函数删除用户创建的所有自定义连接器:

Add-PowerAppsAccount
$deleteDsrUserId = "0ecb1fcc-6782-4e46-a4c4-738c1d3accea"

#Retrieves all custom connectors created by the DSR user and deletes them
Get-AdminPowerAppConnector -CreatedBy $deleteDsrUserId | Remove-AdminPowerAppConnector

步骤 8:删除用户对共享自定义连接器的权限

适用于应用创建者的 PowerShell cmdlet

用户可以使用应用创建者的 PowerShell cmdlets 中的Remove-AdminPowerAppConnectorRoleAssignment 函数删除自己的所有共享自定义连接器连接器角色分配:

Add-PowerAppsAccount

#Retrieves all connector role assignments for the calling users and deletes them
Get-AdminPowerAppConnectorRoleAssignment | Remove-AdminPowerAppConnectorRoleAssignment

备注

如果不删除连接资源,则不能删除负责人角色分配。

适用于管理员的 PowerShell cmdlet

管理员可以使用 Power Apps 管理 PowerShell cmdlet 中的 Remove-AdminPowerAppConnectorRoleAssignment 函数删除用户的所有自定义连接器角色分配:

Add-PowerAppsAccount
$deleteDsrUserId = "0ecb1fcc-6782-4e46-a4c4-738c1d3accea"

#Retrieves all custom connector role assignments for the DSR user and deletes them
Get-AdminPowerAppConnectorRoleAssignment -PrincipalObjectId $deleteDsrUserId | Remove-AdminPowerAppConnectorRoleAssignment

步骤 9:删除 Power Automate 中的用户个人数据

Power Apps 许可证中始终包含 Power Automate 功能。 Power Automate 除了包含在 Power Apps 许可证中,还以独立服务的形式提供。 有关如何响应 Power Automate 服务用户的 GDPR 的指导,请参阅响应 Power Automate 的 GDPR 数据使用者请求

重要提示

建议由管理员为 Power Apps 用户完成此步骤。

步骤 10:删除 Microsoft Copilot Studio 中的用户个人数据

Power Apps 功能在 Microsoft Copilot Studio 之上构建。 Microsoft Copilot Studio 也可作为独立服务使用。 有关如何响应 Microsoft Copilot Studio 服务数据的 GDPR 请求的指导,请参阅响应 Microsoft Copilot Studio 的数据主体请求

重要提示

建议由管理员为 Power Apps 用户完成此步骤。

步骤 11:在 Microsoft 365 管理中心查找用户的个人数据

Power Apps 中的一些反馈机制已与 Microsoft 365 管理中心集成。 有关如何删除 Microsoft 365 管理中心存储的反馈数据的指导,请参阅如何查看用户的反馈?Microsoft Entra 全局管理员能够在 Microsoft 365 管理中心管理这些数据,无需 Microsoft 365 或 Office 许可证。

重要提示

建议由管理员为 Power Apps 用户完成此步骤。

步骤 12:删除 Dataverse 环境中的用户个人数据

某些 Power Apps 许可证(包括 Power Apps 开发人员计划)让组织内的用户能够创建 Dataverse 环境以及在 Dataverse 上创建和构建应用。 Power Apps 开发人员计划是一个免费许可证,用户可在个人环境中试用 Dataverse。 有关每个 Power Apps 许可证中包含哪些功能的信息,请参阅 Power Apps 许可页。

有关如何响应 Dataverse 用户的 DSR 的指导,请参阅响应 Dataverse 客户数据的数据使用者权限 (DSR) 请求

重要提示

建议由管理员为 Power Apps 用户完成此步骤。

步骤 13:从 Microsoft Entra 删除用户

完成上面的步骤之后,最终步骤是删除用户的 Microsoft Entra 帐户。

托管租户

作为托管 Microsoft Entra 租户管理员,您可以通过执行 Microsoft 365 服务信任门户中的 Azure 数据使用者请求 GDPR 文档中概述的以下步骤,删除用户的帐户。

非托管租户

如果您是非托管租户的成员,您需要执行以下步骤才能从 Microsoft Entra 租户删除自己的帐户:

备注

请参阅上面的非托管租户部分了解如何检测自己是非托管租户还是托管租户的成员。

  1. 使用您的 Microsoft Entra 帐户登录。

  2. 选择关闭帐户,然后按照说明从 Microsoft Entra 租户删除您的帐户。

    选择关闭帐户。