linux下查看oracle用户权限

linux下查看oracle用户权限
linux下查看oracle用户权限

select * from dba_tab_privs where GRANTEE like '%SOFT';

linux下oracle用户、权限与角色管理详解

Oracle 数据库用户管理

Oracle 权限设置

一、权限分类:

系统权限:系统规定用户使用数据库的权限。(系统权限是对用户而言)。

实体权限:某种权限用户对其它用户的表或视图的存取权限。(是针对表或视图而言的)。

二、系统权限管理:

1、系统权限分类:

DBA: 拥有全部特权,是系统最高权限,只有DBA才可以创建数据库结构。

RESOURCE:拥有Resource权限的用户只可以创建实体,不可以创建数据库结构。CONNECT:拥有Connect权限的用户只可以登录Oracle,不可以创建实体,不可以创建数据库结构。

对于普通用户:授予connect, resource权限。

对于DBA管理用户:授予connect,resource, dba权限。

2、系统权限授权命令:

[系统权限只能由DBA用户授出:sys, system(最开始只能是这两个用户)]

授权命令:SQL> grant connect, resource, dba to 用户名1 [,用户名2]...;

[普通用户通过授权可以具有与system相同的用户权限,但永远不能达到与sys用户相同的权限,system用户的权限也可以被回收。]

例:

SQL> connect system/manager

SQL> Create user user50 identified by user50;

SQL> grant connect, resource to user50;

查询用户拥有哪里权限:

SQL> select * from dba_role_privs;

SQL> select * from dba_sys_privs;

SQL> select * from role_sys_privs;

删除用户:SQL> drop user 用户名 cascade; //加上cascade则将用户连同其创建的东西全部删除

3、系统权限传递:

增加WITH ADMIN OPTION选项,则得到的权限可以传递。

SQL> grant connect, resorce to user50 with admin option; //可以传递所获权限。

4、系统权限回收:系统权限只能由DBA用户回收

命令:SQL> Revoke connect, resource from user50;

系统权限无级联,即A授予B权限,B授予C权限,如果A收回B的权限,C的权限不受影响;系统权限可以跨用户回收,即A可以直接收回C用户的权限。

三、实体权限管理

1、实体权限分类:select, update, insert, alter, index, delete, all //all包括所有权限

execute //执行存储过程权限

user01:

SQL> grant select, update, insert on product to user02;

SQL> grant all on product to user02;

user02:

SQL> select * from user01.product;

// 此时user02查user_tables,不包括user01.product这个表,但如果查all_tables则可以查到,因为他可以访问。

3. 将表的操作权限授予全体用户:

SQL> grant all on product to public; // public表示是所有的用户,这里的all权限不包括drop。

[实体权限数据字典]:

SQL> select owner, table_name from all_tables; // 用户可以查询的表

SQL> select table_name from user_tables; // 用户创建的表

SQL> select grantor, table_schema, table_name, privilege from all_tab_privs; // 获权可以存取的表(被授权的)

SQL> select grantee, owner, table_name, privilege from user_tab_privs; // 授出权限的表(授出的权限)

4. DBA用户可以操作全体用户的任意基表(无需授权,包括删除):

DBA用户:

SQL> Create table stud02.product(

id number(10),

name varchar2(20));

SQL> drop table stud02.emp;

SQL> create table stud02.employee

as

select * from scott.emp;

5. 实体权限传递(with grant option):

user01:

SQL> grant select, update on product to user02 with grant option; // user02得到权限,并可以传递。

6. 实体权限回收:

user01:

SQL>Revoke select, update on product from user02; //传递的权限将全部丢失。

一、创建用户的Profile文件

SQL> create profile student limit // student为资源文件名

FAILED_LOGIN_ATTEMPTS 3 //指定锁定用户的登录失败次数

PASSWORD_LOCK_TIME 5 //指定用户被锁定天数

PASSWORD_LIFE_TIME 30 //指定口令可用天数

二、创建用户

SQL> Create User username

Identified by password

Default Tablespace tablespace

Temporary Tablespace tablespace

Profile profile

Quota integer/unlimited on tablespace;

例:

SQL> Create user acc01

identified by acc01 // 如果密码是数字,请用双引号括起来

default tablespace account

temporary tablespace temp

profile default

quota 50m on account;

SQL> grant connect, resource to acc01;

[*] 查询用户缺省表空间、临时表空间

SQL> select username, default_tablespace, temporary_tablespace from dba_users; [*] 查询系统资源文件名:

SQL> select * from dba_profiles;

资源文件类似表,一旦创建就会保存在数据库中。

SQL> select username, profile, default_tablespace, temporary_tablespace from dba_users;

SQL> create profile common limit

failed_login_attempts 5

idle_time 5;

SQL> Alter user acc01 profile common;

三、修改用户:

SQL> Alter User 用户名

Identified 口令

Default Tablespace tablespace

Temporary Tablespace tablespace

Profile profile

Quota integer/unlimited on tablespace;

1、修改口令字:

SQL>Alter user acc01 identified by "12345";

2、修改用户缺省表空间:

SQL> Alter user acc01 default tablespace users;

3、修改用户临时表空间

SQL> Alter user acc01 temporary tablespace temp_data;

4、强制用户修改口令字:

SQL> Alter user acc01 password expire;

5、将用户加锁

SQL> Alter user acc01 account lock; // 加锁

SQL> Alter user acc01 account unlock; // 解锁

四、删除用户

SQL>drop user 用户名; //用户没有建任何实体

SQL> drop user 用户名 CASCADE; // 将用户及其所建实体全部删除*1. 当前正连接的用户不得删除。

五、监视用户:

1、查询用户会话信息:

SQL> select username, sid, serial#, machine from v$session; 2、删除用户会话信息:

SQL> Alter system kill session 'sid, serial#';

3、查询用户SQL语句:

SQL> select user_name, sql_text from v$open_cursor;

SQL> ALTER SESSION SET

NLS_LANGUAGE= 'SIMPLIFIED CHINESE'

NLS_TERRITORY= 'CHINA'

NLS_CURRENCY= 'RMB'

NLS_ISO_CURRENCY= 'CHINA'

NLS_NUMERIC_CHARACTERS= '.,'

NLS_CALENDAR= 'GREGORIAN'

NLS_DATE_FORMAT= 'yyyy-mm-dd dy'

NLS_DATE_LANGUAGE= 'SIMPLIFIED CHINESE'

NLS_SORT= 'BINARY'

TIME_ZONE= '+08:00'

NLS_DUAL_CURRENCY = 'RMB'

NLS_TIME_FORMAT = 'HH.MI.SSXFF AM'

NLS_TIMESTAMP_FORMAT = 'DD-MON-RR HH.MI.SSXFF AM'

NLS_TIME_TZ_FORMAT = 'HH.MI.SSXFF AM TZH:TZM'

NLS_TIMESTAMP_TZ_FORMAT = 'DD-MON-RR HH.MI.SSXFF AM TZH:TZM'

一、Oracle 权限管理

SQL> grant connect, resource, dba to acc01;

SQL> revoke connect, resource from acc01;

二、Oracle 角色管理

SQL> Create Role

Identified by password/ Not Identified;

SQL> Alter Role ...

SQL> Grant to ;

SQL> Grant to

SQL> Set Role

All Except / None

Oracle系统中用户权限的赋予

Oracle系统中用户权限的赋予,查看和管理. 在Oracle数据库中,用户的权限分为两种(在这里我们不讨论dba或oper的权限,只考虑普通用户的权限),分别是System Privilege系统权限和User Table Privilege用户数据表权限. 1.首先,创建用户,以下几条命令可以创建一个用户,前提是必须以DBA的身份登录(如果你不是DBA,不要看下去了): create user DB_USER identified by DB_USER_PW '创建用户DB_USER,密码为DB_USER_PW grant create session to DB_USER '给用户创建会话的权限 grant resource to DB_USER 2.当用户建立后,会自动在Oracle数据库系统中生成属于该用户的Scheme (可以理解为所有属于该用户的表,视图....等对象的集合). 该用户可以将对这些对象的访问权限赋予其它的系统用户. 3.该用户用sqlplus登录后,以下命令可以看到该用户的权限(该部分取自于CNOUG网站): 本用户读取其他用户对象的权限: select * from user_tab_privs; 本用户所拥有的系统权限: select * from user_sys_privs; ORACLE数据库用户与权限管理 ORACLE是多用户系统,它允许许多用户共享系统资源。为了保证数据库系统的安全,数据库管理系统配置了良好的安全机制。 2. 1 ORACLE数据库安全策略 建立系统级的安全保证 系统级特权是通过授予用户系统级的权利来实现,系统级的权利(系统特权)包括:建立表空间、建立用户、修改用户的权利、删除用户等。系统特权可授予用户,也可以随时回收。ORACLE系统特权有80多种。 建立对象级的安全保证 对象级特权通过授予用户对数据库中特定的表、视图、序列等进行操作(查询、增、删改)的权利来实现。 建立用户级的安全保证 用户级安全保障通过用户口令和角色机制(一组权利)来实现。引入角色机制的目的是简化对用户的授权与管理。做法是把用户按照其功能分组,为每个用户建立角色,然后把角色分

【VIP专享】Oracle权限、角色和用户

Oracle数据库权限、角色和用户总结 前言: ORACLE数据库系统预先定义了CONNECT 、RESOURCE、DBA、EXP_FULL_DATABASE、IMP_FULL_DATABASE五个角色。 CONNECT具有创建表、视图、序列等特权;(alter session create cluster ) RESOURCE具有创建过程、触发器、表、序列等特权、 DBA具有全部系统特权; EXP_FULL_DATABASE、IMP_FULL_DATABASE具有卸出与装入数据库的特权。 权限管理 一、权限分类 系统权限:系统规定用户使用数据库的权限。(系统权限是对用户而言)。 实体权限:某种权限用户对其它用户的表或视图的存取权限。(是针对表或视图而言的)。 二、系统权限管理: 1、系统权限分类: DBA: 拥有全部特权,是系统最高权限,只有DBA才可以创建数据库结构。 RESOURCE:拥有Resource权限的用户只可以创建实体,不可以创建数据库结构。 CONNECT:拥有Connect权限的用户只可以登录Oracle,不可以创建实体,不可以创建数据库结构。 对于普通用户:授予connect, resource权限。 对于DBA管理用户:授予connect,resource, dba权限。 2、系统权限授权命令: [系统权限只能由DBA用户授出:sys, system(最开始只能是这两个用户)] 授权命令:SQL> grant connect, resource, dba to 用户名1 [,用户名2]...; [普通用户通过授权可以具有与system相同的用户权限,但永远不能达到与sys用户相同的权限,system用户的权限也可以被回收。] 例:

LINUX如何判断指定用户对指定目录具有的权限具体介绍

脚本名:power.sh 脚本内容: 代码如下: #!/bin/sh username3=$1 dir_name2=$2 # get existing directory file_path=$dir_name2 while true do if [ -d $file_path ];then break; fi file_path=${file_path%/*} done dir_name2=$file_path # Judge whether the user exists grep ^$username3: /etc/passwd ;/dev/null if [ $? -ne 0 ];then echo This user $username3 does not exist. exit 4 fi

#echo username : $username3 group4=` grep ^$username3: /etc/passwd |awk -F : {'print $4'}|xargs -i grep {} /etc/group|cut -d: -f1` #echo group : $group4 su -l $username3 -c test -r $dir_name2 is_read=$? su -l $username3 -c test -x $dir_name2 is_exe=$? su -l $username3 -c test -w $dir_name2 is_write=$? $is_read_str $is_exe_str $is_write_str if [ $is_read -eq 0 ];then is_read_str=r else is_read_str=- fi if [ $is_exe -eq 0 ];then is_exe_str=x else is_exe_str=-

oracle创建用户及权限说明文档

Oraclec创建用户 一、命令行创建用户具体步骤如下: 1.以管理员身份登录系统并创建一个新的表空间,操作如下: 操作如下: 2. Next 5M maxsize 100M ;----每次扩大5M,但最大为100M

3. Temporary tablespace test1_temp; ----设置临时表空间为test1_temp 4. 操作如下 5. 操作如下 6.最后提交即可。Commit 二、表空间的增删改查 1. 2. 如下操作,其中标示出来的路径即为查询到的要更改的表空间的具体路径,将该路径加到语句2中的单引号处即可。

3. 4.

四、权限的设置 1.权限的分类: 系统权限:系统规定用户使用数据库的权限。(系统权限是对用户而言)。 实体权限:某种权限用户对其它用户的表或视图的存取权限。(是针对表或视图而言的)。 2.系统权限管理 DBA: 拥有全部特权,是系统最高权限,只有DBA才可以创建数据库结构。 RESOURCE: 拥有Resource权限的用户只可以创建实体,不可以创建数据库结构。 CONNECT: 拥有Connect权限的用户只可以登录Oracle,不可以创建实体,不可以创建数据库结构。 对于普通用户:授予connect, resource权限。 对于DBA管理用户:授予connect,resource, dba权限。 3.系统权限授权命令及用户管理。 [系统权限只能由DBA用户授出:sys, system(最开始只能是这两个用户)] 授权命令:SQL> grant connect, resource, dba to 用户名1 [,用户名2]...; [普通用户通过授权可以具有与system相同的用户权限,但永远不能达到与sys 用户相同的权限,system用户的权限也可以被回收。] 例: SQL> connect system/manager SQL> Create user user50 identified by user50; SQL> grant connect, resource to user50; 查询用户拥有哪里权限: SQL> select * from dba_role_privs; SQL> select * from dba_sys_privs; SQL> select * from role_sys_privs; 删除用户:SQL> drop user 用户名cascade; //加上cascade则将用户连同其创建的东西全部删除。 4.给新建的用户分配只有连接以及对某些表和视图的查询权限: oracle授权对视图的查询.docx 5.用户管理: 1)、创建用户的Profile文件 SQL> create profile student limit // student为资源文件名 FAILED_LOGIN_ATTEMPTS 3 //指定锁定用户的登录失败次数 PASSWORD_LOCK_TIME 5 //指定用户被锁定天数 PASSWORD_LIFE_TIME 30 //指定口令可用天数 2)、创建用户 SQL> Create User username Identified by password Default Tablespace tablespace Temporary Tablespace tablespace Profile profile Quota integer/unlimited on tablespace; 6.用户密码过期问题: 首先,查看系统中有哪些用户:

linux 新建用户、用户组及用户权限

Linux 系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也可以帮助用户组织文件,并为用户提供安全性保护。每个用户账号都拥有一个惟一的用户名和各自的口令。用户在登录时键入正确的用户名和口令后,就能够进入系统和自己的主目录。 实现用户账号的管理,要完成的工作主要有如下几个方面: ·用户账号的添加、删除与修改。 ·用户口令的管理。 ·用户组的管理。 一、Linux系统用户账号的管理 用户账号的管理工作主要涉及到用户账号的添加、修改和删除。 添加用户账号就是在系统中创建一个新账号,然后为新账号分配用户号、用户组、主目录和登录Shell 等资源。刚添加的账号是被锁定的,无法使用。 1、添加新的用户账号使用useradd命令,其语法如下: 代码: useradd 选项用户名 其中各选项含义如下: 代码: -c comment 指定一段注释性描述。 -d 目录指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。 -g 用户组指定用户所属的用户组。 -G 用户组,用户组指定用户所属的附加组。 -s Shell文件指定用户的登录Shell。 -u 用户号指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。 用户名指定新账号的登录名。 例1: 代码: # useradd –d /usr/sam -m sam 此命令创建了一个用户sam, 其中-d和-m选项用来为登录名sam产生一个主目录/usr/sam(/usr为默认的用户主目录所在的父目录)。 例2: 代码: # useradd -s /bin/sh -g group –G adm,root gem 此命令新建了一个用户gem,该用户的登录Shell是/bin/sh,它属于group用户组,同时又属于

oracle常用权限语句

oracle 用户创建及权限设置 权限: create session create table unlimited tablespace connect resource dba 例: #sqlplus /nolog SQL> conn / as sysdba; SQL>create user username identified by password SQL> grant dba to username; SQL> conn username/password SQL> select * from user_sys_privs; 我们将从创建 Oracle 用户权限表开始谈起,然后讲解登陆等一般性动作,使大家对 Oracle 用户权限表有个深入的了解。 一、创建 sys;//系统管理员,拥有最高权限 system;//本地管理员,次高权限 scott;//普通用户,密码默认为tiger,默认未解锁 二、登陆sqlplus / as sysdba;// 登陆sys帐户sqlplus sys as sysdba;// 同上 sqlplus scott/tiger;//登陆普通用户scott sqlplus sys as sysdba;//同上 sqlplus scott/tiger;//登陆普通用户scott 三、管理用户 create user zhangsan;//在管理员帐户下,创建用户zhangsan alter user scott identified by tiger;//修改密码

四,授予权限 1、默认的普通用户scott默认未解锁,不能进行那个使用,新建的用户也没有任何权限,必须授予权限 /*管理员授权*/ grant create session to zhangsan;//授予zhangsan用户创建session的权限,即登陆权限 grant unlimited session to zhangsan;//授予zhangsan用户使用表空间的权限 grant create table to zhangsan;//授予创建表的权限 grante drop table to zhangsan;//授予删除表的权限 grant insert table to zhangsan;//插入表的权限 grant update table to zhangsan;//修改表的权限 grant all to public;//这条比较重要,授予所有权限(all)给所有用户(public) 2、oralce对权限管理比较严谨,普通用户之间也是默认不能互相访问的,需要互相授权 /*oralce对权限管理比较严谨,普通用户之间也是默认不能互相访问的*/ grant select on tablename to zhangsan;//授予zhangsan用户查看指定表的权限 grant drop on tablename to zhangsan;//授予删除表的权限 grant insert on tablename to zhangsan;//授予插入的权限 grant update on tablename to zhangsan;//授予修改表的权限 grant insert(id) on tablename to zhangsan; grant update(id) on tablename to zhangsan;//授予对指定表特定字段的插入和修改权限,注意,只能是insert和update grant alert all table to zhangsan;//授予zhangsan用户alert任意表的权限 五、撤销权限 基本语法同grant,关键字为revoke 六、查看权限 select * from user_sys_privs;//查看当前用户所有权限 select * from user_tab_privs;//查看所用用户对表的权限 七、操作表的用户的表 /*需要在表名前加上用户名,如下*/ select * from zhangsan.tablename 八、权限传递 即用户A将权限授予B,B可以将操作的权限再授予C,命令如下: grant alert table on tablename to zhangsan with admin option;//关键字 with admin option grant alert table on tablename to zhangsan with grant option;//关键字 with grant option效果和admin类似 九、角色 角色即权限的集合,可以把一个角色授予给用户 create role myrole;//创建角色

Linux目录和权限设置

Linux文件和目录访问权限设置 一、文件和目录权限概述 在linux中的每一个文件或目录都包含有访问权限,这些访问权限决定了谁能访问和如何访问这些文件和目录。 通过设定权限可以从以下三种访问方式限制访问权限:只允许用户自己访问;允许一个预先指定的用户组中的用户访问;允许系统中的任何用户访问。同时,用户能够控制一个给定的文件或目录的访问程度。一个文件活目录可能有读、写及执行权限。当创建一个文件时,系统会自动地赋予文件所有者读和写的权限,这样可以允许所有者能够显示文件内容和修改文件。文件所有者可以将这些权限改变为任何他想指定的权限。一个文件也许只有读权限,禁止任何修改。文件也可能只有执行权限,允许它想一个程序一样执行。 三种不同的用户类型能够访问一个目录或者文件:所有着、用户组或其他用户。所有者就是创建文件的用户,用户是所有用户所创建的文件的所有者,用户可以允许所在的用户组能访问用户的文件。通常,用户都组合成用户组,例如,某一类或某一项目中的所有用户都能够被系统管理员归为一个用户组,一个用户能够授予所在用户组的其他成员的文件访问权限。最后,用户也将自己的文件向系统内的所有用户开放,在这种情况下,系统内的所有用户都能够访问用户的目录或文件。在这种意义上,系统内的其他所有用户就是other用户类。 每一个用户都有它自身的读、写和执行权限。第一套权限控制访问自己的文件权限,即所有者权限。第二套权限控制用户组访问其中一个用户的文件的权限。第三套权限控制其他所有用户访问一个用户的文件的权限,这三套权限赋予用户不同类型(即所有者、用户组和其他用户)的读、写及执行权限就构成了一个有9种类型的权限组。 我们可以用-l参数的ls命令显示文件的详细信息,其中包括权限。如下所示: [root@localhost ~]# ls -lh 总用量 368K -rw-r--r-- 1 root root 12K 8月 15 23:18 conkyrc.sample drwxr-xr-x 2 root root 48 9月 4 16:32 Desktop -r--r--r-- 1 root root 325K 10月 22 21:08 libfreetype.so.6

linux用户权限的管理

linux用户权限的管理 linux用户权限的管理 Posted on 2009-09-24 10:13 Prayer 阅读(2405) 评论(0) 编辑收藏引用所属分类: U基础管理 在Linux操作系统中,root的权限是最高的,也被称为超级权限的拥有者。普通用户无法执行的操作,root用户都能完成,所以也被称之为超级管理用户。在系统中,每个文件、目录和进程,都归属于某一个用户,没有用户许可其它普通用户是无法操作的,但对root除外。root用户的特权性还表现在root可以超越任何用户和用户组来对文件或目录进行读取、修改或删除(在系统正常的许可范围内);对可执行程序的执行、终止;对硬件设备的添加、创建和移除等;也可以对文件和目录进行属主和权限进行修改,以适合系统管理的需要(因为root是系统中权限最高的特权用户);一、对超级用户和普通用户的理解;1、什么是超级用户;在所有Linux系统中,系统都是通过UID来区分用户权限级别的,而UID为0的用户被系统约定为是具有超级权限。超级用户具有在系统约定的最高权限满园内操作,所以说超级用户

可以完成系统管理的所有工具;我们可以通过/etc/passwd 来查得UID为0的用户是root,而且只有root对应的UID 为0,从这一点来看,root用户在系统中是无可替代的至高地位和无限制权限。root 用户在系统中就是超级用户;2、理解UID 和用户的对应关系当系统默认安装时,系统用户和UID 是一对一的对关系,也就是说一个UID 对应一个用户。我们知道用户身份是通过UID 来确认的,我们在《用户(user)和用户组(group)配置文件详解》中的UID 的解说中有谈到?UID 是确认用户权限的标识,用户登录系统所处的角色是通过UID 来实现的,而非用户名;把几个用户共用一个UID 是危险的,比如我们把普通用户的UID 改为0,和root共用一个UID ,这事实上就造成了系统管理权限的混乱。如果我们想用root权限,可以通过su或sudo 来实现;切不可随意让一个用户和root分享同一个UID ;?在系统中,能不能让UID 和用户是一对多的关系?是可以的,比如我们可以把一个UID为0这个值分配给几个用户共同使用,这就是UID 和用户的一对多的关系。但这样做的确有点危险;相同UID的用户具有相同的身份和权限。比如我们在系统中把beinan这个普通用户的UID改为0后,事实上这个普通用户就具有了超级权限,他的能力和权限和root用户一样;用户beinan所有的操作都将被标识为root 的操作,因为beinan的UID为0,而UID为0的用户是root ,

ORACLE数据库用户与权限管理

ORACLE数据库用户与权限管理ORACLE是多用户系统,它允许许多用户共享系统资源。为了保证数据库系统的安全,数据库管理系统配置了良好的安全机制。 2.1 ORACLE数据库安全策略 建立系统级的安全保证 系统级特权是通过授予用户系统级的权利来实现,系统级的权利(系统特权)包括:建立表空间、建立用户、修改用户的权利、删除用户等。系统特权可授予用户,也可以随时回收。ORACLE系统特权有80多种。 建立对象级的安全保证 对象级特权通过授予用户对数据库中特定的表、视图、序列等进行操作(查询、增、删改)的权利来实现。 建立用户级的安全保证 用户级安全保障通过用户口令和角色机制(一组权利)来实现。引入角色机制的目的是简化对用户的授权与管理。做法是把用户按照其功能分组,为每个用户建立角色,然后把角色分配给用户,具有同样角色的用户有相同的特权。 2.2 用户管理 ORACLE用户管理的内容主要包括用户的建立、修改和删除用户的建立

2.3系统特权管理与控制 ORACLE 提供了80多种系统特权,其中每一个系统特权允许用户执行一个或一类数据库操作。 授予系统特权 回收系统特权 显示已被授予的系统特权(某用户的系统级特权) 2.4 对象特权管理与控制 ORACLE对象特权指用户在指定的表上进行特殊操作的权利。这些特殊操作包括增、删、改、查看、执行(存储过程)、引用(其它表字段作为外键)、索引等。 授予对象特权

//级联授权 回收对象特权 显示已被授予的全部对象特权 2.5 角色的管理 ORACLE的角色是命名的相关特权组(包括系统特权与对象特权),ORACLE用它来简化特权管理,可把它授予用户或其它角色。 ORACLE数据库系统预先定义了CONNECT 、RESOURCE、 DBA、 EXP_FULL_DATABASE、IMP_FULL_DATABASE五个角色。CONNECT具有创建表、视图、序列等特权;RESOURCE具有创建过程、触发器、表、序列等特权、DBA具有全部系统特权;EXP_FULL_DATABASE、 IMP_FULL_DATABASE具有卸出与装入数据库的特权。 通过查询sys.dba_sys_privs可以了解每种角色拥有的权利。 授予用户角色

实训-Linux下用户和组的管理和权限命令操作

实训4 Linux下用户和组的管理、权限及相关命令 一.实验目的: 1.掌握在Linux系统下利用命令方式实现用户和组的管理; 2.掌握Linux权限命令的基本使用; 二.实验内容: 1.用户和组的建立和管理; 2.Red Hat Linux 9.0系统下权限操作命令的使用; 三.实验步骤: 1.用户的管理 1) 创建一个新用户user01,设置其主目录为/home/user01: #useradd -d /home/user01 -m user01 #useradd -m -u 2046 -g 1000 -d /tmp/hdf -s /bin/tcsh -c friend hdf 2) 查看文件/etc/passwd和文件/etc/shadow的最后2行,查看是如何记录的。 #more /etc/passwd #more /etc/shadow #more /etc/group 3)给用户user01设置密码: #passwd user01 4) 再次查看文件/etc/passwd和文件/etc/shadow的最后一行,看看有什么变化。 #more /etc/passwd # more /etc/shadow 5)使用Putty连接主机,在终端上用user01用户登录系统,看能否登录成功。 登录成功后显示user01的当前工作目录: $pwd 6) 锁定用户user01,在主机上使用:

#passwd -l user01 7) 查看文件/etc/shadow文件的最后一行,看看有什么变化。 # more /etc/shadow 8) 再次使用Putty连接主机,在终端上用user01用户登录系统,看能否登录成功。 9) 解除对用户user01的锁定: #passwd -u user01 10) 查看usermod命令的联机手册: #man usermod 11) 使用usermod给user01加上注释:”this is a test user”,如何操作, 给出操作命令,并查看文件/etc/passwd的最后一行,看看有什么变化: #less /etc/passwd 12) 使用usermod更改用户user01的帐户名为user03,如何操作,给出操作命令, 并查看文件/etc/passwd的最后一行,看看有什么变化: #less /etc/passwd 2.组的管理 1) 创建一个新组stuff,gid为10000: #groupadd -g 10000 stuff 2) 查看/etc/group文件的最后一行,看看是如何设置的。 # cat /etc/group 3) 创建一个新帐户user02,并把他的起始组和附属组都设为stuff: #useradd –g stuff –G stuff user02 4) 查看/etc/group文件的最后一行,看看有什么变化。 # cat /etc/group 5) 将用户user01增加到组stuff中: #usermod –G 10000 user01

oracle 查看用户、权限、角色

查看用户、权限、角色的命令和视图 a 1.查看所有用户: select * from dba_users; select * from all_users; select * from user_users; 2.查看用户系统权限: select * from dba_sys_privs; select * from session_privs; select * from user_sys_privs; 3.查看用户对象权限: select * from dba_tab_privs; select * from all_tab_privs; select * from user_tab_privs; 4.查看所有角色: select * from dba_roles; 5.查看用户所拥有的角色: select * from dba_role_privs; select * from user_role_privs; b 概述 与权限,角色相关的视图大概有下面这些: DBA_SYS_PRIVS: 查询某个用户所拥有的系统权限 USER_SYS_PRIVS: 查询当前用户所拥有的系统权限 SESSION_PRIVS: 查询当前用户所拥有的全部权限 ROLE_SYS_PRIVS:查询某个角色所拥有的系统权限 注意: 要以SYS用户登陆查询这个视图,否则返回空. ROLE_ROLE_PRIVS: 当前角色被赋予的角色 SESSION_ROLES: 当前用户被激活的角色 USER_ROLE_PRIVS: 当前用户被授予的角色 另外还有针对表的访问权限的视图: TABLE_PRIVILEGES ALL_TAB_PRIVS ROLE_TAB_PRIVS: 某个角色被赋予的相关表的权限 oracle与用户角色权限相关的视图 Oracle 本身的数据字典设计我个人觉得很合理, 因为DBA_xxx, ALL_xxx,USER_xxx 让人一看大概就知道这个视图是干什么用的. 本文简要总结了一下与权限,角色相关的视图. 一. 概述 与权限,角色相关的视图大概有下面这些: 1、DBA_SYS_PRIVS: 查询某个用户所拥有的系统权限。 2、USER_SYS_PRIVS: 查询当前用户所拥有的系统权限。

Linux超级用户权限控制

在Linux操作系统中,root的权限是最高的,也被称为超级权限的拥有者。普通用户无法执行的操作,root用户都能完成,所以也被称之为超级管理用户。 在系统中,每个文件、目录和进程,都归属于某一个用户,没有用户许可其它普通用户是无法操作的,但对root除外。root用户的特权性还表现在root可以超越任何用户和用户组来对文件或目录进行读取、修改或删除(在系统正常的许可范围内);对可执行程序的执行、终止;对硬件设备的添加、创建和移除等;也可以对文件和目录进行属主和权限进行修改,以适合系统管理的需要(因为root是系统中权限最高的特权用户); 一、对超级用户和普通用户的理解; 1、什么是超级用户; 在所有Linux系统中,系统都是通过UID来区分用户权限级别的,而UID为0的用户被系统约定为是具有超级权限。超级用户具有在系统约定的最高权限满园内操作,所以说超级用户可以完成系统管理的所有工具;我们可以通过/etc/passwd 来查得UID为0的用户是root,而且只有root对应的UID为0,从这一点来看,root用户在系统中是无可替代的至高地位和无限制权限。root用户在系统中就是超级用户; 2、理解UID 和用户的对应关系 当系统默认安装时,系统用户和UID 是一对一的对关系,也就是说一个UID 对应一个用户。我们知道用户身份是通过UID 来确认的,我们在《用户(user)和用户组(group)配置文件详解》中的UID 的解说中有谈到“UID 是确认用户权限的标识,用户登录系统所处的角色是通过UID 来实现的,而非用户名;把几个用户共用一个UID 是危险的,比如我们把普通用户的UID 改为0,和root共用一个UID ,这事实上就造成了系统管理权限的混乱。如果我们想用root权限,可以通过su或sudo来实现;切不可随意让一个用户和root分享同一个UID ;” 在系统中,能不能让UID 和用户是一对多的关系?是可以的,比如我们可以把一个UID为0这个值分配给几个用户共同使用,这就是UID 和用户的一对多的关系。但这样做的确有点危险;相同UID的用户具有相同的身份和权限。比如我们在系统中把beinan这个普通用户的UID改为0后,事实上这个普通用户就具有了超级权限,他的能力和权限和root用户一样;用户beinan

如何查看oracle用户具有的权限和角色

如何查看oracle用户具有的权限和角色 上次有同学问我,如何查看一个oracle用户具有的权限和角色,我一时没答上来,回头好好研究了一下,记录一下,备查: 1.查看所有用户: select * from dba_users; select * from all_users; select * from user_users; 2.查看用户或角色系统权限(直接赋值给用户或角色的系统权限): select * from dba_sys_privs; select * from user_sys_privs; 3.查看角色(只能查看登陆用户拥有的角色)所包含的权限 sql>select * from role_sys_privs; 4.查看用户对象权限: select * from dba_tab_privs; select * from all_tab_privs; select * from user_tab_privs; 5.查看所有角色: select * from dba_roles; 6.查看用户或角色所拥有的角色: select * from dba_role_privs; select * from user_role_privs; 7.查看哪些用户有sysdba或sysoper系统权限(查询时需要相应权限) select * from V$PWFILE_USERS 比如我要查看用户wzsb的拥有的权限: SQL> select * from dba_sys_privs where grantee='WZSB';

GRANTEE PRIVILEGE ADMIN_OPTION ------------------------------ ---------------------------------------- ------------ WZSB CREATE TRIGGER NO WZSB UNLIMITED TABLESPACE NO 比如我要查看用户wzsb的拥有的角色: SQL> select * from dba_role_privs where grantee='WZSB'; GRANTEE GRANTED_ROLE ADMIN_OPTION DEFAULT_ROLE ------------------------------ ------------------------------ ------------ ------------ WZSB DBA NO YES 查看一个用户所有的权限及角色 select privilege from dba_sys_privs where grantee='WZSB' union select privilege from dba_sys_privs where grantee in (select granted_role from dba_role_privs where grantee='WZSB' );

Linux用户权限管理之二(用户管理工具)

Linux用户权限管理之二(用户管理工具) 一.添加、切换、删除用户组命令groupadd/newgrp/groupdel 1.groupadd命令 用来新建一个用户组。语法格式为: groupadd [-g gid [-o]] [-r] [-f] group 各个选项具体含义如下: -g:指定新建用户组的GID号,该GID号必须唯一,不能和其它用户组的GID号重复。-o:一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。-n group_name:修改用户组名为group_name 例如: 创建一个linuxfans的用户组和一个fanslinux用户组,GID分别为1020和1030 [root@localhost ~]# groupadd -g 1020 linuxfans [root@localhost ~]# groupadd -g 1030 fanslinux [root@localhost ~]# more /etc/group|grep linuxfans linuxfans:x:1020: [root@localhost ~]# more /etc/group|grep fanslinux fanslinux:x:1030: 思考:如果实现下列两个命令 1:现在如果我想再创建一个组,组名为abc,gid为1030 2.newgrp命令

如果一个用户同时属于多个用户组,那么用户可以在用户组之间切换,以便具有其他用户组的权限,newgrp主要用于在多个用户组之间进行切换,语法格式为: newgrp <用户组> 例子:下面通过实例讲述newgrp的用法: 首先建立了3个用户组group1、group2和group3. [root@localhost ~]# groupadd group1 [root@localhost ~]# groupadd group2 [root@localhost ~]# groupadd group3 下面创建了一个用户user1,同时指定user1的主用户组为group1,附加用户组为group2和group3 [root@localhost ~]# useradd -g group1 -G group2,group3 user1 [root@localhost ~]# more /etc/group|grep user1 group2:x:501:user1 group3:x:502:user1 下面是对用户user1设置密码 [root@localhost ~]# passwd user1 Changing password for user user1. New UNIX password: Retype new UNIX password: passwd: all authentication tokens updated successfully. 下面是切换到user1用户下,通过newgrp切换用户组进行的一系列操作,从中可以看出newgrp的作用。

linux用户管理系统及权限设置

Linux用户管理及权限设置 Linux 系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也可以帮助用户组织文件,并为用户提供安全性保护。每个用户账号都拥有一个惟一的用户名和各自的口令。用户在登录时键入正确的用户名和口令后,就能够进入系统和自己的主目录。实现用户账号的管理,要完成的工作主要有如下几个方面: ·用户账号的添加、删除与修改。 ·用户口令的管理。 ·用户组的管理。 注:此说明适用于Debian、Redhat、suse、Ubuntu、Fedora等众多linux系统,并对多少位没有区别。 一、Linux系统用户账号的管理 用户账号的管理工作主要涉及到用户账号的添加、修改和删除。 添加用户账号就是在系统中创建一个新账号,然后为新账号分配用户号、用户组、主目录和登录Shell等资源。刚添加的账号是被锁定的,无法使用。 1、添加新的用户账号 添加新用户帐号使用useradd命令,其语法如下: 代码: useradd 选项用户名 其中各选项含义如下: 代码: -c comment 指定一段注释性描述。 -d 目录指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。 -g 用户组指定用户所属的用户组。 -G 用户组,用户组指定用户所属的附加组。 -s Shell文件指定用户的登录Shell。 -u 用户号指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。用户名指定新账号的登录名。 例1: 代码:

Oracle授予用户权限的一个实例

本文将从用户创建讲起,特别讲述Oracle授予用户权限的一个实例,希望对大家了解Oracle授予用户权限有所帮助。 这两天在测数据库同步软件的时候,需要在Oracle里创建一个用户名和密码均为SYSDA TA的用户,找了找资料,创建成功,现将Oracle中用户的创建和授予命令摘录下来: 1、Linux 下Oracle的启动 以Oracle身份登录 启动lsnrctl start 登录sqplus /nolog 连接数据库connect/assysdba 启动数据库startup 关闭数据库shutdown immediate 2、在数据中创建用户名 启动数据库后创建用户名 连接超级用户connect system/admin system 系统用户名字admin 密码 创建用户名字create user SYSDA TA identified by admin 用户名:SYSDA TA密码:admin 可以写Default tablespace user//指定存储对象使用的默认空间表默认是system Temporary tablespace temp; //保存临时对象所使用的空间表默认是system 上面的俩行,可以写空间表为user临时为temp;不写就默认 3、添加用户的权限 Grant是Oracle授予用户权限的如: Grant create session to SYSDA TA;//授予SYSDA TA连接数据的权限 系统权限如下: 系统特权允许执行的操作 Create session连接数据库 Create sequence创建序列 Create synonym创建同名对象 Create table创建表 Create any table创建任何模式的表 Drop table删除表 Create procedure创建存储过程 Execute any procedure执行任何模式的存储过程 Create user创建用户 Create view创建视图 Drop user删除用户 Drop any table删除任何模式的表 4、向用户授予系统特权 Grant execute any procedure toSYSDA TA with admin option 此句意思为为sha用户创建系统特权并且可以用SYSDA TA为别的用户授予权限 连接SYSDA TA用户connect SYSDA TA/admin 可以创建别的用户

linux用户权限及管理

1、创建组 groupadd test 修改组 groupmod -n test2 test 将名字改为test2 删除组 groupdel test 查看组 groups root 2、用户操作: -b 设置基本路径作为用户的登陆目录 usermod -b /home root; -c 对用户的注释… -d 设置用户的登陆目录 usermod -d /home root; -D 改变设置 usermod -D -e 设置用户的有效期 usermod -e 2013-2-1; -f 用户过期后,让密码无效 usermod -f root; -g 使用户只属于某个组 usermod -f www group2; -G 使用户加入某个组 usermod -f www group1; -h 帮助 -k(skel_dir)指定其他的skel目录(存放用户启动文件的目录) -k(key=value) -m 自动创建登陆目录 -l 不把用户加入到lastlog文件中 -M 不自动创建登陆目录 -r 建立系统账号 -o 允许用户拥有相同的UID -p 为新用户使用加密密码; -s 登录时候的shell… -u 为新用户指定一个UID;

-Z 删除用户:userdel www; 查看用户:w/who 查看自己的用户名: whoami 查看单个用户信息: finger root、id root; 查看用户登陆记录: last、lastb(成功和不成功) Linux 用户和用户组管理 Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。 用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对 系统资源的访问;另一方面也可以帮助用户组织文件,并为用户提供安全性保护。 每个用户账号都拥有一个惟一的用户名和各自的口令。 用户在登录时键入正确的用户名和口令后,就能够进入系统和自己的主目录。 实现用户账号的管理,要完成的工作主要有如下几个方面: 用户账号的添加、删除与修改。 用户口令的管理。 用户组的管理。 一、Linux系统用户账号的管理 用户账号的管理工作主要涉及到用户账号的添加、修改和删除。 添加用户账号就是在系统中创建一个新账号,然后为新账号分配用户号、用户组、 主目录和登录Shell等资源。刚添加的账号是被锁定的,无法使用。 1、添加新的用户账号使用useradd命令,其语法如下:

相关文档
最新文档