---
title: "企业应用程序中的基于角色的访问控制"
date: "2023-03-01"
categories: 
  - "app-development"
  - "database"
  - "no-code"
tags: 
  - "database-apps"
  - "no-code-app-development"
  - "recordsmanager"
  - "security"
description: 探索基于角色的访问控制如何提升企业数据库应用程序的安全性。 学习如何使用 Altova RecordsManager 有效地管理用户权限。
---
Status: #blog

Tags:  #database-apps #no-code-app-development #recordsmanager #security

Categories: [mobile-development](/blog/zh/category/mobile-development.md) | [database + sql](/blog/zh/category/database-sql.md) | [low-code+no-code](/blog/zh/category/low-codeno-code.md)
# 企业应用程序中的基于角色的访问控制

企业数据库应用程序的普及程度日益提高，这是因为它们在提供访问权限和便捷管理企业用户日常所需的大量关键数据方面具有优势。与其它类型的企业生产力应用程序不同，数据库应用程序必须包含管理不同用户访问权限的机制，以维护企业数据的安全性和完整性。

这可能包括管理只读权限、编辑权限，或者限制对某些类型数据的访问。虽然确保只有授权人员才能访问敏感数据至关重要，但不同组织内部的权限级别往往存在差异。使用 Altova RecordsManager 构建的应用程序，包含全面的工具，用于管理基于角色的数据库数据访问权限，这些工具能够反映组织内部复杂的权限关系。

让我们来看看如何使用RecordsManager，它通过可视化工具，让应用程序管理员能够轻松管理复杂的基于角色的权限。

![工人们聚在一起，共同观看平板电脑，背景是办公室](/blog/images/image_1682713516.jpg)

<!--more-->

## 从身份验证开始

身份验证是保障企业应用安全访问的第一步。它既能防止未经授权的访问，又能通过与基于角色的访问控制相结合的方式，在用户登录后，仅向具有相应权限的用户提供其角色所允许的数据和操作。

RecordsManager 提供了两种配置身份验证的方式。对于用户数量较少的应用程序，每个用户都可以通过“管理用户”选项卡（见下文）手动添加，并为其设置密码。对于拥有大量终端用户的企业级应用程序，RecordsManager 应用程序可以配置为与目录服务集成，从而从组织现有的 [LDAP 或 Active Directory](https://www.altova.com/manual/MobileTogether/mobiletogetherserveradvanced/mts_webui_settings_ldap.html) 服务器导入用户。 这样可以避免手动输入用户数据，并允许用户使用其公司 LDAP 或 Active Directory 用户名和密码登录应用程序。 然后，可以按照下一节所述的方式为用户分配角色。

## 在应用程序中启用基于角色的访问控制

除了在用户访问应用程序之前进行身份验证之外，采用基于角色的访问控制是一种提高应用程序安全性的有效方法 [数据库应用程序](https://www.altova.com/zh/recordsmanager). 基于角色的访问控制，根据分配给用户的角色，限制对数据库的不同部分或不同操作（如读取、编辑、保存、审批等）的访问。 这种方法比逐个用户分配权限更加高效。

这种方法会根据用户的岗位职责，将他们分配到不同的角色，并据此授予相应的访问权限。例如，在一个合同管理应用程序中，律师助理可能只能搜索合同并更新某些字段，而律师则可以读取和修改所有记录和字段。在人力资源应用程序中，所有员工都可以查看同事的职位和联系方式，而只有人力资源团队的成员才能访问这些信息，以及工资和福利信息。这种方法确保用户只能访问他们执行工作所需的必要数据，同时降低了未经授权访问敏感信息的风险。

由于RecordsManager是一种无需编写代码的应用程序开发解决方案，它采用一种纯粹的视觉化、易于理解的方式来配置基于角色的访问权限。在RecordsManager中创建应用程序时，管理员选择“管理用户”选项卡，以添加用户并定义权限。

![用于在 RecordsManager 中管理应用程序用户的界面](/blog/images/user-management-interface.png)

在这个选项卡中，有三个功能：

- 添加或编辑应用程序用户

- 定义角色及其相应的权限

- 创建用户组，以便确定哪些用户将收到来自应用程序的哪些通知

您可以根据您的应用程序的具体需求，定义任意数量的用户、角色和用户组。在添加新用户或编辑现有用户的信息时，您可以轻松地为其分配相应的角色。

![添加用户名和密码以访问应用程序](/blog/images/add-app-user.png)

为了节省时间，您也可以通过“角色”选项卡将多个用户分配到同一个角色。

![分配基于角色的访问权限 ](/blog/images/role-based-access-assignment.png)

### 定义角色和权限

您可以在 RecordsManager 中定义任意数量的 [角色](https://www.altova.com/zh/recordsmanager/user-management)，每个角色都可以访问数据库应用程序中的不同 [表单](https://www.altova.com/zh/recordsmanager/forms)（用于查看数据、录入数据等）。

![优化基于角色的读写权限控制](/blog/images/refining-role-based-access.png)

在“角色”对话框中的“数据访问”选项卡，您可以进一步细化每个角色的查看和编辑权限，具体方法是利用预定义的[筛选器](https://www-staging.altova.com/recordsmanager/filters)，这些筛选器应用于每个数据容器。

![使用过滤器来精细化访问权限](/blog/images/access-filters.png)

为了获得最大的灵活性，角色访问权限也可以在表单本身的属性中进行设置；在此处进行的任何更改都将反映在“角色”对话框的“表单”选项卡上。

这种基于角色的访问控制方法，使得精确控制用户可以访问和/或编辑哪些记录和字段变得非常容易。

## 定义用户组

用户组可以在 RecordsManager 中创建，它们由单个用户和/或角色组成。这些用户组可以方便地根据各种标准来定制警报（提醒、通知等）的发送。例如，在一个[合同管理应用](https://www.altova.com/zh/contractmanager)中，一个由部门负责人组成的的用户组可能会收到一个警报，提醒他们审查一份新保存到数据库中的合同。

用户组可以采用层级结构，以适应用户可能属于多个组的情况（例如，办公地点、部门、管理团队、跨职能团队等）。 采用层级结构的用户组可以提高组分配的效率，因为它消除了需要将每个用户单独分配到所有组的需求。

![分层用户组](/blog/images/hierarchical-user-groups-1.png)

通过这种方式定义用户角色，可以实现更精准的提醒邮件发送，例如，可以将不同团队的潜在客户分组发送邮件。

在企业数据库应用中，管理用户访问权限是维护敏感信息安全和完整性的关键环节。RecordsManager 提供了一种简单直观的方式，可以用于在数据库应用中定义细粒度的基于角色的访问权限。

Altova RecordsManager 可以在 Altova 云平台上免费试用。现在就开始您的[免费30天试用](https://app.altova.cloud/try/recordsmanagerai)，创建您的第一个无需编码的应用程序。无需注册账户，您可以立即开始使用。
