DolphinDB Web 端权限管理:可视化操作指南

在现代数据库管理中,高效和直观的权限管理对于用户的数据安全是至关重要的。过去 DolphinDB 用户需要依赖系统脚本来管理用户和权限,这对于缺乏技术背景的管理员来说既复杂又容易出错。

为了提升用户体验和操作效率,DolphinDB 目前在 Web 上开发了可视化权限操作管理模块,用户可以轻松地设定对数据库、内存表、流表、函数视图的访问限制,得以高效地确保数据库系统安全。

1. 功能简介

在 DolphinDB Web 权限管理模块下,一切关于权限的管理任务变得既直观又富有条理。本模块精心打造了两大控制模块:用户管理和组管理,它们共同构成了 Web 权限管理的核心。

用户管理:用户管理的设计旨在简化账户操作流程。从创建新用户到配置权限范围,每一个功能都经过了细致的优化,确保管理员可以毫不费力地管理整个系统的用户。主要功能包括:

  • 新建用户:以表单的方式快速添加新的数据库用户。
  • 删除用户:删除单个用户或者批量删除多个用户。
  • 设置用户组:将用户归入特定的用户组内,便捷权限分配。
  • 重置用户密码:在用户忘记密码或需要密码更新时,提供一种安全的重置方式。
  • 查看用户权限:通过可视化图表查看每个用户的权限细节。
  • 设置用户权限:自由调整每个用户的权限设置,保障不同权限的精细分配。

组管理:组管理的架构则专注于用户组的整体性管理,它确保了权限设置的集体性和一致性。主要功能包括:

  • 新建组:创建新的分组,以适应不同团队或项目的权限分布需求。
  • 删除组:删除不再需要的群组。
  • 设置组内用户:能够灵活地安排组内成员,随时调整团队配置。
  • 查看组权限:通过一目了然的权限布局视图,管理员无需繁琐查询即可审视各个用户组的权限设置。。
  • 设置组权限:给予特定的用户组一系列权限,实现统一而精确的权限控制。

DolphinDB Web 权限管理模块,凭借其高度组织化的功能设计,不仅提升了管理员的工作效率,也加强了对敏感数据的防护。

2. 用户管理

用户管理是 Web 权限管理模块的重要组成部分,提供了一系列功能,以确保对数据库用户的有效和安全管理。通过这些功能,管理员可以轻松掌控用户访问权限、执行日常管理任务、并维护数据库系统的完整性和安全。以下是用户管理功能的具体介绍:

2.1 新建用户

1. 切换到权限管理模块下的用户管理模块。

2. 点击界面上的新建用户,弹出表单如下图:

图 2-1 新建用户表单

3. 依次输入用户名、密码、确认密码,选择是否分配为管理员、选择初始组,确认无误后点击确定。

4. 确定后,会调用函数 createUser 进行用户创建。创建成功后,在界面上提示"用户创建成功"。

2.2 删除用户

2.2.1 删除单个用户

1. 点击用户列表操作栏内删除按钮,弹出确认框。

图 2-2 单个用户删除

2. 点击确定后,会调用函数 deleteUser 进行用户删除。删除成功后,在界面上提示"用户删除成功"。

2.2.2 批量删除用户

1. 选中想要删除的用户,点击表头上的批量删除按钮,弹出确认框。

图 2-3 批量用户删除

2. 点击确定后,会调用函数 deleteUser 进行用户批量删除。删除成功后,在界面上提示"用户删除成功"。

2.3 设置密码

1. 点击用户列表操作栏内设置密码按钮,弹出设置密码表单。

图 2-4 设置用户密码表单

2. 输入密码以及确认密码后,点击确定。会调用函数 resetPwd 完成用户密码重置,重置成功后,在界面上提示"密码重置成功"。

2.4 设置用户组

1. 点击用户操作栏内设置用户组按钮,弹出用户组管理对话框。

图 2-5 设置用户组按钮

2. 左侧为当前用户未所属组,右侧为当前用户所属组。选中想要移入/移出的组,通过中间的箭头进行交换后,点击预览修改对用户组的改动进行预览。

图 2-6 设置用户组界面

3. 点击预览修改后进入到修改预览界面,依次确认该用户原有组,即将移入组和即将移出组,确认无误后点击确定。会调用函数 addgroupmember 和 deletegroupmember 进行用户组修改。修改成功后,在界面上提示"用户所属组修改成功"。

图 2-7 用户组改动预览界面

2.5 查看权限

1. 点击用户列表操作栏内查看权限按钮,切换到查看权限页面(这里展示的为指定用户及其所属组的权限组合后的最终生效权限),即以 finalAccess = true 的参数调用函数 getUserAccess 。

图 2-8 查看权限按钮

2. 此处可以查看该用户的分布式数据库表权限、共享内存表权限、流数据表权限、函数视图权限以及全局权限(SCRIPT_EXEC、TEST_EXEC、VIEW_OWNER 等等)。表格中绿色代表该用户对某一数据库实体的权限状态为 Allow,红色代表该用户的权限状态为 Deny,灰色代表该用户的权限状态为 None。对此界面进行详细介绍:

    • 导航栏的上半部分的下拉框可以对用户进行切换;
    • 导航栏上部分的选项卡可以对权限类别进行切换;
    • 刷新按钮对当前查看的权限表格数据进行刷新;
    • 返回按钮可以返回到用户列表页面;
    • 设置权限按钮跳转到设置权限页面(见 3.6 节);
    • 搜索框用来查找想要查看的权限对象(数据库/共享内存表/流数据表/函数视图/全局权限);
    • 如果当前选项卡为分布式数据库,可以点击表格内每一行行首的加号按钮,会展开该分布式数据库下的数据表权限。

图 2-9 查看权限页面

2.6 设置权限

点击用户列表操作栏内设置权限按钮,切换到设置权限页面。

图 2-10 设置权限按钮

图 2-11 详细展示了设置权限页面的功能:

  • 导航栏的上半部分的下拉框可以对用户进行切换;
  • 导航栏上部分的选项卡可以对权限类别进行切换;
  • 刷新按钮对当前查看的列表数据进行刷新;
  • 返回按钮可以返回到用户列表页面;
  • 新增权限按钮弹出新增权限表单(见 3.6.1 节);
  • 查看权限按钮跳转到查看权限页面(见 3.5 节);
  • 批量撤销按钮可批量撤销用户被赋予的权限(见 3.6.2 节);
  • 搜索框用来查找想要查看的权限对象(数据库/共享内存表/流数据表/函数视图/全局权限)。

图 2-11 设置权限页面

2.6.1 新增权限

1. 点击新增权限按钮,弹出对话框进行权限新增操作。

图 2-12 新增权限按钮

2. 选择权限类别:授予(grant)/拒绝(deny)权限。

图 2-13 选择权限类别

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。

图 2-14 选择权限类型

4. 选择或输入权限的应用范围(可多选),根据当前选项卡和用户在第 3 步选择的权限类型,会提供不同的权限应用范围,具体而言:

    • 分布式数据库
      • 如果选择了库级权限类型,则只会展示出该集群下的所有分布式数据库;
      • 如果选择了表级权限类型,则会展示出该集群下的所有分布式数据表;
      • 如果选择了 DB_OWNER,则需要用户手动输入应用范围("*" 或以 "*" 结尾的数据库名,前者表示对所有数据库生效,后者表示对指定前缀命名的所有数据库生效)。
    • 共享内存表:展示出所有的共享内存表;
    • 流数据表:展示出所有的流数据表;
    • 函数视图:展示出所有的函数视图;
    • 全局权限
      • 如果选择了 SCRIPT_EXEC、TEST_EXEC、VIEW_OWNER 三种权限:应用范围为全局,此处不用选择或输入;
      • 如果选择了 QUERY_RESULT_MEM_LIMIT 或 TASK_GROUP_MEM_LIMIT:则需要用户手动输入限制内存大小,单位为 GB。

图 2-15 选择权限应用范围

5. 点击预添加按钮,对即将赋予的权限进行预览和确认。

图 2-16 预添加按钮

6. 预览即将赋予的权限,此时根据需要对预添加的权限进行移除

图 2-17 权限添加预览界面

7. 确认无误,点击确认添加按钮,调用函数 grant 和 deny 对用户正式赋予权限,赋予成功后,在界面上提示"权限赋予成功"。

2.6.2 撤销权限

图 2-18 撤销/批量撤销权限


点击撤销/批量撤销后,可对用户已赋予/已禁止的权限进行撤销,会调用函数 revoke 撤销权限,撤销成功后,在界面上提示"撤销成功"。

3. 组管理

在 DolphinDB 的权限管理系统中,我们引入了"组"这一概念,以便于更方便地配置和管理拥有相同权限的用户。这样当权限管理需求发生变化时,只需对组的权限进行一次修改,便可立即影响到组内的所有用户。这种设计大大简化了权限配置和管理的过程,提升了效率。以下对组管理的功能做出介绍(查看权限和设置权限功能与上文一致,不再重复):

3.1 新建组

1. 点击新建组按钮,弹出新建组弹窗。

图 3-1 新建组按钮

2. 进行新建组表单的填写:

  • 输入组名
  • 在非组成员中选择要添加的初始成员
  • 点击中间的箭头,确认选择初始成员;
  • 点击确定后,会调用函数 createGroup 进行组创建,创建成功后,在界面上提示"组创建成功"。

图 3-2 新建组表单

3.2 删除组

对已存在的组可以进行删除操作,可以删除单个组或者批量删除多个组

3.2.1 删除单个组

1. 点击组列表操作栏内删除按钮,弹出确认框。

图 3-3 删除单个组

2. 点击确定后,会调用函数 deleteGroup 进行组删除。删除成功后,在界面上提示"组删除成功"。

3.2.2 批量删除组

1. 选中想要删除的组,点击表头上的批量删除按钮,弹出确认框。

图 3-4 组批量删除

2. 确认想要删除的组后,点击确定,会调用函数 deleteGroup 进行组删除。删除成功后,在界面上提示"组删除成功"。

3.3 管理成员

1. 点击组操作栏内管理成员按钮,弹出成员管理对话框。

图 3-5 组成员管理按钮

2. 左侧为当前组的非组成员,右侧为当前组的组成员。选中想要移入/移出的用户,通过中间的箭头进行交换后,点击预览修改对组内用户的改动进行预览。

图 3-6 组成员管理表单

3. 依次确认该组原组成员,即将移入用户和即将移出用户,确认无误后,在预览弹窗点击确定,会调用脚本 addgroupmember 和 deletegroupmember 完成组内用户的修改。修改成功后,在界面上提示"组成员修改成功"。

图 3-7 组内成员修改预览

4. 总结

DolphinDB Web 权限管理模块通过简洁和直观的设计,大幅提升了用户管理和权限配置的效率。管理员可以轻松地创建和删除用户、重置用户密码、分配和调整用户权限,以及管理用户组及其成员。每个操作都经过优化,确保权限管理既便捷又精确,保障数据库系统的安全性。未来,DolphinDB Web 权限管理模块将继续优化用户体验,为用户提供更加安全、高效、智能的数据库管理工具。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1488845.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

mybatis查询数据字段返回空值

1.描述 数据苦衷实际存储字段全不为空 查询后brand_name/company_name为空 2.原因分析 带下划线的字段&#xff0c;都会返回空值&#xff0c;应该是字段映射出了问题 3.解决方案 在配置文件中添加下划线自动映射为驼峰 <configuration><settings><sett…

如何评价估计量的好坏

目录 三大方法 概念 无偏性 如何计算估计量的无偏性&#xff1f; 步骤 有效性 有效性在不同类型的数据分析中如何评估&#xff1f; 步骤 一致性 一致性原则在实际应用中的挑战有哪些&#xff1f; 挑战 在大样本情况下&#xff0c;如何准确测量估计量的一致性&#xf…

Linux 安装 GDB (无Root 权限)

引入 在Linux系统中&#xff0c;如果你需要在集群或者远程操作没有root权限的机子&#xff0c;安装GDB&#xff08;GNU调试器&#xff09;可能会有些限制&#xff0c;因为通常安装新软件或更新系统文件需要管理员权限。下面我们介绍可以在没有root权限的情况下安装GDB&#xf…

网络安全科普:网络准入控制系统哪个软件最好?

场景&#xff1a; 企业会议室&#xff0c;两人正在进行关于网络安全的讨论。 张无忌&#xff1a;&#xff08;翻阅资料&#xff09;赵姑娘&#xff0c;我听说网络准入控制系统&#xff08;NAC&#xff09;是提升网络安全的重要手段&#xff0c;但具体它有哪些功能呢&#xff1f…

Linux构建远程YUM仓库与NFS共享存储服务

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:Linux运维老纪的首页…

将Android Library项目发布到JitPack仓库

将项目代码导入Github 1.将本地项目目录初始化为 Git 仓库。 默认情况下&#xff0c;初始分支称为 main; 如果使用 Git 2.28.0 或更高版本&#xff0c;则可以使用 -b 设置默认分支的名称。 git init -b main 如果使用 Git 2.27.1 或更低版本&#xff0c;则可以使用 git symbo…

<数据集>水果识别数据集<目标检测>

数据集格式&#xff1a;VOCYOLO格式 图片数量&#xff1a;10012张 标注数量(xml文件个数)&#xff1a;10012 标注数量(txt文件个数)&#xff1a;10012 标注类别数&#xff1a;7 标注类别名称&#xff1a;[Watermelon, Orange, Grape, Apple, peach, Banana, Pineapple] 序…

Redis常用指令(不定期更新)

Redis常用指令&#xff08;不定期更新&#xff09; 查询指定前缀key的数量查看键空间事件开启键空间通知 查询指定前缀key的数量 查询【TEST前缀】的key数量 EVAL "return #redis.call(keys,TEST:*)" 0返回信息 查看键空间事件 config get notify-keyspace-even…

Python | Leetcode Python题解之第284题窥视迭代器

题目&#xff1a; 题解&#xff1a; class PeekingIterator:def __init__(self, iterator):self.iterator iteratorself._next iterator.next()self._hasNext iterator.hasNext()def peek(self):return self._nextdef next(self):ret self._nextself._hasNext self.itera…

AI绘画美女图如何带货? 分享最容易的起号方式,一定别错过!!

学习AI绘画最好的工具有两种。 一个是Midjourney&#xff0c;新手只需要知道提示词怎么写就可以了。 不懂得写&#xff0c;就直接去抄&#xff0c;去复制粘贴&#xff0c;AI绘画最值得鼓励的就是抄。 先学会抄&#xff0c;再考虑改&#xff0c;国外有很多设计师赚钱的方式就…

sql注入的专项练习 sqlilabs(含代码审计)

在做题之前先复习了数据库的增删改查&#xff0c;然后自己用本地的环境&#xff0c;在自己建的库里面进行了sql语句的测试&#xff0c;主要是回顾了一下sql注入联合注入查询的语句和sql注入的一般做题步骤。 1.获取当前数据库 2.获取数据库中的表 3.获取表中的字段名 一、sql…

原型图设计指南:从基础到精通

用户体验设计师和原型设计的主要功能 PM、网站开发工程师通过展示产品内容、结构和粗略布局来沟通最初产品设想的重要工具&#xff0c;说明用户将如何与产品互动&#xff0c;而不是视觉设计。在大厂中&#xff0c;岗位分工更加细致明确&#xff0c;大部分原型都是产品经理做的&…

【Linux】线程互斥和同步

目录 线程互斥 相关概念 互斥量mutex 互斥量的接口 初始化互斥量 销毁互斥量 互斥量加锁/解锁 可重入VS线程安全 概念 可重入与线程安全的联系 可重入与线程安全的区别 死锁 死锁的四个必要条件 避免死锁 避免死锁的算法 线程同步 条件变量 条件变量函数 初始…

Stable Diffusion WebUI本地环境搭建

一、项目代码下载 git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui 二、环境配置 conda create --n stafu python3.10.6 实际上跟自己创建的环境没有关系&#xff0c;项目启动会自动复制这个环境&#xff0c;之后项目根据这个基础环境构建 也可以在自己…

UE5.4内容示例(1)- 学习笔记

https://www.unrealengine.com/marketplace/zh-CN/product/content-examples 《内容示例》是学习UE5的基础示例&#xff0c;可以用此示例熟悉一遍UE5的功能 模型与材质部分 StaticMeshes FBX_Import_Options Material_Advanced Material_Decals Material_Instances Material_N…

5G智能防爆手持终端在石油化工行业中扮演着什么角色?

5G智能防爆手持终端在石油化工行业中扮演着至关重要的角色&#xff0c;主要体现在以下几个方面&#xff1a; 一、确保安全生产 防爆设计&#xff1a;石油化工行业的工作环境往往存在易燃易爆的危险&#xff0c;5G智能防爆手持终端采用特殊材料和设计&#xff0c;能够在这些极端…

华为交换机SSH配置

华为交换机SSH配置 一、 简介 1、SSH概念 SSH是一种用于通过网络连接到远程计算机并执行命令的协议。它提供了加密的通信会话&#xff0c;使得用户可以在不安全的网络中安全地传输数据。SSH协议最初由芬兰的Tatu Ylnen在1995年创建&#xff0c;旨在解决Telnet和非加密的远程…

C++内存管理和模板/stl初识

前言 c兼容C语言&#xff0c;但它因为有类和对象的概念&#xff0c;C语言原生的那套内存管理函数在特定场景下还是有些捉襟见肘的&#xff0c;为此c在C语言的基础上引入新的内存管理方案&#xff0c;今天我们就来简单的认识一下c的内存管理。除此之外&#xff0c;模板也是c引入…

unity2D游戏开发03状态控制

多态和动画 建立player-idle动画&#xff0c;取玩家最后两个图片 选中playcontroller控制器 将玩家动画拖进去 右键player-idle,选择set as layer Default state 右键点击Any State ,点击Make Transition 结果 动画参数 动画参数是动画控制器定义的变量&#xff0c;点击Param…

【leetcode 详解】生成特殊数字的最少操作【中等】(C++思路精析)

题目见下&#xff1a; 测试数据: 解题思路笔记&#xff1a; 最初拿到这道题是很蒙的&#xff0c;联想不到什么数据结构的模型&#xff08;肯定是笔者积累太少了&#xff09;&#xff0c;甚至惯性地想怎么实现“删除数字”的操作&#xff1a;在原字符串中抽出一个字符然后将剩…