IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> DM8数据库用户和权限管理 -> 正文阅读

[大数据]DM8数据库用户和权限管理

用户和权限管理
用户管理
创建用户不能于模式名或角色名同名。

密码策略
创建用户时要指定密码,用户密码策略由系统参数 PWD_POLICY.
SQL> select * from v$dm_ini where para_name like '%PWD_POLICY' where para_name=‘PWD_POLICY’; 查看密码策略。
修改系统口令策略:SQL> sp_set_para_value(1,‘PWD_POLICY’,4);修改后的策略只针对新用户有用。
查看用户口令策略:SQL> select username,user_id,PASSWORD_VERSIONS from dba_users;
创建用户
SQL> create user DMOA identified by DM;

用户的锁定与解锁
当用户尝试登录,密码错误超过限制的尝试失败次数,用户会被自动锁定。
可以手动锁定和解锁:
锁定SQL> alter user user1 account lock;
解锁alter user user1 account unlock;
修改用户的资源限制(例如当密码错误超过 5 次时,锁定 10 分钟)SQL> alter user user1 limit failed_login_attemps 5,password_lock_time 10;

修改user1用户默认表空间为TBS、默认索引表空间为tbsidx:
SQL> alter user user1 default tablespace tbs default index tablespace tbsidx;

用户删除,使用具有删除用户(DROPUSER)权限的用户删除其他用户,在删除前要保证用户里对象为空。
drop user user2;

权限管理
系统权限:create table; alter database; create tablespace; alter tablespace; drop tablespace; create user; create view; create procedure; create role; create schema;
授予系统权限:grant CREATE TABLE to USER1;
撤销系统权限:revoke
授予对象权限grant SELECT on DMHR CITY to USER1; 撤销:revoke

权限的查看:
系统权限(数据库权限)查看 DBA_SYS_PRIVS select * from dba_sys_privs;
对象权限查看 DBA_TAB_PRIVS select * from dba_tab_privs;
角色权限查看 DBA_ROLE_PRIVS select * from dba_role_privs;
对象权限的赋予和回收:可以赋给用户或角色
将dmhr.employee的查看权限赋予user1:(sysdba用户)SQL> grant select on dmhr.employee to user1;
从user1就可以查看dmhr.employee:SQL> select count(*) from dmhr.employee;
但user1不能查看dmhr.department,没有该权限,没有赋予
回收user1权限:从sysdba用户,revoke select on dmhr.employee from user1;
查询某张表的某些字段,可以赋给用户或角色
sysdba:SQL> grant select(employee_id,employee_name,salary) on dmhr.employee to user1;
user1: 不能查询整个表:但是可以查询employee_id,employee_name,SQL> select employee_id,employee_name,salary from dmhr.employee limit 5;
如果想查询dmhr.employee中的其他列,也没有查询权限。
角色管理
查看角色信息: select * from dba_roles;
默认每种类型的管理员拥有五个角色(DBA、PUBLIC、RESOURCE、SOI、VTI)
DBA:管理员角色,拥有几乎所有的权限。
RESOURCE:拥有创建表、创建视图等对数据库操作的权限,但没有创建用户的权限。
PUBLIC:拥有数据操作权限(增删改查)。
SOI:拥有查询系统表(sys 开头的)
VTI:拥有动态视图(v$开头的查询权限)。
select * from DBA_SYS_PRIVS t where t.GRANTEE=‘PUBLIC’;
select * from DBA_SYS_PRIVS t where t.GRANTEE=‘RESOURCE’;
select * from DBA_TAB_PRIVS t where t.GRANTEE=‘VTI’;
select * from DBA_TAB_PRIVS t where t.GRANTEE=‘SOI’;
新建角色:创建角色role1,并将create table权限赋给user1:(在SYSDBA用户)
create role R1;
grant create table to role1;
grant role1 to user1;
登录user1,并创建表,因为赋予了user1创建表的角色。
回收权限:回收user1的role1的权限,user1不能创建表(在SYSDBA用户)
SQL> revoke role1 from user1;
假如 user1 即拥有角色 role1,也拥有创建表 create table 的权限,此时回收 user1 的 create table 的权限,问 user1 是否还能创建表。
回收user1的create table的权限,但是角色role1的权限并没有禁用,因此还可以创建表。
查看role1的权限:select * from DBA_SYS_PRIVS t where t.GRANTEE=‘ROLE1’;
角色的启用和禁用:
禁用:SQL> sp_set_role(‘ROLE1’,0); 此时user1没有查询权限
启用:SQL> sp_set_role(‘ROLE1’,1);
————————————————

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-11-30 15:41:10  更:2021-11-30 15:43:39 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 9:02:52-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码