Dataverse 逻辑和安全性

已完成

Microsoft Dataverse 不仅仅是数据存储,它包含的功能还可将业务逻辑应用于数据,并对数据访问提供保护。

Dataverse 中的表可以使用丰富的服务器端逻辑和验证来确保数据质量。 您还可以在创建和使用表内数据的每个应用中减少重复代码。

  • 业务规则:不管用于创建数据的应用是什么,业务规则都会验证表中多列的数据,并提供警告和错误消息。

  • 业务流程流:业务流程流为用户提供引导,确保他们以一致的方式输入数据,并且每次都遵循相同的步骤。 当前,仅模型驱动应用支持业务流程流。

  • 实时工作流:工作流可将业务流程自动化,无需用户交互。

  • 包含代码的业务逻辑:业务逻辑支持可通过代码直接扩展应用程序的高级开发人员应用场景。

业务规则

当创建和更新表行时,业务规则可用于许多常见场景:

  • 设置表列的值。

  • 对表列执行计算。

  • 验证数据。

  • 强制执行数据要求。

  • 提示用户将数据输入表列。

编写代码的需求(例如模型驱动应用窗体中的 JavaScript)可由业务规则取代,这是 Dataverse 中的重要低代码功能。

业务规则提供一个简单的拖放式声明界面,来实施和维护规则。 业务规则设计器支持您指定条件,定义何时应用规则,以及规则执行的操作。

以下屏幕截图显示了“Pet”表的一个业务规则,该规则强制显示预约日期,并选择一个日期。

业务规则设计器的屏幕截图。

业务规则在 Power Apps Maker Portal 中创建和管理。 业务规则是为 Dataverse 表定义的,并根据规则的范围 设置应用:

  • 单个窗体:规则仅适用于指定的模型驱动应用窗体。

  • 所有窗体:规则适用于所有模型驱动应用窗体。

  • 实体:规则适用于所有模型驱动应用窗体,以及在 Dataverse 表中创建或更新行时。 这是默认设置。

操作

通过组合条件和操作,您可以使用业务规则执行以下任一操作:

  • 设置列的值。

  • 清除列的值。

  • 设置列要求级别。

  • 显示或隐藏列。

  • 启用或禁用列。

  • 验证数据并显示错误消息。

  • 基于商业智能创建业务建议。

有关详细信息,请参阅为表创建业务规则

画布应用和模型驱动应用之间的差异

如果在应用中使用了表,则为表定义的业务规则将同时应用于画布应用和模型驱动应用。

模型驱动应用可以使用业务规则中可用的所有操作,但并不是所有业务规则操作都适用于画布应用。 以下操作并不适用于画布应用:

  • 显示或隐藏列。

  • 启用或禁用列。

  • 基于商业智能创建业务建议。

Dataverse 安全性

Dataverse 具有全面的安全模型,可控制对环境、表、表行和其他 Dataverse 功能的访问,例如数据导入和导出。

数据安全地存储在 Dataverse 中,只有授权用户才能查看数据。 使用基于角色的访问控制 (RBAC) 来控制对 Dataverse 中数据的访问。 Dataverse 安全角色是一组特权和访问级别。 您无需为用户分配每项特权,只需要将一个或多个 Dataverse 安全角色分配给用户。 这简化了用户访问权限的管理。

注意

必须为用户分配至少一个安全角色,他们才能访问 Dataverse 并运行应用。

您可以分配标准安全角色之一,例如:

  • 系统管理员:具有自定义或管理环境的完全权限。

  • 环境创建者:可以创建与环境关联的新资源,包括应用、流和连接。

  • 基本用户:可以在环境中运行应用,并对现成的表(例如 Account 和 Contact)中的行执行常见任务。

但是,您通常应该为您生成的任何应用创建自定义安全角色,以提供应用所需的一组最低特权。 无法 为您的表自定义标准安全角色。 您只能修改自定义安全角色。

您可以从 Power Platform 管理中心管理安全角色。 选择您的环境并选择设置,展开用户 + 权限,然后选择安全角色

自定义安全角色中,您可以为每个表的每种特权指定访问级别。 在下面的屏幕截图中,已分配“Pet”表的创建、读取、写入、删除、追加、追加到、分配和共享特权,以允许具有本自定义角色的人员对表中的数据进行完全访问。

安全角色的屏幕截图。

通过调整每个选项下的下拉列表,更改特权设置非常简单。

有关详细信息,请参阅 Microsoft Dataverse 中的安全性概念