Ora_Security -1创建和管理数据库用户

一、用户账户属性

1、用户名

由(字母、数字 $  _)组成,字符数小于30个。不能为保留字。字母不区分大小写。用户名一经创建,不允许修改。如果必须更改它,必须先删除账户,再创建一个。

注:双引号中指定用户名,不遵循执行规则(长度除外)

SQL>create user  peenboo identified bypassword;

SQL>create user "peenboo#%" identified by pa55w0rd;

2、默认表空间和配额

2.1 每个用户账户都有默认表空间。用户创建的任何模式对象(如表或视图等)将保存在此表空间中。除非在创建对象的时候指定另一个表空间,否则将被放在默认表空间中。

可以在创建数据库时设置默认表空间,也可以通过以下语法进行更改:

ALTERDATABASE DEFAULT TABLESAPCE  tablespacename;

注:如何创建数据库时没有指定默认表空间,则将SYSTEM设置为默认表空间。

2.2 配额(quota)是表空间中为用户的模式对象分配的空间量。

SQL>select username,DEFAULT_TABLESPACE,temporary_tablespace from dba_users

where username=‘PEENBOO‘;

SQL>alter user peenboo quota 10m on users;

SQL>alter user peenboo quota unlimited  onexample;

SQL>select tablespace_name ,bytes, max_bytes from dba_ts_quotas;

3  临时表空间(temporary tablespace)

临时表空间的管理完全自动完成。临时表空间中的对象并不归用户真正拥有,而是属于SYS用户,SYS用户拥有所有表空间上的无限配额。

更改用户的临时表空间:

ALTERUSER username temporary tablespace tablespace_name;

4  配置文件

配置文件是管理口令和资源的有效方法,但实际上只适用于每个应用程序都有自己的数据库用户账户的环境。

5、账户状态

通过 DBA_USERS的 ACCOUNT_STATUS可以看到每个用户账户的状态。

OPEN  --打开(可用状态)

LOCKED --锁定(DBA故意锁定,任何用户无法连接到该账户)

EXPIRED --过期(表示口令的生命周期已经终结)

EXPIRED&LOCKED--不仅被锁定,而且其口令已经过期

EXPIRED(GRACE) --"正常时间段生效",口令在生命周期结束时并立即过期,可以配置一个正常时间段,此间可以修改口令。

LOCKED(TIMED) --由于登录尝试失败,账户已被锁定

EXPIRED&LOCKED(TIMED) --过期且超时锁定

EXPIRED(GRACE)&LOCKED --正常过期且锁定

EXPIRED(GRACE)&LOCKED(TIMED) --正常过期且超时锁定

--锁定和解锁的语法如下:

ALTERUSER username ACCOUNT LOCK;

ALTERUSER username ACCOUNT UNLOCK;

--强制用户下次尝试登录时更改口令:

ALTERUSER username PASSWORD EXPIRE;

二、身份验证方法

1、操作系统和口令文件身份验证

要为账户进行操作系统和口令文件身份验证,必须为用户授权(SYSDBA or SYSOPER)权限:

GRANT  [sysdba | sysoper]  To  username;

使用sqlplus进行登录时,语法连接如下:

CONNECT username/password [@db_alias]  AS  [ sysdba | sysoper]

注:要确定为谁授予了SYSDBA和SYSOPER权限,可以通过V$PWFILE_USERS进行查询。

必须对所有用户会话进行身份验证。不存在“匿名登录”的说法。

2、口令身份验证

SQL> CONNECT  username/password [@db_alias]

无论更改自己还是其他人的口令,语法都为:

ALTER USER usernameIDENTIFIED BY  password;

3、外部身份验证

在取得AdvancedSecurity 认证,可以使用外部服务Kerberos服务器、RADIUS服务器或Windows环境中的Windows本地省份验证服务。

如果未启用AdvancedSecurity详细,则唯一可以使用的外部身份验证是操作系统身份验证。此项技术使用与操作系统用户账户同样的名称创建ORACLE账户,但前面加上了OS_AUTHENT_PREFIX实例参数指定的字符串。字符串默认为OPS$。也可通过以下方式查询:

SQL>select  value from v$parameter where name = ‘os_authent_prefix‘;

若在linux或Unix上,更为简单,如用户名为peenboo

SQL>create user ops$peenboo identified by externally;

SQL>grant create session to ops$peenboo;

SQL>sqlplus   /

4、全局身份认证(global  authentication )

使用LDAP服务器,全局用户(global user)是在LDAP 目录中定义的用户。

有两种全局身份认证技术:

可以在目录,也可以在数据库中定义用户。

只能在目录中定义用户。

三、创建账户

1   CREATE USER 必须包含两个必需参数:用户名和身份验证方法。

SQL>createuser scott identified by tiger

Default  tablespace user temporary tablespace temp

Quota100m on users, quota unlimited on example

Profiledeveloper_profile

Password  expire

Accountunlock;

2  除了名称以外,可以通过ALTER USER 命令调整账户上的每个属性。

(1)修改口令

SQL> alter user scott identified by lion;

(2)修改默认表空间和临时表空间

SQL> alter user scott default tablespacetbs_peenboo temporary tablespace  pbtemp;

(3)修改配额

SQL> alter user scott quato unlimited ontbs_peenboo, quato 0 on users;

(4)修改配置文件

SQL>alter user scott profile  prod_profile;

(5)强制更改口令

SQL > alter user scoot password expire;

(6)锁定用户

SQL> alter user scott account lock;

(7)已经创建用户,需要删除重建

SQL> drop user scott;

(8)用户为非空用户,需要以下命令:

SQL> drop user scott cascade;

PUBLIC用户,是一个概念用户,如果要将权限授予每个用户,可将权限授予PUBLIC用户。

时间: 2024-08-07 21:17:12

Ora_Security -1创建和管理数据库用户的相关文章

【转】使用PowerDesigner的建模创建升级管理数据库

使用PowerDesigner的建模创建升级管理数据库 PowerDesigner是一种著名的CASE建摸工具,最开始为数据库建模设计,即物理模型(Physical Data Model)用于生成数据库表结构,还有面向对象模型(Object Oriented Model),用于建立UML模型的结构,可以直接生成CS代码,还有其他的模型等等,不同的模型之间可以相互的转化.我最中意的就是它的物理模型直接设计生成数据库,给我们对数据库的生成升级维护带来极大的方便,下面主要来讲一下它的物理模型设计. 1

Greenplum+Hadoop学习笔记-14-定义数据库对象之创建与管理数据库

6.定义数据库对象 6.1.创建与管理数据库 通过\h命令查看创建数据库的语法,如下所示: testdw-# \h create database Command:     CREATE DATABASE Description: create a new database Syntax: CREATE DATABASE name [ [ WITH ] [ OWNER [=] dbowner ] [ TEMPLATE [=] template ] [ ENCODING [=] encoding

SQL Server 【附】创建"商品管理数据库"、"学生选课数据库"的SQL语句

附:(创建“商品管理数据库”的SQL语句) --建立"商品管理数据库"数据库-- create database 商品管理数据库 on(name='商品管理数据库_m', filename='D:\商品管理系统\商品管理数据库_m.mdf', size=6mb,filegrowth=1mb,maxsize=unlimited) log on(name='商品管理数据库_l', filename='D:\商品管理系统\商品管理数据库_l.ldf', size=1,filegrowth=1

每天一点数据库之-----Day 2 创建与管理数据库表

每天一点数据库之-----Day 2 创建与管理数据库表 ----转载请注明出处:coder-pig 本节引言: 本节介绍的是数据库中表的创建与管理,另外,因为不同DBMS所 支持的数据类型有所差别,这里就不慢慢阐述了,有需要的自行百度~ 1.创建一个最简单的表 假如:我们定义一个名叫 T_Person的表,表中有三个字段,FId(人员id),FName(人员姓名) FAge(人员年龄),数据类型依次是:整数,长度不确定的字符串类型,整数 SQL语句如下: CREATE TABLE T_Pers

SQL学习之创建学生管理数据库

1.首先,学习创建数据库之前,如下图所示,我们先介绍一下数据库的类型: 从数据库的应用管理角度来看,SQL server数据库分为系统数据库和用户数据库 其次,那什么是系统数据库和用户数据库呢?它们分别有什么作用呢? 系统数据库:(1)定义:它是SQL server数据库管理系统自带和自动维护的,用于存放维护系统正常运行               的信息 (2)组成:master, 它是做重要的数据库,用于记录数据库管理系统中的所有系统级信息:                    若其损坏,

Exchange Server 2016管理系列课件13.创建和管理邮件用户

邮箱用户和邮件用户 1)都是活动目录中的用户对象2)邮箱用户完全依赖exchange组织3)而exchange组织不会为邮件用户提供上述功能,只会为其转发邮件,邮件用户的邮箱在外部邮件系统中通过Exchange管理中心进行创建可以选择现有用户,或者新建用户,然后分配外部邮箱 EMS创建邮件用户 New-MailUser -Name zengext -Alias zengext -ExternalEmailAddress [email protected] -FirstName zeng -Use

Confluence 6 MySQL 创建数据库和数据库用户

一旦你成功的安装和配置了 MySQL 数据库服务器,你需要为你的 Confluence 创建数据库和数据库用户: 在 MySQL 中以超级用户运行 'mysql' .默认的用户为 'root' 同时密码为空. 创建一个空的 Confluence 数据库实例(例如 confluence): CREATE DATABASE <database-name> CHARACTER SET utf8 COLLATE utf8_bin; 创建一个 Confluence 数据库用户(例如 confluence

SQLServer创建用户自定义数据库用户

创建用户自定义数据库用户注意事项 如果已忽略 FOR LOGIN,则新的数据库用户将被映射到同名的SQL Server登录名. 默认架构将是服务器为此数据库用户解析对象名时将搜索的第一个架构. 除非另外指定,否则默认架构将是此数据库用户创建的对象所属的架构. 如果用户具有默认架构,则将使用默认架构. 如果用户不具有默认架构,但该用户是具有默认架构的组的成员,则将使用该组的默认架构. 如果用户不具有默认架构而且是多个组的成员,则该用户的默认架构将是具有最低principle_id的Windows组

数据库(SQL Server)管理数据库表~新奇之处

说到“数据库”,我总有一种莫名的感觉,在刚刚接触到的数据库中就让我似懂非懂渡过着,于是思考着.于是在冷静的时空中让我回想到了很多的知识,不知你们是怎样过来的,真心希望我的这篇数据库总结能够让我们都有一个更进步的空间. 就像标题中所说的:“数据库之创建与管理数据库表”,或许说不上新颖之作,但我相信应该有能帮大家解决在学习中运到的一些问题,当然谁都不会是完美,都会有不一样的感触,所以也想借此来和大家多多的交流并分享学习数据库时的郁闷与愉快. 那好,就让我们进入我总结”数据库“时空之境吧!!! 如果说