使用流进行定向数据治理

已完成 100 XP

在某些业务情况下,数据可能通过连接器来自外部源,并进入同样保存重要业务信息的服务。 通常,这些连接器会相互通信。 数据丢失防护 (DLP) 策略的挑战在于确保连接器仅单向通信,从而防止宝贵的业务数据意外发送给第三方。 管理数据流,以确保数据只到达应该去的地方,这就是所谓的定向数据治理

目前,DLP 策略不会自动处理定向数据治理。 但您可以使用 Power Automate 拦截和阻止任何流将您的业务数据发送给第三方。

以下是一个示例:假设您的组织要使用 SharePoint 跟踪 X(以前称为 Twitter)公告。 如果没有落实控制措施,您的业务信息可能会从 SharePoint 流到 X。

若要确保数据仅沿正确的方向(从 X 到您的 SharePoint)移动,请按照以下步骤操作:

  1. Power Platform 管理中心中创建 DLP 策略,以包括业务数据组中的 SharePoint 和 X 连接器。 这允许制作者使用这两个连接器生成流。

    展示 X 和 SharePoint 连接器的 Microsoft Power Platform 管理中心“数据策略”页面“分配连接器”步骤的屏幕截图。

  2. 接下来,使用您的管理员帐户登录到 Power Automate Maker Portal 以生成治理流。 您将生成每小时运行一次的计划流。

  3. 从主屏幕的左侧菜单中,选择 + 创建,然后选择计划云端流。 为您的流提供流名称、开始日期和时间以及每 1 小时重复一次;然后选择创建

    “流名称”设置为“检测 X 操作”的“生成计划流”的屏幕截图。

    “定期”触发器将自动添加到流中。

  4. 接下来,创建一个变量,用于计算从 60 分钟前到现在的“时钟周期”数。 (时钟周期是较小的时间单位。)您稍后将在流中使用此步骤中的变量,以查看上次(即 60 分钟前)运行流后是否创建或修改任何流。

  5. 选择定期触发器下的 + 符号,添加操作菜单随即显示。 在搜索中,输入初始化变量并向下滚动查看结果,以查找初始化变量操作。 (它在变量操作中。)

  6. 选择标题初始化变量,然后将操作重命名为初始化变量 - 小时前时间戳。 在名称中,将其命名为 previousTimestamp。 在类型中,选择整数。 将光标放置在字段中,您会看到用于选择闪电图标(添加上一步中的动态内容)或 fx(添加表达式)的选项。 您将要输入表达式,因此选择 fx

    输入此公式 ticks(addMinutes(utcNow(),-60)),然后选择添加

    Power Automate 的“我的流”页面的屏幕截图,其中显示“初始化变量”操作的“值”属性并且突出显示时钟周期公式。

    接下来,创建另一个变量。 稍后您将在流中使用本变量检测其他流是否包含 X 操作。

  7. 选择您刚刚创建的步骤下方的 + 以添加另一个操作。 搜索并添加另一个初始化变量操作。 选择初始化变量并将其更改为初始化变量 - 流是否包含 X 操作。 在名称中添加 isFlowAction,并将类型更改为布尔。 通过从的下拉列表中选择 false,将 false 设为默认值。 您稍后将在检测到流中包含 X 操作时在流中使用本变量。

    名为“流是否包含 X 操作”的第二个初始化变量操作的屏幕截图。

    接下来,您将获取环境列表。 您稍后将在流中使用在此步骤中创建的此环境列表,以检查每个环境中是否存在包含 X 操作的流。

  8. 选择您创建的步骤下方的 + 并搜索以管理员身份列出环境,您将在 PowerPlatform for Admins 连接器中找到该操作。 无需更改此步骤中的任何参数。

    突出显示“以管理员身份列出环境”选项的新 PowerPlatform for Admins 操作的屏幕截图。

    列出环境后,您现在将获取每个环境中的流的列表。

  9. 选择您创建的步骤下方的 +,然后搜索以管理员身份列出流(V2)。 (如果有高于 V2 的版本,请使用最新版本。)您将在 Power Automate 管理连接器下找到此操作。

    突出显示流管理和“以管理员身份列出流”的“选择操作”步骤的屏幕截图。

  10. 以管理员身份列出流操作需要环境名称作为输入参数。 将光标放置在环境字段中,然后从下拉列表中选择自定义值。 闪电和 fx 将再次出现。 此时,您想要使用在以管理员身份列出环境步骤中生成的动态内容,因此请选择闪电图标。

  11. 您将看到可在流中创建的前面步骤中使用的输出列表。 向下滚动并找到以管理员身份列出环境步骤;在此步骤下,选择 Name 列。 提供本输入时,自动添加应用到每一个操作,以便遍历您的所有环境。

    “应用到每一个”操作的屏幕截图,其中“以管理员身份列出流”具有动态内容 Name。

您只想了解自上次运行此流起修改的流,因此可向流添加条件,以比较每个流的上次修改时间戳的时钟周期与之前在此流中建立的“小时前时间戳”变量的时钟周期。

  1. 为此,您将首先计算上次修改时间戳的时钟周期。 完整语句为 ticks(items('Apply_to_each_2')?['properties']?['lastModifiedTime']) is greater than previousTimestamp

    包含“如果是”和“如果否”选项的时钟周期数大于前项的条件屏幕截图。

  2. 检测到过去 60 分钟内修改过流时,您希望确保该流不属于作为管理员的您。 本验证有助于避免在后续步骤中尝试将管理员添加为流的共同所有者时出错。

    使用 Office 365 用户连接器和获取我的个人资料(v2) 操作,并将其添加到如果是分支。 本步骤将返回有关与连接器建立连接的用户信息,本例中为管理员。

    突出显示“获取我的个人资料”操作的“如果是”条件中的 Office 365 用户的屏幕截图。

  3. 现在,添加另一个条件,可验证创建者对象 ID(来自以管理员身份列出流操作)是否等于 ID(来自获取我的个人资料(V2) 操作)。

    如果是分支中,添加属于 Power Automate for Admins 连接器的以管理员身份编辑流所有者角色操作。 您将管理员添加为流的共同所有者并且有助于提取流定义,后者要求您是流的共同所有者。

    您将在后续步骤中检索流定义,但现在,提供当前环境名称和当前流名称。 展开正文/输入部分并添加有关管理员用户的这些详细信息:电子邮件地址、显示名称和 ID。 可以通过获取我的个人资料(V2) 操作在动态内容中获取这些值。

    突出显示了属性的“以管理员身份编辑流所有者角色”的屏幕截图。

  4. 将管理员帐户添加为流的共同所有者后,可以通过流管理连接器调用以管理员身份获取流操作。

    突出显示“以管理员身份获取流”的流管理屏幕截图。

  5. 以管理员身份获取流操作的输入包括当前环境名称流名称。 此操作的输出包括允许您确定 X 操作是否存在的流定义。

    添加“以管理员身份获取流”的“如果是”条件的屏幕截图,其中“环境”设置为“名称”,“流”设置为“流名称”。

  6. 若要检查是否正在使用 X 操作,请向流中添加条件,验证操作 API 名称(来自以管理员身份获取流操作)是否等于 shared_twitter。 添加本条件后,应用到每一个循环将会应用。 发生这种情况是因为操作 API 名称属性是数组的一部分,因为每个流都可能有许多操作。

  7. 如果是分支中,更新 isFlowAction 变量,以将其设置为 true,因为现已找到包含 Twitter 操作的流。 您稍后将在流中使用本变量以确定是否需要禁用流并向流所有者发送电子邮件。

    突出显示“设置变量 - Twitter 操作存在”的“如果是”条件屏幕截图。

  8. 在遍历流中所有操作的应用到每一个变量以外添加另一个条件。 本条件将验证 isFlowAction 变量的值是否为 true

    条件 3 的屏幕截图,其中突出显示“是否存在 Twitter 操作”。

  9. 如果是分支中,添加 Microsoft Flow for Admins 连接器,然后选择以管理员身份禁用流操作。 这允许您禁用流,以便无法将信息发送到 X。若要调用此操作,请包含当前环境名称流名称

    包含“以管理员身份禁用流”的“如果是”的屏幕截图,其中“环境名称”设置为“名称”,“流名称”设置为“流名称”。

  10. 当禁用某人的流时,您希望向其发送电子邮件,告知他流不再运行。 若要获取流所有者的电子邮件地址,请使用 Office 365 用户连接器并使用获取用户个人资料(V2) 操作以返回所有者的电子邮件地址。 若要获取其电子邮件地址,您需要添加可通过以管理员身份列出流操作检索的创建者对象 ID

    “获取用户个人资料 - 流创建者”屏幕截图,其中用户 (UPN) 置为创建者对象 ID。

  11. 使用 Office 365 Outlook 连接器和发送电子邮件 (V2)操作向流所有者发送电子邮件。 使用获取用户个人资料 (V2)操作返回的信息发送本电子邮件,包括 MailGiven Name 属性。 此外,还可以通过添加以管理员身份列出流输出中的 Flow Display Name 属性加入流名称。

    发送电子邮件屏幕截图,其中“收件人”设置为“邮件”,主题包含文本,正文包含文本,包含“给定名称”和“流显示名称”字段。

  12. 由于遍历租户中的所有流,因此需要将 isFlowAction 变量设置回 false,以便查找其他可能包含 Twitter 操作的流。 现在可以保存管理流。

    设置变量 - 重置 Twitter 标记的屏幕截图,其中名称设置为 isFlowAction,值设置为 false。

  13. 若要测试流,请使用其他帐户登录到 Power Automate Maker Portal。 创建包含 SharePoint 触发器和 X 操作的流。 DLP 策略不会阻止本应用场景,但您创建的管理流应检测到此应用场景。

    在 Power Automate 的“我的流”页面上创建包含 Twitter 操作的流的屏幕截图,其中包含“创建项目时”和“获取用户个人资料”步骤。

  14. 现在,可以运行之前以管理员身份创建的“检测 X (以前称为 Twitter)操作”流。 此流运行时,应检测到流最近进行过修改并且其中包含 Twitter 操作。 因此,向流所有者发送电子邮件。

    已禁用主题为“您的流”并且包含消息“您的流:SharePoint > Twitter 已被禁用等等”的电子邮件的屏幕截图。

  15. 如果检查 SharePoint 到 X 的流,您会发现该流已禁用,因为管理员禁用了该流。

    已禁用 SharePoint > Twitter 流的 Power Automate 流页面的屏幕截图。

但是,从 X 检索信息并将其发送到 SharePoint 并不会违反治理规则。 因此,可以使用流制作者的帐户创建另一个流,其中包括 X 触发器和 SharePoint 操作。 运行“检测 X 操作”治理流时,此流仍可正常工作并且不会被禁用,因为这是允许的用例。

在 Power Automate 的“我的流”页面上创建包含 X 操作的流的屏幕截图,其中包含“发布新推文时”和“创建项目”步骤。


下一单元: 使用 DLP 策略管理 HTTP 连接器

上一篇 下一步