DolphinDB Web 端权限管理:可视化操作指南
在现代数据库管理中,高效和直观的权限管理对于用户的数据安全是至关重要的。过去 DolphinDB 用户需要依赖系统脚本来管理用户和权限,这对于缺乏技术背景的管理员来说既复杂又容易出错。
为了提升用户体验和操作效率,DolphinDB 目前在 Web 上开发了可视化权限操作管理模块,用户可以轻松地设定对数据库、内存表、流表、函数视图的访问限制,得以高效地确保数据库系统安全。
1. 功能简介
在 DolphinDB Web 权限管理模块下,一切关于权限的管理任务变得既直观又富有条理。本模块精心打造了两大控制模块:用户管理和组管理,它们共同构成了 Web 权限管理的核心。
用户管理:用户管理的设计旨在简化账户操作流程。从创建新用户到配置权限范围,每一个功能都经过了细致的优化,确保管理员可以毫不费力地管理整个系统的用户。主要功能包括:
- 新建用户:以表单的方式快速添加新的数据库用户。
- 删除用户:删除单个用户或者批量删除多个用户。
- 设置用户组:将用户归入特定的用户组内,便捷权限分配。
- 重置用户密码:在用户忘记密码或需要密码更新时,提供一种安全的重置方式。
- 查看用户权限:通过可视化图表查看每个用户的权限细节。
- 设置用户权限:自由调整每个用户的权限设置,保障不同权限的精细分配。
组管理:组管理的架构则专注于用户组的整体性管理,它确保了权限设置的集体性和一致性。主要功能包括:
- 新建组:创建新的分组,以适应不同团队或项目的权限分布需求。
- 删除组:删除不再需要的群组。
- 设置组内用户:能够灵活地安排组内成员,随时调整团队配置。
- 查看组权限:通过一目了然的权限布局视图,管理员无需繁琐查询即可审视各个用户组的权限设置。。
- 设置组权限:给予特定的用户组一系列权限,实现统一而精确的权限控制。
DolphinDB Web 权限管理模块,凭借其高度组织化的功能设计,不仅提升了管理员的工作效率,也加强了对敏感数据的防护。
2. 用户管理
用户管理是 Web 权限管理模块的重要组成部分,提供了一系列功能,以确保对数据库用户的有效和安全管理。通过这些功能,管理员可以轻松掌控用户访问权限、执行日常管理任务、并维护数据库系统的完整性和安全。以下是用户管理功能的具体介绍:
2.1 新建用户
1. 切换到权限管理模块下的用户管理模块。
2. 点击界面上的新建用户,弹出表单如下图:
![](https://img-blog.csdnimg.cn/img_convert/c4ced3e0fbeadf36edb895e9f37a2043.webp?x-oss-process=image/format,png)
3. 依次输入用户名、密码、确认密码,选择是否分配为管理员、选择初始组,确认无误后点击确定。
4. 确定后,会调用函数 createUser 进行用户创建。创建成功后,在界面上提示"用户创建成功"。
2.2 删除用户
2.2.1 删除单个用户
1. 点击用户列表操作栏内删除按钮,弹出确认框。
![](https://img-blog.csdnimg.cn/img_convert/59a1a68f7797f24bf33c9def338be9a9.webp?x-oss-process=image/format,png)
2. 点击确定后,会调用函数 deleteUser 进行用户删除。删除成功后,在界面上提示"用户删除成功"。
2.2.2 批量删除用户
1. 选中想要删除的用户,点击表头上的批量删除按钮,弹出确认框。
![](https://img-blog.csdnimg.cn/img_convert/526fa3a1a6d8223427fca1b6b01030e4.webp?x-oss-process=image/format,png)
2. 点击确定后,会调用函数 deleteUser 进行用户批量删除。删除成功后,在界面上提示"用户删除成功"。
2.3 设置密码
1. 点击用户列表操作栏内设置密码按钮,弹出设置密码表单。
![](https://img-blog.csdnimg.cn/img_convert/44257d8d43c741a80608f4adec1b614b.webp?x-oss-process=image/format,png)
2. 输入密码以及确认密码后,点击确定。会调用函数 resetPwd 完成用户密码重置,重置成功后,在界面上提示"密码重置成功"。
2.4 设置用户组
1. 点击用户操作栏内设置用户组按钮,弹出用户组管理对话框。
![](https://img-blog.csdnimg.cn/img_convert/c779b03a0a374e5c34b344be229f5e63.webp?x-oss-process=image/format,png)
2. 左侧为当前用户未所属组,右侧为当前用户所属组。选中想要移入/移出的组,通过中间的箭头进行交换后,点击预览修改对用户组的改动进行预览。
![](https://img-blog.csdnimg.cn/img_convert/2abc7bf137aa0504b58f5826f546d46c.webp?x-oss-process=image/format,png)
3. 点击预览修改后进入到修改预览界面,依次确认该用户原有组,即将移入组和即将移出组,确认无误后点击确定。会调用函数 addgroupmember 和 deletegroupmember 进行用户组修改。修改成功后,在界面上提示"用户所属组修改成功"。
![](https://img-blog.csdnimg.cn/img_convert/85338a2a071ef93c64f692f1d7151a9e.webp?x-oss-process=image/format,png)
2.5 查看权限
1. 点击用户列表操作栏内查看权限按钮,切换到查看权限页面(这里展示的为指定用户及其所属组的权限组合后的最终生效权限),即以 finalAccess = true
的参数调用函数 getUserAccess 。
![](https://img-blog.csdnimg.cn/img_convert/5f30e7dde7e3d6910a98ca8f049ccc12.webp?x-oss-process=image/format,png)
2. 此处可以查看该用户的分布式数据库表权限、共享内存表权限、流数据表权限、函数视图权限以及全局权限(SCRIPT_EXEC、TEST_EXEC、VIEW_OWNER 等等)。表格中绿色代表该用户对某一数据库实体的权限状态为 Allow,红色代表该用户的权限状态为 Deny,灰色代表该用户的权限状态为 None。对此界面进行详细介绍:
-
- 导航栏的上半部分的下拉框可以对用户进行切换;
- 导航栏上部分的选项卡可以对权限类别进行切换;
- 刷新按钮对当前查看的权限表格数据进行刷新;
- 返回按钮可以返回到用户列表页面;
- 设置权限按钮跳转到设置权限页面(见 3.6 节);
- 搜索框用来查找想要查看的权限对象(数据库/共享内存表/流数据表/函数视图/全局权限);
- 如果当前选项卡为分布式数据库,可以点击表格内每一行行首的加号按钮,会展开该分布式数据库下的数据表权限。
![](https://img-blog.csdnimg.cn/img_convert/80a20df3f3ed1bedffdc7aea505bd60a.webp?x-oss-process=image/format,png)
2.6 设置权限
点击用户列表操作栏内设置权限按钮,切换到设置权限页面。
![](https://img-blog.csdnimg.cn/img_convert/b6528242d5a6f4f6b7e2b41d5bed5e74.webp?x-oss-process=image/format,png)
图 2-11 详细展示了设置权限页面的功能:
- 导航栏的上半部分的下拉框可以对用户进行切换;
- 导航栏上部分的选项卡可以对权限类别进行切换;
- 刷新按钮对当前查看的列表数据进行刷新;
- 返回按钮可以返回到用户列表页面;
- 新增权限按钮弹出新增权限表单(见 3.6.1 节);
- 查看权限按钮跳转到查看权限页面(见 3.5 节);
- 批量撤销按钮可批量撤销用户被赋予的权限(见 3.6.2 节);
- 搜索框用来查找想要查看的权限对象(数据库/共享内存表/流数据表/函数视图/全局权限)。
![](https://img-blog.csdnimg.cn/img_convert/4979e8e6ef3be66e0b5d2ba3cf14b320.webp?x-oss-process=image/format,png)
2.6.1 新增权限
1. 点击新增权限按钮,弹出对话框进行权限新增操作。
![](https://img-blog.csdnimg.cn/img_convert/1da27b83a6aa80befa88b2e274e1371c.webp?x-oss-process=image/format,png)
2. 选择权限类别:授予(grant)/拒绝(deny)权限。
![](https://img-blog.csdnimg.cn/img_convert/a3ac3aeb7c6fa73eb6c31b02ea2b951a.webp?x-oss-process=image/format,png)
3. 选择要赋予的权限类型,根据当前选项卡的不同,会在下拉框提供不同的权限类型,具体而言:
-
- 分布式数据库:包括库级权限类型 DB_MANAGE、DBOBJ_CREATE、DBOBJ_DELETE、DB_OWNER、DB_WRITE、DB_INSERT、DB_UPDATE、DB_DELETE、DB_READ 和表级权限类型 TABLE_WRITE、TABLE_READ、TABLE_INSERT、TABLE_UPDATE、TABLE_DELETE;
- 共享内存表:TABLE_WRITE、TABLE_READ;
- 流数据表:TABLE_WRITE、TABLE_READ;
- 函数视图:VIEW_EXEC;
- 全局权限:SCRIPT_EXEC、TEST_EXEC、VIEW_OWNER、QUERY_RESULT_MEM_LIMIT、TASK_GROUP_MEM_LIMIT。
![](https://img-blog.csdnimg.cn/img_convert/6dd89cc82e9122a8d785c1399a8e0ac2.webp?x-oss-process=image/format,png)
4. 选择或输入权限的应用范围(可多选),根据当前选项卡和用户在第 3 步选择的权限类型,会提供不同的权限应用范围,具体而言:
-
- 分布式数据库:
- 如果选择了库级权限类型,则只会展示出该集群下的所有分布式数据库;
- 如果选择了表级权限类型,则会展示出该集群下的所有分布式数据表;
- 如果选择了 DB_OWNER,则需要用户手动输入应用范围("*" 或以 "*" 结尾的数据库名,前者表示对所有数据库生效,后者表示对指定前缀命名的所有数据库生效)。
- 共享内存表:展示出所有的共享内存表;
- 流数据表:展示出所有的流数据表;
- 函数视图:展示出所有的函数视图;
- 全局权限:
- 如果选择了 SCRIPT_EXEC、TEST_EXEC、VIEW_OWNER 三种权限:应用范围为全局,此处不用选择或输入;
- 如果选择了 QUERY_RESULT_MEM_LIMIT 或 TASK_GROUP_MEM_LIMIT:则需要用户手动输入限制内存大小,单位为 GB。
- 分布式数据库:
![](https://img-blog.csdnimg.cn/img_convert/c0fa7e7ee1f60b7acb8acbd725bbee18.webp?x-oss-process=image/format,png)
5. 点击预添加按钮,对即将赋予的权限进行预览和确认。
![](https://img-blog.csdnimg.cn/img_convert/42757ae7d5a06ce8a9fe675a9b6c1309.webp?x-oss-process=image/format,png)
6. 预览即将赋予的权限,此时根据需要对预添加的权限进行移除。
![](https://img-blog.csdnimg.cn/img_convert/20e4201ffe50ba6bcc44fb8a1f17e117.webp?x-oss-process=image/format,png)
7. 确认无误,点击确认添加按钮,调用函数 grant 和 deny 对用户正式赋予权限,赋予成功后,在界面上提示"权限赋予成功"。
2.6.2 撤销权限
![](https://img-blog.csdnimg.cn/img_convert/0150b4e2ba13ed6875470ea6cc24d4d7.webp?x-oss-process=image/format,png)
点击撤销/批量撤销后,可对用户已赋予/已禁止的权限进行撤销,会调用函数 revoke 撤销权限,撤销成功后,在界面上提示"撤销成功"。
3. 组管理
在 DolphinDB 的权限管理系统中,我们引入了"组"这一概念,以便于更方便地配置和管理拥有相同权限的用户。这样当权限管理需求发生变化时,只需对组的权限进行一次修改,便可立即影响到组内的所有用户。这种设计大大简化了权限配置和管理的过程,提升了效率。以下对组管理的功能做出介绍(查看权限和设置权限功能与上文一致,不再重复):
3.1 新建组
1. 点击新建组按钮,弹出新建组弹窗。
![](https://img-blog.csdnimg.cn/img_convert/dc6c8f1ccb05b37490dbff86b6c00d92.webp?x-oss-process=image/format,png)
2. 进行新建组表单的填写:
- 输入组名;
- 在非组成员中选择要添加的初始成员;
- 点击中间的箭头,确认选择初始成员;
- 点击确定后,会调用函数 createGroup 进行组创建,创建成功后,在界面上提示"组创建成功"。
![](https://img-blog.csdnimg.cn/img_convert/5deb0529c935bbb6e6d010f2743079be.webp?x-oss-process=image/format,png)
3.2 删除组
对已存在的组可以进行删除操作,可以删除单个组或者批量删除多个组。
3.2.1 删除单个组
1. 点击组列表操作栏内删除按钮,弹出确认框。
![](https://img-blog.csdnimg.cn/img_convert/10e98fb81b41bd54838f23bcf63da9b4.webp?x-oss-process=image/format,png)
2. 点击确定后,会调用函数 deleteGroup 进行组删除。删除成功后,在界面上提示"组删除成功"。
3.2.2 批量删除组
1. 选中想要删除的组,点击表头上的批量删除按钮,弹出确认框。
![](https://img-blog.csdnimg.cn/img_convert/b87a0f25885e548527aae773edc1bca5.webp?x-oss-process=image/format,png)
2. 确认想要删除的组后,点击确定,会调用函数 deleteGroup 进行组删除。删除成功后,在界面上提示"组删除成功"。
3.3 管理成员
1. 点击组操作栏内管理成员按钮,弹出成员管理对话框。
![](https://img-blog.csdnimg.cn/img_convert/4420bbdf27092991417b17577a5e640d.webp?x-oss-process=image/format,png)
2. 左侧为当前组的非组成员,右侧为当前组的组成员。选中想要移入/移出的用户,通过中间的箭头进行交换后,点击预览修改对组内用户的改动进行预览。
![](https://img-blog.csdnimg.cn/img_convert/27f309c1d0cdf2befca4f0e643394515.webp?x-oss-process=image/format,png)
3. 依次确认该组原组成员,即将移入用户和即将移出用户,确认无误后,在预览弹窗点击确定,会调用脚本 addgroupmember 和 deletegroupmember 完成组内用户的修改。修改成功后,在界面上提示"组成员修改成功"。
![](https://img-blog.csdnimg.cn/img_convert/8453049484d8e22deb25078b29d380a6.webp?x-oss-process=image/format,png)
4. 总结
DolphinDB Web 权限管理模块通过简洁和直观的设计,大幅提升了用户管理和权限配置的效率。管理员可以轻松地创建和删除用户、重置用户密码、分配和调整用户权限,以及管理用户组及其成员。每个操作都经过优化,确保权限管理既便捷又精确,保障数据库系统的安全性。未来,DolphinDB Web 权限管理模块将继续优化用户体验,为用户提供更加安全、高效、智能的数据库管理工具。
原文地址:https://blog.csdn.net/qq_41996852/article/details/140640527
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!