免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 937 | 回复: 0
打印 上一主题 下一主题

实验进阶OCP #2 用户管理 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-12-22 08:54 |只看该作者 |倒序浏览


1.用户的属性


用户名,认证方式,默认表、临时空间,配置文件Profile,组,锁定状态

2.创建用户

用em和脚本比较方便
创建用户的脚本
CREATE USER "rezic"
PROFILE "DEFAULT"
IDENTIFIED BY oracle
DEFAULT TABLESPACE "USERS"
TEMPORARY TABLESPACE "TEMP"
ACCOUNT UNLOCK
PASSWORD EXPIRE
quota 10M on USERS

image

3用户验证authentication

类型 password ,external操作系统认证,golbal

password
口令文件 $ORACLE_HOME/dbs  下orapw<SID>.ora  sid大小写敏感
重建口令文件需要重新启动数据库

image 
1使用os验证登陆到数据库
2 将remote_login_passwordfile 参数设置为NONE,并重新启动数据库
3 orapwd创建
orapwd file=$ORACLE_HOME/dbs/orapworcl password=oracle entries=5;
password是sysoper和sysdba的口令(必须)
entries:是允许sysdba或sysoper身份连接的最大相异用户数。如果超出了此数值,则必须重建新口令文件。使用较大值比较保险。
4 remote_login_passwordfile设置为exclusive
exclusive表示仅一个实例可以使用口令文件且口令文件包含除sys之外的其他名称。通过使用exclusive口令文件,可以将sysdba或sysoper权限授予单独的用户。
image

remote_login_passwordfile 结合上面的口令文件恢复理解吧

还有个Share状态,用于rac的实例共享,只能存放sys和system用户密码

os认证
$ORACLE_HOME/network/admin/sqlnet.ora
SQLNET.AUTHENICATION_SERVICES = (NFS)/NONE   #开启、关闭
操作系统验证优先于口令文件验证,特别是如果您是操作系统的OSDBA或OSOPER组成员,并且以SYSDBA或SYSOPER身份连接,则连接时具有相关的管理权限,与账户口令无关。
---实现外部认证
就是操作系统认证,登录数据库不需要密码
1 查看默认外部认证账户的前缀
show parameter OS_AUTHENT_PREFIX
ops$
就是数据库账号必须使用ops$开头
ops$操作系统账户名

2 先创建一个操作系统用户
useradd jim
passwd jim
usermod -g oinstall jim

3 创建数据账户,给连接权限
create user ops$jim  IDENTIFIED EXTERNALLY ;
grant connect to ops$jim

4 jim是远程连接,查看系统是否允许远程连接
remote_os_authent 值false 不允许  默认
                  值TRUE 允许
alter system set remote_os_authent = TRUE scope=spfile

startup force

image

设置为true表示允许远程用户连接
su - jim
sqlplus /@orcl

删除用户
必须关闭session
select sid,serial# from v$session where username='rezic';
alter system kill session '145,41';
等待PMON清理进程资源
drop user rezic cascade

4  Profile


控制资源的使用和做密码和账户策略
查看默认
desc dba_profiles
where profile='DEFAULT';根据名字猜想下作用即可
一个用户最多只能应用一个概要文件

--角色public
表示所有用户
案例:你想所有创建的用户都具有登录权限
grant connect to public ;

修改概要文件
alter user 账户名 profile 新名字

5权限


系统权限---》数据库
对象权限---》object

系统权限
Oracle 10G中常见的系统权限
权限    说明
CREATE SESSION    允许被授权者连接数据库实例。
CREATE TABLE    允许被授权者在自己的模式中创建表。
CREATE VIEW    允许被授权者在自己的模式中创建视图。
CREATE SYNONYM    允许被授权者在自己的模式中创建私有的同义词。
CREATE PUBLIC SYSNONYM    允许被授权者在SYS模式中创建同义词,数据库中所有用户都能使用这个同义词(公有同义词)。
CREATE PROCEDURE    允许被授权者在自己的模式中创建存储过程或函数。
CREATE SEQUENCE    允许被授权者在自己的模式中创建序列。
CREATE TRIGGER    允许被授权者在自己的模式中创建触发器。
CREATE USER    允许被授权者在数据库内创建另一个用户,并且在创建用户时指定口令与其他设置。
ALTER USER    允许被授权者能够修改数据库中另一个用户的用户信息,包括更改该用户的口令。
DROP ANY TABLE    允许被授权者删除数据库内任何模式中的任何表。
ALTER ANY TABLE    允许被授权者更改数据库内任何模式中的任何表。
BACKUP ANY TABLE    允许被授权者使用Export实用程序生成数据库内任何表的一个副本。
SELECT ANY TABLE    无论是否显式地授予被授权者对数据库内的任何表执行SELECT语句的权限,都允许被授权者执行上述行为。
INSERT ANY TABLE    无论是否显式地授予被授权者对数据库内的任何表执行INSERT语句的权限,都允许被授权者执行上述行为。
UPDATE ANY TABLE    无论是否显式地授予被授权者对数据库内的任何表执行UPDATE语句的权限,都允许被授权者执行上述行为。
DELETE ANY TABLE    无论是否显式地授予被授权者对数据库内的任何表执行DELETE语句的权限,都允许被授权者执行上述行为。

命令给权限
给予xiaoming crate session crate table权限
并授予with admin option 就是它可以把自身的权限授予给其他人

授权命令
grant 系统权限 to 账户名或角色名

grant crate session ,crate table to xiaoming
WITH ADMIN OPTION

image

删除系统权限
revoke 系统权限 from 用户名

系统权限是可以级联,但是在删除的时候不会级联删除。

---对象权限
select /update /delete /isnert 权限
授予方法
grant 权限列表 on 对象名  to 用户名或角色名
--soctt允许小明查询和删除emp表并给予级联授权的权利
grant select ,delete  on scott.emp to xiaoming with grant option
小明可以查询和修改soctt.emp表

撤销权限

reovke 权限 on 对象名 from 用户名或角色名

对象权限的授权可以通过with grant option 级联授权,收回权限也是级联的。

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP