`
slbszq
  • 浏览: 264301 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

Oracle 用户管理及授权

阅读更多

Oracle 用户管理

 

一、用户的概念

  用户,即user,通俗的讲就是访问oracle数据库的“人”。在oracle中,可以对用户的各种安全参数进行控制,以维护数据库的安全性,这些概念包括模式(schema)权限角色存储设置空间限额存取资源限制数据库审计等。每个用户都有一个口令,使用正确的用户/口令才能登录到数据库进行数据存取。

 

二、用户默认表空间

  表空间是信息存储的最大逻辑单位、当用户连接到数据库进行资料存储时,若未指出数据的目标存储表空间时,则数据存储在用户的默认表空间中。比如:create table mytable(id varchar2(20),name varchar2(100));这条语句创建了一个表mytable,并将其存储在当前用户的默认表空间中,若要指定表空间,则:create table mytable(id varchar2(20),name varchar2(100)) tablespace tbs1;。用户的默认表空间可以在创建用户时指定,也可以使用alter user命令进行指定,具体语法见后面的介绍。

 

三、用户临时表空间

  临时表空间主要用于order by语句的排序以及其它一些中间操作。在oracle9i之前,可以指定用户使用不同的临时表空间,从9i开始,临时表空间是通用的,所有的用户都使用TEMP作为临时表空间

 

四、用户资源文件

  用户资源文件用来对用户的资源存取进行限制,包括:cpu使用时间限制、内存逻辑读个数限制、每个用户同时可以连接的会话数据限制、一个会话的空间和时间限制、一个会话的持续时间限制、每次会话的专用SGA(共享内存结构(system global areas)空间限制。

 

五、用户表空间限额

  表空间存储限制是用户在某一个表空间中可以使用的存储空间总数。在创建或修改用户时,可以由参数quota指出。若用户在向表空间存储数据时,超出了此限额,则会产生错误。错误信息如:'ORA-01536:space quota exceeded for tablespace tablespacename..'。可以通过查询字典dba_ts_quotas查看表空间限额信息。

 

六、创建用户资源文件

  创建用户资源文件的语法如下:

CREATE PROFILE filename LIMIT

SESSION_PER_USER integer

CPU_PER_SESSION integer

USER_PER_CALL integer

CONNECT_TIME integer

......

基中:

SESSION_PER_USER: 用户可以同时连接的会话数量限额;

CPU_PER_SESSION:用户在一次数据库会话期间可占用的CPU时间总量限额,单位为百分之一秒;

USER_PER_CALL:用户一次SQL调用可用的CPU时间总量限额,单位为百分之一秒;

LOGICAL_READS_PER_SESSION:在一次数据库会话期间能够读取的数据库块的个数限额;

LOGICAL_READS_PER_CALL:一次SQL调用可以读取的数据库块数限额;

IDLE_TIME:用户连接到数据库后的可空闲时间限额,单位为分钟,若空闲时间超过此值,则连接被断开;

CONNECT_TIME:一次连接的时间总量限额,单位为分钟,连接时间超过此值时,连接被断开;

PRIVATE_SGA:用户么有的SGA区的大小,单位为数据库块,默认值为UNLIMITED

COMPOSITE_LIMIT:这是一项由上述限制参数构成的组合资源项。举例来说,假设资源设置如下:

  IDLE_TIME 20

    CONNECT_TIME 120

    CPU_PER_CALL 750

    COMPOSITE_LIMT 800

那么,当会话空间超过20分钟,或者连接时间超过120分钟,又或者执行一个SQL耗费超过7.5秒,再或者这几个资源限制加起来的总数超过800,则系统自动终止会话。

FAILED_LOGIN_ATTEMPTS:用户登录时,允许用户名/密码校验失败致使用登录失败的次数限额超过该次数,帐户被锁定

PASSWORD_LIFE_TIME:口令有效时间,单位为天数,超过这一时间,拒绝登录,须重新设置口令,默认值为UNLIMITED

PASSWORD_REUSE_TIME:一个失效口令经过多少天后才可重新利用,默认为UNLIMITED

PASSWORD_REUSE_MAX:一个口令可重复使用的次数

PASSWORD_LOCK_TIME:当登录失败达到FAILED_LOGIN_ATTEMPS时,帐户被锁定,该参数用于设定被锁定的天数

下面举例如下:

1)创建一个用户资源文件

create profile tax_users limit

session_per_user 3

cpu_per_session UNLIMITED

connect_time 30

logical_reads_per_session DEFAULT

logical_reads_per_call 1000

private_sga 15K

composite_limit 500000

password_life_time 90

2)查询用户资源文件信息

sql>select * from dba_profile where profile = 'tax_users'

3)指定用户资源文件给用户

sql>alter user us1 profile tax_users

 

七、创建、修改、删除用户

1.创建用户

  创建用户的详细语法请查询oracle的官方参数文档,这里介绍典型的语法。语法如下:

CREATE USER username

IDENTIFIED BY password

DEFAULT TABLESPACE tablespace

TEMPORARY TABLESPACE tablespace

PROFILE profile

QUOTA integer|UNLIMITED ON tablespace

 

各选项含义如下:

IDENTIFIED BY password用户口令

DEFAULT TABLESPACE tablespace:默认表空间

TEMPORARY TABLESPACE tablespace:临时表空间;

PROFILE profile|DEFAULT用户资源文件

QUOTA integer[K|M]|UNLIMITED ON tablespace:用户在表空间上的空间使用限额,可以指定多个表空间的限额。

 

举例:

CREATE USER us1 IDENTITIED BY abc123

DEFAULT TABLESPACE user01

TEMPORARY TABLESPACE temp

PROFILE DEFAULT

QUOTA 1000M ON user01;

 

2.修改用户

  修改用户的语法是与创建用户的语法类似的,主要是CREATE USER 变成 ALTER USER,具体请参考oracle文档。

 

3.删除用户

  删除用户,是将用户及用户所创建的schema对象从数据库删除。如下:

SQL>DROP USER us1;

若用户us1含有schema对象,则无上述语句将执行失败,须加入关键字CASCADE才能删除,意思是连并其对象一起删除,如下:

 

SQL>DROP USER us1 CASCADE;

八、用户授权

创建的新用户是没有任何权限的,甚至连登陆的数据库的权限都没有,需要为其指定相应的权限。给一个用户赋权限使用命令grant,回收权限使用命令revoke

oracle数据库的权限系统分为系统权限(connectresourcedba对象权限。系统权限( database system privilege )可以让用户执行特定的命令集。例如,create table权限允许用户创建表,grant any privilege 权限允许用户授予任何系统权限。对象权限( database object privilege )可以让用户能够对各个对象进行某些操作。例如delete权限允许用户删除表或视图的行,select权限允许用户通过select从表、视图、序列(sequences)或快照(snapshots)中查询信息。

1.授权 

 

grant <privilege1,privilege2,....> to <user_name> [with admin|grant option];  

如果需要让user_name同时拥有分配这些权限的权限可以添加:

With admin option: 可以分配系统权限

With grant option: 可以分配对象权限

2.授权撤销  

 

revoke <privilege1,privilege2,...>  from <user_name>; 

分享到:
评论

相关推荐

    oracle 实验六 模式对象管理与安全管理

    熟练使用建立用户、角色,为用户授权、授予角色的命令 【实验内容】1.创建一个TESTUSER用户,密码为test,默认表空间为users表空间2.创建用户后为其授予登录数据库和创建数据库对象的权限3.用TESTUSER用户登录数据库

    oracle安全管理

    讲解了oracle用户授权

    oracle用户授权

    oracle用户授权 创建 数据库管理员的橘色,并可再授权

    Oracle 表空间 用户管理.sql

    Oracle用户管理脚本,创建用户,授权,创建表空间

    最好的Oracle9.0入门教程

    1 Oracle9.0入门_01_基础篇 2 Oracle9.0入门_02_安装9i 3 Oracle9.0入门_03_...8 Oracle9.0入门_08_安全管理:用户授权 9 Oracle9.0入门_09_PLSQL 10 Oracle9.0入门_11_深入9i核心 11 Oracle9.0入门_12_备份与恢复

    Oracle系统密码文件创建、使用及维护

    因此,管理好密码文件,对于控制授权用户从远端或本机登录Oracle数据库系统,执行数据库管理工作,具有重要的意义。本文在总结Oracle数据库安全管理工作的基础上,对Oracle数据库系统密码文件的创建、使用和维护作了...

    Oracle9i开发文档

    Oracle9i的开发学习资料,...第八章 安全管理 给用户授权 第九章 编程进阶 PL/SQL 第十章 系统开发 VB+Oracle9i 第十一章 存储管理 深入Oracle9i核心 第十二章 数据安全 备份与恢复实战 第十三章 性能优化 通向OCP之路

    Oracle11g从入门到精通

    《Oracle11g从入门到精通》面向数据库管理人员和数据库开发人员,从实际角度出发,系统地介绍了数据库和Oracle的相关概念和原理、Oracle的数据库管理(如安装与启动,用户权限、备份与恢复等),以及Oracle的应用...

    Oracle11g从入门到精通2

    《Oracle11g从入门到精通》面向数据库管理人员和数据库开发人员,从实际角度出发,系统地介绍了数据库和Oracle的相关概念和原理、Oracle的数据库管理(如安装与启动,用户权限、备份与恢复等),以及Oracle的应用...

    ORACLE数据库智能化管理系统2012

    ORACLE数据库智能化管理系统2012 软件介绍 序言 ORACLE数据库管理们: 你们还在为处理日常大量数据,天天写过多的SQL语句而烦恼吗? 还在为由于没有面面具到的软件来汇制想要的日常数据报表而烦恼吗? 还在为查找...

    建立用户组保证Oracle数据库安全性

    在操作系统下建立用户组是保证数据库安全性的一种有效方法。...允许一部分Unix用户有限制地访问Oracle服务器系统,增加一个由授权用户组的Oracle组,确保给Oracle服务器实用例程Oracle组 ID,公用的可执行程序。

    Oracle Concepts中英文对照版

    的作用是可靠地管理多用户环境下的大规模数据,使多用户可以并发地访 问相同的数据,同时实现系统的高性能。数据库服务器还要阻止未授权的 操作,并提供高效的故障恢复解决方案。 The section contains the following ...

    Oracle公司内部数据库培训之控制用户权限.pptx

    Oracle公司内部数据库培训之控制用户权限.pptx

    Oracle数据库安全性管理基本措施简介

    Oracle数据库系统在实现数据库安全性管理方面采取的基本措施有:通过验证用户名称和口令,防止非Oracle用户注册到Oracle数据库,对数据库进行非法存取操作。授予用户一定的权限,例如connect,resource等,限制用户...

    Oracle中文教程

    第 8 章 安全管理——给用户授权 第 9 章 编程进阶——PL/SQL ****** 第 10 章 系统开发——VB+Oracle 9i 第 11 章 存储管理——深入 Oracle 9i 核心 第 12 章 数据安全——备份与恢复实战 第 13 章 性能优化——...

    Oracle12.2多租户环境下的授权管理

    题记:在多租户环境中,权限可以全局授予整个CDB,一个应用容器数据库(application container),或者...  关于公用用户common user和本地用户local user的内容,请查看:Oracle 12c多租户特性详解:全局用户与本地用

    Oracle 主要配置文件介绍

    INTERVAL=60 5 存储追踪和告警文件的路径 user_dump_dest 指定记录 Oracle 用户进程产生的追踪和告警信息的文件的 存放路径 background_dump_dest 指定记录 Oracle 后台进程产生的追踪和 告警信息的...

    Oracle数据库备份与恢复.pdf

    此外,Oracle数据库提供了多层次的安全措施,包括用户认证、访问控制、数据加密等,以保护数据免受未经授权的访问和攻击。同时,它支持多种操作系统和硬件平台,如Windows、Linux、UNIX等,这使得Oracle数据库能够...

    ORACLE+DBA必备技能详解.pdf

    第十章:用户,资源文件,角色喝授权 第十一章:其他管理特性 第十二章:优化器 第十三张:其他命令 第十四章:内置函数 第十五章:DML命令 附录A:初始化参数 附录B:数据字典视图 附录C:Oracle sql语法

Global site tag (gtag.js) - Google Analytics