[转]Oracle DB 用户

? 创建和管理数据库用户帐户:

– 验证用户

– 分配默认存储区(表空间)

1、数据库用户帐户

要访问数据库,用户必须指定有效的数据库用户帐户,而且还要根据该用户帐户的要求成功通过验证。每个数据库用户都有一个唯一的数据库帐户

Oracle 建议采用这种做法,从而避免潜在的安全漏洞,并为特定的审计活动提供有意义的数据。但是,有时候若干用户会共享一个公用数据库帐户。

在这些罕见的情况下,操作系统和应用程序必须为数据库提供足够的安全性。

每个用户帐户都包括以下项:

? 唯一的用户名:用户名不能超过30
个字节,不能包含特殊字符,而且必须以字母开头。

? 验证方法:最常见的验证方法是口令,但是Oracle Database
11g支持其它多种验证方法,包括生物统计学验证、证书验证和标记验证。

? 默认表空间:如果用户未指定其它表空间,则可在这个位置创建对象。

请注意,具有默认表空间并不意味着用户在该表空间具有创建对象的权限,也不意味着用户在该表空间中具有用于创建对象的空间限额。

这两项需要另外单独授权。

?
临时表空间:
这是实例代表用户创建临时对象(如排序和临时表)的位置。临时表空间没有限额。

? 用户概要文件:分配给用户的一组资源与口令的限制。

? 初始使用者组:由资源管理器使用。

?
帐户状态:
用户只可访问“开放”帐户。account_status可能是“锁定”和“失效”的各种组合。

注:数据库用户不一定是人员。常见的作法是创建一个拥有特定应用程序的数据库对象的用户,例如HR。数据库用户可以是设备、应用程序或只是一种出于安全目的而对数据库对象进行分组的方法。

数据库用户不需要具有个人身份信息。

2、预定义帐户:SYS和SYSTEM

? SYS帐户:

– 被授予了DBA 角色

– 具有ADMIN OPTION的所有权限

– 执行启动、关闭和某些维护命令时需要使用的帐户

– 拥有数据字典

– 拥有自动工作量资料档案库(AWR:Automatic Workload Repository)

? SYSTEM帐户被授予DBA 角色。

? 不在例行操作(routine operations)中使用这两个帐户。

默认情况下,SYS和SYSTEM帐户被授予了数据库管理员(DBA) 角色。

此外,SYS帐户还具有ADMIN OPTION的所有权限,而且拥有数据字典。

要连接到SYS帐户,对于数据库实例,必须使用AS SYSDBA子句,对于Automatic Storage Management (ASM)
实例,必须使用AS SYSASM子句。

被授予了SYSDBA权限的任何用户均可通过使用AS
SYSDBA子句连接到SYS帐户。只有被授予了SYSDBA、SYSOPER或SYSASM权限的“授权”用户才能启动或关闭实例。

默认情况下,SYSTEM帐户被授予了DBA角色,而不是SYSDBA权限。

最佳方案提示:如果应用最少权限原则,则不在例行操作中使用这些帐户。需要DBA 权限的用户具有被授予了所需权限的独立帐户。例如,Jim
有一个名为jim的低权限帐户及一个名为jim_dba的授权帐户。使用此方法可应用最少权限原则,不需要共享帐户,而且可审计各项操作。

SYS和SYSTEM帐户是数据库所必需的帐户,不能将其删除。

3、创建用户

选择“Server > Users(服务器> 用户)”,然后单击“Create(创建)”按钮。

也可以简单实用sql来创建用户:create user test identified by test account unlock;

在Enterprise Manager
的“Users(用户)”页中,可以管理能够访问当前数据库的数据库用户的列表。使用此页可创建、删除和修改用户的设置。

要创建数据库用户,请执行以下操作:

1.在Enterprise Manager Database Control
中,单击“Server(服务器)”选项卡,然后在“Security(安全)”部分中单击“Users(用户)”。

2.单击“Create(创建)”按钮。

提供所需的信息。必需项带有星号(*) 标记,如“Name(名称)”。

每一个用户可以分配默认表空间和临时表空间。如果用户在创建对象时未指定表空间,则将在分配给对象所有者的默认表空间中创建对象。这样,便可以控制用户对象的

创建位置。

如果未选择默认表空间,则使用系统定义的默认永久表空间。对于临时表空间也是如此:如果未指定临时表空间,则使用系统定义的临时表空间。

4、验证用户

? 口令

? 外部验证

? 全局验证

“验证”是指对要使用数据、资源或应用程序的人员或对象(用户、设备或其它实体)的身份进行验证。通过对该身份进行验证可建立一种信任关系,以进行进一步的交互。通过验证可将访问和操作与特定的身份联系起来,从而增强安全性。完成验证后,授权进程会允许或限制该实体能够执行的访问和操作的级别。

创建用户时,必须确定要使用的验证方法,以后可修改此方法。

口令:又称为Oracle DB
验证。创建的每一个用户都有一个关联口令,用户尝试建立连接时,必须提供这个口令。设置口令时,可以使该口令立即失效,这会强制用户在首次登录后更改口令。如果决定要使用户口令失效,请确保用户能够更改口令。有些应用程序不具备此功能。默认情况下,在Oracle
Database
11g中创建的所有口令都区分大小写。这些口令还可以包含多字节字符,但长度被限制为30
字节。在更改之前,在升级到Oracle Database
11g的数据库中创建的每个口令仍然不区分大小写。在网络(客户机/服务器和服务器/服务器)连接期间,系统总是先使用高级加密标准(AES)
算法以自动且透明的方式对口令进行加密,然后再通过网络发送这些口令。

数据库验证,使用sql语言如下:

[email protected]> create user aaron
identified bysoccer

2 default tablespace users

3 temporary tablespace temp

4 account unlock

5 /

User created.

外部验证:这是使用数据库外部的方法(操作系统、Kerberos
或Radius)执行的验证。Kerberos或Radius 需要使用高级安全选件。用户可以在不指定用户名或口令的情况下连接到Oracle
DB。借助于执行严格验证的高级安全选件,系统可以通过使用生物统计学、x509
证书和标记设备来识别用户。使用外部验证时,数据库依赖基础操作系统、网络验证服务或外部验证服务来限制对数据库帐户的访问。对于此类登录不会使用数据库口令。

如果操作系统或网络服务允许的话,可以使用外部验证来验证用户。如果使用操作系统验证,请设置OS_AUTHENT_PREFIX初始化参数,并在Oracle
用户名中使用前缀。
OS_AUTHENT_PREFIX参数定义了一个前缀,Oracle DB
会在每个用户的操作系统帐户名之前添加此前缀。为了实现与Oracle 软件早期版本的向后兼容,此参数的默认值为OPS$。

[email protected]> show parameter OS_AUTHENT_PREFIX

NAME TYPE VALUE

------------------------------------ -----------
------------------------------

os_authent_prefix string ops$

用户尝试建立连接时,Oracle DB 会将带前缀的用户名与数据库中的Oracle
用户名进行比较。例如,假定OS_AUTHENT_PREFIX设置如下:

OS_AUTHENT_PREFIX=OPS$ ,如果某个用户的操作系统帐户名为tsmith,该用户需要连接到Oracle DB
并且已由操作系统进行验证,则Oracle DB
会检查是否存在对应的数据库用户OPS$tsmith,如果存在这样的用户,则允许该用户建立连接。在对用户(操作系统已对其进行了验证)的所有引用中必须包含OPS$tsmith中显示的前缀。

注:在某些操作系统中,OS_AUTHENT_PREFIX初始化参数的文本是区分大小写的。

操作系统验证,使用SQL语言如下:

[email protected]> create user aaron1
identified externally

2 default tablespace users

3 temporary tablespace temp

4 account unlock

5 /

User created.

全局验证:使用Oracle 高级安全选件时,可使用Oracle Internet
Directory 通过全局验证来识别用户。

5、管理员验证

操作系统安全性:

? DBA 必须具有创建或删除文件的操作系统权限。

? 普通数据库用户不应具有创建或删除数据库文件的操作系统权限。

管理员安全性:

? 对于SYSDBA、SYSOPER和SYSASM连接:

– 使用口令文件和严格验证方法时,按名称审计DBA 用户

– 使用操作系统验证时,审计操作系统帐户名

– 对于授权用户,操作系统验证优先于口令文件验证

– 口令文件使用区分大小写的口令

操作系统安全性:在UNIX 和Linux 中,DBA 默认情况下属于install操作系统组,该组具有创建和删除数据库文件所需的权限。

管理员安全性:只有在使用口令文件或操作系统权限进行验证后,才允许授权用户SYSDBA、SYSOPER和SYSASM建立连接。

如果使用操作系统验证,则数据库不使用提供的用户名和口令。

当口令文件不存在,或者该文件中不存在提供的用户名和口令,或者未提供用户名和口令时,将使用操作系统验证。

默认情况下,Oracle Database 11g中的口令文件使用区分大小写的口令。

但是,如果使用口令文件成功完成了验证,则使用用户名记录连接。如果使用操作系统成功完成了验证,则表示这是一个CONNECT
/连接,这种连接不记录具体用户。

注:操作系统验证优先于口令文件验证。具体说来,如果您是操作系统中的OSDBA或OSOPER组的成员,而且以SYSDBA、SYSOPER或SYSASM身份进行连接,则会使用关联的管理权限为你建立连接,不管你指定的用户名和口令是什么。

在Oracle Database 11g中,授权用户可以使用严格验证方法:Kerberos、SSL
或目录验证(如果可以使用高级安全选件)。

6、解除用户帐户的锁定并重置口令

在安装和创建数据库的过程中,可以对Oracle
提供的多个数据库用户帐户解除锁定,并对其进行重置。如果在此期间未选择解除对用户帐户的锁定,则可以在“Users(用户)”页上选择用户,从“Actions(操作)”列表中选择“Unlock
User(解除用户的锁定)”,然后单击“Go(执行)”,以此解除对用户的锁定。这并不会更改口令。如果在解除对用户的锁定时口令已失效,则在编辑用户并更改口令之前,口令将一直处于失效状态。

或者使用sql语言:

[email protected]> alter user bi account unlock;

User altered.

要解除对用户的锁定并重置口令,请在“Edit Users(编辑用户)”页上执行下列步骤:

1.在“Enter Password(输入口令)”和“Confirm Password(确认口令)”字段中输入新口令。

2.选中“Unlocked(解除锁定)”复选框。

3.单击“Apply(应用)”,重置口令并解除对用户帐户的锁定。

或者使用sql语言:

[email protected]> alter user bi identified by bi account unlock;

User altered.

来源:http://blog.csdn.net/rlhua/article/details/12272827

[转]Oracle DB 用户,布布扣,bubuko.com

时间: 2024-12-12 09:01:43

[转]Oracle DB 用户的相关文章

【翻译自mos文章】oracle db 中的用户账户被锁--查看oracle用户的尝试次数

参考原文: Users Accounts Getting Locked. (Doc ID 791037.1) 其实这个文章是为oracle 别的软件产品写的,不过涉及到user 锁定问题,那还是跟db有关系. 该文章我就不全部翻译了,只翻译最有用的一点: ---lcount列是记录oracle用户用错误的密码登陆db的登陆的次数. Select lcount from SYS.USER$ where name ='<USERNAME>' [翻译自mos文章]oracle db 中的用户账户被锁

用户与 Oracle DB 交互具体过程

与 Oracle DB 交互 以下的演示样例从最主要的层面描写叙述 Oracle DB 操作.该演示样例说明了一种 Oracle DB 配置,在该配置中,用户和关联server进程执行于通过网络连接的不同计算机上. 1. 在安装了 Oracle DB 的节点(通常称为"主机"或"数据库server")上启动了一个实例. 2. 用户启动一个应用程序,该应用程序衍生了一个用户进程.该应用程序尝试建立一个与server的连接(此连接可能是本地连接.客户机/server连接

用户与 Oracle DB 交互详细过程

与 Oracle DB 交互 下面的示例从最基本的层面描述 Oracle DB 操作.该示例说明了一种 Oracle DB 配置,在该配置中,用户和关联服务器进程运行于通过网络连接的不同计算机上. 1. 在安装了 Oracle DB 的节点(通常称为"主机"或"数据库服务器")上启动了一个实例. 2. 用户启动一个应用程序,该应用程序衍生了一个用户进程.该应用程序尝试建立一个与服务器的连接(此连接可能是本地连接.客户机/服务器连接或来自中间层的三层连接). 3. 服

[转]Oracle DB 执行用户管理的备份和恢复

• 说明用户管理的备份和恢复与服务器管理的备份和恢复之间的差异 • 执行用户管理的数据库完全恢复 • 执行用户管理的数据库不完全恢复 备份和恢复的使用类型 数据库备份和恢复的类型包括: • 用户管理的:不使用RMAN – 使用OS 命令移动文件 – DBA 需要手动维护备份活动记录 • 服务器管理的:使用RMAN 有两种方法可用来恢复数据库.可以使用RMAN 并利用其自动恢复功能.它可以还原相应的文件,并使用非常少的命令使数据库恢复到当前状态.还可以手动进行恢复.这称为“用户管理的恢复”.用户管

[转]Oracle DB 使用RMAN创建备份2

归档备份:概念 归档备份:概念 如果需要在指定时间内保留联机备份,RMAN 通常会假定用户可能需要在自执行该备份以来到现在之间的任意时间执行时间点恢复.为了满足这一要求,RMAN 会在此时段内保留归档日志.但是,可能仅需要在指定的时间(如两年)内保留特定备份(并使其保持一致和可恢复).用户不打算恢复到自执行该备份以后的某一时间点,只是希望能够正好恢复到执行该备份的确切时间.此外,用户还需要维护保留策略以使备份区井然有序,因此无法使备份恢复到两年前.为了满足保留数据的商业或法律要求,通常需要这么做

[转]Oracle DB执行闪回数据库

? 配置闪回数据库 ? 执行闪回数据库操作 ? 监视闪回数据库 闪回数据库 闪回数据库操作: ? 作用类似于数据库的倒带按钮 ? 可以在用户造成了逻辑数据损坏的情况下使用 闪回数据库 使用闪回数据库,通过还原自先前某个时间点以来发生的所有更改,可快速将数据库恢复到那个时间的状态.因为不需要还原备份,所以此操作速度很快.可以使用此功能还原导致逻辑数据损坏的更改. 使用闪回数据库时,Oracle DB 可使用过去的块映像回退对数据库的更改.在正常数据库操作期间,Oracle DB 会不定期地将这些块

[转]Oracle DB 管理ASM实例

? 描述使用ASM 的好处 ? 管理ASM 实例 ? 创建和删除ASM 磁盘组 ? 扩展ASM 磁盘组 ? 通过使用各种实用程序检索ASM 元数据 Automatic Storage Management Automatic Storage Management (ASM) 将文件系统与卷管理器纵向集成在一起,这是一项专门为Oracle DB 文件建立的技术.使用ASM 可管理单个对称多处理(SMP) 计算机,或通过管理集群的多个节点来支持Oracle Real Application Clus

[转]Oracle DB 性能视图和数据字典

动态性能视图 用于访问实例内存结构不断变化的状态信息. 在Oracle DB 中还维护着一个关于数据库实例操作和性能的动态数据集.这些动态性能视图以基于数据库服务器内部的内存结构构建的虚拟表为基础.也就是说,这些视图不是驻留在数据库中的传统意义上的表.这就是为什么部分视图在数据库装载或打开之前就能够使用的原因. 动态性能视图包含下列信息: ? 会话 ? 文件状态 ? 作业和任务的进度 ? 锁 ? 备份状态 ? 内存使用率和内存分配 ? 系统参数和会话参数 ?SQL 执行 ? 统计数据和度量 注:

[转]Oracle DB 移动数据

? 描述移动数据的方式 ? 创建和使用目录对象 ? 使用SQL*Loader 加载非Oracle DB(或用户文件)中的数据 ? 使用外部表并通过与平台无关的文件移动数据 ? 说明Oracle 数据泵的一般体系结构 ? 使用数据泵的导出和导入实用程序在Oracle DB 之间移动数据 移动数据:一般体系结构 移动数据:一般体系结构 主要功能组件: ? DBMS_DATAPUMP:包括高速导出与导入实用程序的API,可用于成批地移动数据和元数据. ? 直接路径API (DPAPI):Oracle