人大金仓KCA | 用户与角色

news2025/2/28 13:47:08

人大金仓KCA | 用户与角色

  • 一、知识预备
    • 1. 用户和角色
  • 二、具体实施
    • 1. 用户管理-命令行
      • 1.1 创建和修改用户
      • 1.2 修改用户密码
      • 1.3 修改用户的并发连接数
      • 1.4 修改用户的密码有效期
    • 2.用户管理-EasyKStudio
      • 2.1 创建和修改用户
      • 2.2 修改用户密码
      • 2.3 修改用户的并发连接数
      • 2.4 修改用户的密码有效期
    • 3. 角色管理-命令行
      • 3.1 创建角色
      • 3.3 使用角色对用户授权
    • 4.角色管理-EasyKStudio
      • 4.1 创建角色
      • 4.2 使用角色对用户授权
      • 4.3 验证
    • 5. 不同场景下的不同用户权限需求

OS版本:CentOS-7-x86_64-Everything-2009
KES版本:KingbaseES_V008R006C008B0014_Lin64
许可证版本:license_39893_0.dat(开发版)

一、知识预备

1. 用户和角色

用户

数据库用户通常指的是能够访问和操作数据库系统的人员或程序。用户通过认证和授权机制与数据库进行交互、执行查询、插入、更新和删除等。数据库用户代表数据库的使用者,应该为每个使用者创建一个用户,避免多人使用同一个数据库用户。

角色

将一组具有相同权限的用户组织在一起,这一组具有相同权限的用户就称为角色(Role)。角色在生产系统中一般被视作用户组。数据库角色是数据库管理系统中的一种权限管理机制,它可以将一组权限分配给角色,然后将角色授予用户。通过使用角色,可以简化权限管理,提高系统安全性,并便于系统维护。

在KingBaseES中,用户和角色没有什么区别,向角色赋予login权限,角色也可以登录数据库

  • create role创建角色时:默认使用nologin选项
  • create user创建用户时:默认使用login选项

二、具体实施

1. 用户管理-命令行

1.1 创建和修改用户

[Step1]: 使用system用户登录test数据库,创建 user01 用户,不指定密码

ksql -Usystem -d test
create user user01;
\du user01

在这里插入图片描述

[Step2]: 创建user02用户,指定密码为kingbase

create user user02 password 'kingbase';

在这里插入图片描述

[Step3]: 修改user01用户,授予createdb权限

alter user user01 CREATEDB;

在这里插入图片描述

1.2 修改用户密码

[Step1]: 用户在没有密码的时候不允许登录

ksql -Uuser01 -d test

在这里插入图片描述

[Step2]: 修改用户的密码,密码不允许使用双引号

alter user user01 password 'kingbase';

在这里插入图片描述

1.3 修改用户的并发连接数

[Step1]: 限制用户的最大并发连接数

alter user user01 connection limit 1;

在这里插入图片描述

1.4 修改用户的密码有效期

[Step1]: 将用户的密码有效期设置为已过期

alter user user01 valid until '2023-12-12';

在这里插入图片描述

[Step2]: 将用户的密码有效期设置为永不过期

alter user user01 valid until 'infinity';

在这里插入图片描述

[Step3]: 删除用户

当用户存在依赖关系时,无法删除用户

drop user user02;

在这里插入图片描述

2.用户管理-EasyKStudio

2.1 创建和修改用户

[Step1]: 创建 user11 用户,指定密码为kingbase
在这里插入图片描述
在这里插入图片描述

[Step2]: 修改user11用户,授予createdb权限
在这里插入图片描述
在这里插入图片描述

2.2 修改用户密码

[Step1]: 修改用户的密码
在这里插入图片描述

2.3 修改用户的并发连接数

[Step1]: 限制用户的最大并发连接数
在这里插入图片描述

2.4 修改用户的密码有效期

[Step1]: 将用户的密码有效期设置为永不过期
在这里插入图片描述

[Step2]: 删除用户
在这里插入图片描述
在这里插入图片描述

3. 角色管理-命令行

3.1 创建角色

[Step1]: 创建角色,角色和用户没什么区别,区别在于角色默认不允许登录

create role role01 password 'kingbase';

在这里插入图片描述

3.3 使用角色对用户授权

加入到角色的用户默认会自动继承角色所拥有的全部权限。

[Step1]: 在之前实验中我们创建了一张student表

select * from student;

在这里插入图片描述

[Step2]: 创建两个测试用户,分别授予inherit和noinherit权限

create user test01 password 'kingbase' inherit;
create user test02 password 'kingbase' noinherit;
  • inherit:用户会自动继承所属角色的权限,默认选项
  • noinherit:用户不会继承所属角色的权限
    在这里插入图片描述

[Step3]: 授予role01角色查询权限

grant select on table student to role01;

在这里插入图片描述

[Step4]: 将测试用户加入角色

grant role01 to test01,test02;

在这里插入图片描述

[Step5]: 验证:验证测试用户的查询权限

\c - test01
select * from student;
\c - test02
select * from student;

在这里插入图片描述

4.角色管理-EasyKStudio

4.1 创建角色

[Step1]: 创建角色,用户和角色在【安全性】里面
在这里插入图片描述

在这里插入图片描述

4.2 使用角色对用户授权

[Step1]: 授予role11角色查询权限
在这里插入图片描述

在这里插入图片描述

[Step2]: 创建测试用户test11
在这里插入图片描述

4.3 验证

[Step1]: 新建数据库连接

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

[Step2]: 在【数据库】中找到【test】数据库,点击【模式】,在【public】中找到student表,右键查询数据
在这里插入图片描述
在这里插入图片描述

5. 不同场景下的不同用户权限需求

[Step1]: 超级管理员,对整个实例拥有全部权限

create user super_user superuser;

[Step2]: 库级管理员,对整个数据库拥有全部权限

create user db_user;		# 创建用户 db_user
create database db owner db_user;		# 创建数据库db,指定所属主为db_user

[Step3]: 模式管理员,对指定模式拥有全部权限

create user sc_user;
create schema sc authorization sc_user;	 # 创建模式,指定模式管理员为sc_user

[Step4]: 有两种方式可以让用户加入角色

# 将现有用户加入角色
grant role_name to user_name;

# 新建用户时加入角色
create user user_name in role role_name;

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

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

相关文章

【Azure 架构师学习笔记】- Azure Databricks (12) -- Medallion Architecture简介

本文属于【Azure 架构师学习笔记】系列。 本文属于【Azure Databricks】系列。 接上文 【Azure 架构师学习笔记】- Azure Databricks (11) – UC搭建 前言 使用ADB 或者数据湖,基本上绕不开一个架构“Medallion”, 它使得数据管理更为简单有效。ADB 通过…

智能证件照处理器(深度学习)

功能说明:支持常见证件照尺寸(一寸、二寸、护照等) 智能背景去除(使用深度学习模型)自定义背景颜色选择自动调整尺寸并保持比例实时预览处理效果注意:整合rembg进行抠图,使用Pillow处理图像缩放和背景替换,定义常见证件照尺寸,并提供用户交互选项。首次运行时会自动下…

C++-第十三章:红黑树

目录 第一节:红黑树的特征 第二节:实现思路 2-1.插入 2-1-1.unc为红 2-1-2.cur为par的左子树,且par为gra的左子树(cur在最左边) 2-1-2-1.unc不存在 2-1-2-2.unc为黑 2-1-3.cur为par的右子树,且par为gra的右子树(cur在最右侧) 2-…

推荐3个背景渐变色的wordpress主题

干净、清爽、背景渐变色的wordpress企业主题 ​ 服务类公司wordpress企业主题https://www.jianzhanpress.com/?p8255 红色大气的wordpress企业主题,适合服务行业的公司搭建企业官方网站使用。 ​ wordpress询盘型独立站主题https://www.jianzhanpress.com/?p8258…

Scrapy:隧道代理中移除 Proxy-Authorization 的原理解析

隧道代理中移除 Proxy-Authorization 的原理解析 背景 在 Scrapy 的 HTTP 下载处理中,当使用隧道代理(TunnelingAgent)时,会移除请求头中的 Proxy-Authorization。这个操作看似简单,但背后有着重要的安全考虑和技术原…

微信小程序-二维码绘制

wxml <view bindlongtap"saveQrcode"><!-- 二维码 --><view style"position: absolute;background-color: #FFFAEC;width: 100%;height: 100vh;"><canvas canvas-id"myQrcode" style"width: 200px; height: 200px;ba…

Fiddler 的安装与使用

目录 1、Fiddler 的安装2、Fiddler 的使用 1、Fiddler 的安装 通过Fiddler 官网进行下载&#xff08;下载免费的经典版本&#xff09;&#xff0c;填写用途、邮箱、国家信息即可开始下载。 Fiddler 官网下载链接 双击安装包即可进行安装&#xff0c;显示以下界面说明安装成功。…

Hadoop架构详解

Hadoop 是一个开源的分布式计算系统&#xff0c;用于存储和处理大规模数据集。Hadoop 主要由HDFS&#xff08;Hadoop Distributed File System&#xff09;、MapReduce、Yarn&#xff08;Jobtracker&#xff0c;TaskTracker&#xff09;三大核心组件组成。其中HDFS是分布式文件…

清华大学DeepSeek文档下载,清华大学deepseek下载(完成版下载)

文章目录 前言一、清华大学DeepSeek使用手册下载二、清华大学DeepSeek使用手册思维导图 前言 这是一篇关于清华大学deepseek使用手册pdf的介绍性文章&#xff0c;主要介绍了DeepSeek的定义、功能、使用方法以及如何通过提示语设计优化AI性能。以下是对这些核心内容的简要概述&…

Hadoop第2课(伪分布式集群的搭建)

jdk和hadoop安装包&#xff1a; hadoop-2.9.2.t......等2个文件官方版下载丨最新版下载丨绿色版下载丨APP下载-123云盘 1、用XFTP发送hadoop安装包和jdk到/home/hadoop/目录下&#xff08;hadoop用户的主目录&#xff09; 2、解压jdk安装包到~目录 卸载jdk的命令&#xff1a;r…

使用Crawlee可破题js渲染采集数据

使用 Crawlee 实现自动化爬虫流程 1. Crawlee 简介 Crawlee 是一个强大的爬虫框架&#xff0c;用于快速构建和维护可靠的爬虫。它支持多种爬虫类型&#xff0c;包括基于 Cheerio 和 Playwright 的爬虫&#xff0c;能够高效处理静态和动态网页。 2. 项目目标 通过自动化脚本实…

Fiddler在Windows下抓包Https

文章目录 1.Fiddler Classic 配置2.配置浏览器代理自动代理手动配置浏览器代理 3.抓取移动端 HTTPS 流量&#xff08;可选&#xff09;解决抓取 HTTPS 失败问题1.Fiddler证书过期了 默认情况下&#xff0c;Fiddler 无法直接解密 HTTPS 流量。需要开启 HTTPS 解密&#xff1a; 1…

Java语法基础知识点1

目录 一、数组 1.1数组的初始化&#xff1a; 1.2数组的遍历方法&#xff1a; 1.3数组的常见使用方法&#xff1a; 二、类和对象 2.1构造方法&#xff1a; 2.2this关键字: 三、封装 3.1访问限定符&#xff1a; 3.2static关键字&#xff1a; 3.3代码块&#xff1a; 一…

【新手入门】SQL注入之盲注

一、引言 在我们的注入语句被带入数据库查询但却什么都没有返回的情况我们该怎么办? 例如应用程序返回到一个"通用的"的页面&#xff0c;或者重定向一个通用页面(可能为网站首页)。这时&#xff0c;我们之前学习的SQL注入的办法就无法使用了。这种情况我们称之为无…

python-leetcode-分割等和子集

416. 分割等和子集 - 力扣&#xff08;LeetCode&#xff09; class Solution:def canPartition(self, nums: List[int]) -> bool:total sum(nums)if total % 2 ! 0:return Falsetarget total // 2dp [False] * (target 1)dp[0] Truefor num in nums:for j in range(tar…

趣讲TCP三次握手

一、TCP三次握手简介 TCP&#xff08;Transmission Control Protocol&#xff0c;传输控制协议&#xff09;是一种面向连接的、可靠的、基于字节流的传输层通信协议。在TCP连接中&#xff0c;只有两方进行通信&#xff0c;它使用校验和、确认和重传机制来保证数据的可靠传输。…

基于coze+微信小程序实现图片上传并利用大模型解析

项目截图&#xff1a; 实现代码&#xff08;直接搬去可用&#xff09; 前提&#xff1a;需要填写你的oss配置coze的api授权配置&#xff01;&#xff01;&#xff01; <template><view class"container"><!-- 高斯模糊背景 --><view class&qu…

VMware Fusion 虚拟机Mac版 安装CentOS 7 系统

介绍 CentOS是Community Enterprise Operating System的缩写&#xff0c;也叫做社区企业操作系统。是企业Linux发行版领头羊Red Hat Enterprise Linux的再编译版本&#xff08;是一个再发行版本&#xff09;&#xff0c;而且在RHEL的基础上修正了不少已知的 Bug &#xff0c;相…

java练习(44)

ps:题目来自力扣 两两交换链表中的节点 给你一个链表&#xff0c;两两交换其中相邻的节点&#xff0c;并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题&#xff08;即&#xff0c;只能进行节点交换&#xff09;。 // 定义链表节点类&#xff0c;每个节…

Deepseek 开源周第一天:FlashMLA

Deepseek 隆重开启开源周!第一天我们迎来了FlashMLA。我很高兴带大家了解这项创新,揭秘 FlashMLA 为何能成为 AI 和 GPU 优化领域的变革者。 Deepseek 开源周的热门话题有哪些?