ASM安全

这个小节主要描写叙述与ASM相关的各种安全配置话题,像
配置ASM须要的userids、groupids;ASM权限如
SYSOPER,SYSDBA和新的SYSASM权限,最后还有ASM
使用的ORACLEpassword文件,orapwd。

一个ASM实例多个UNIX Userids
假设使用一个不同于RDBMS实例的用户和独立的ASM_HOME,
那么每一个RDBMS实例的ORACLE 用户必须是ASM实例dba组的
成员;ASM的ORACLE用户不必是RDBMS实例DBA组的成员。
假设你想用不同的UNIX userid并使用多个其它UNIX userid创
建的ASM实例来管理他们自己的存储,你能够为每一个数据库
创建自己的dba组(不同于ASM dba组的),比如数据库能够使用
名字为dba1,dba2等DBA组。假设你想RDBMS实例以共享使用
同样的磁盘组,那么全部的RDBMS实例须要以read/write权限訪问
磁盘组。ASM实例须要以read/write权限訪问全部的磁盘。对于
RDBMS实例来说,你能够限制实例能够訪问哪些磁盘。

ASM权限
在ORACLE 10G,通过SQLPLUS訪问ASM实例与訪问标准的数据库
实例一样,能够以SYSDBA或SYSOPER权限訪问。然而,注意那是
由于没有数据字典在ASM实例中,权限认证是通过操作系统级别或
ORACLE password文件来完毕的。有代表性的是SYSDBA权限通过
操作系统用户组进行赋权。在UNIX系统上,一般使用的是dba group。
默认dba组拥有訪问本节点上全部实例的SYSDBA权限,包含ASM实例。
使用SYSDBA权限连接ASM,拥有管理本地系统磁盘组的全然的管理
訪问权限。
     注意在WINDOWS系统中,ORACLE一般执行在local system或administrator
用户下,OSOPER和OSDBA组是硬编码组分别与ORA_OPER和ORA_DBA关联。
     从ORACLE DATABASE 11g開始,一个叫SYSASM的权限成为訪问ASM 
实例的主要手段,大多数ASM实例的管理命令不再使用与SYSDBA。SYSDBA
仍然可用向后兼容,假设使用了SYSDBA,在ASM alert日志中就会有例如以下信息
写入:
Warning: Deprecated privilege SYSDBA for command 'STARTUP'
SYSASM权限的目的是把ASM认证与RDBMS认证分开。SYSASM权限拥有
对ASM实例的所有控制权。认证通过OSASM用户组,类似于SYSDBA权限,
仅仅是SYSDBA认证是通过OSDBA实现的。对于ORACLE Database 11g ASM来说,
使用SYSASM代替SYSDBA认证是最佳实践。
     以下展示了怎样使用SYSASM而且配置一个新的拥有SYSASM角色的用户:
[oracle11@racnode1~]$ sqlplus "/ as sysasm"

创建ASMUSER,使用例如以下命令:

SQL> CREATE USER ASMUSER IDENTIFIED BY ASMUSER1;

SQL> GRANT SYSASM, SYSOPER TO ASMUSER;

使用ASMUSER连接ASM实例:

[oracle@racnode1 ~]$ sqlplus "ASMUSER/ASMUSER as sysasm"

SQL> select * from v$pwfile_users;

USERNAME SYSDBA SYSOPER SYSASM

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

SYS          TRUE  TRUE FALSE

ASMUSER  FALSE TRUE TRUE
在ORACLE ASM 10g中,用户使用SYSOPER连接ASM实例权限与使用SYSDBA连接
权限大致同样,除了查询v$视图权限外。使用SYSOPER连接ASM实例使用例如以下命令:
[oracle11@racnode1~]$ sqlplus " as sysoper"
从ORACLE DATABASE 11g起,ASM SYSOPER权限的职责与数据库SYSOPER基本同样。
以下的命令是SYSOPER用户可用的命令:
STARTUP/SHUTDOWN

ALTER DISKGROUP MOUNT/DISMOUNT

ALTER DISKGROUP ONLINE/OFFLINE DISK

ALTER DISKGROUP REBALANCE

ALTER DISKGROUP CHECK
全部其它命令像CREATE DISKGROUP,ADD/DROP/RESIZE DISK,等等-都须要SYSASM
权限,这些命令都不能为SYSOPER权限用户所用。
     全部的管理命令--包含STARTUP,SHUTDOWN,和ALTER/CREATE/DROP DISKGROUP
都登陆到ASM实例。比如,全部ALTER DISKGROUP 命令总是记录在alert log当实例发出
命令以后。假设有须要,通过SYS USER从ASM实例发出的操作都会记录到
.aud文件里。要做到这点须要配置例如以下初始化參数:
audit_sys_operations = TRUE

_disable_instance_params_check = TRUE
注意,与RDBMS实例不同,audit trail信息不能存放在ASM实例的AUD$中,由于
ASM没有数据库来存放这些表。因此输出通常dump到.aud文件中,这些文件
通常存放在默认位置--$ORACLE_HOME/rdbms/audit。
init.ora中的AUDIT_FILE_DEST控制audit文件默认位置,在WINDOWS上,这些
日志打印到WINDOWS SYSTEM LOG中。

ASM与orapwd
ASM实例使用ORACLE password文件供远程ASM訪问,很像RDBMS实例
供远端数据库訪问。
注意

RDBMS实例与ASM实例全然分离,因此ASM拥有自己的password文件,
不与RDBMS实例共享。
     为了配置EM远程訪问ASM,ASM的password文件不需存在。假设ASM实例
是DBCA配置的,orapwd文件会自己主动创建。假设ASM实例是手动配置的
必须使用owapwd命令手工创建password文件:
[oracle11@racnode1~]$ orapwd file=$ORACLE_HOME/asm/orapw+ASM1 \

password=oracle
标准orapwd工具用于管理ASM实例的password文件,仅仅是限制改动syspassword。
注意
在RAC系统中集群中的每一个ASM实例必须都有owapwd文件。
使用ASM实例中V$PWFILE_USERS视图来查看password文件里的内容:
SQL> SELECT * FROM V$PWFILE_USERS;

USERNAME SYSDB SYSOP SYSAS

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

SYS TRUE TRUE FALSE
在ORACLE DATABASE 11g中,能够使用与RDBMS中一样的命令来改动ASMpassword文件。
然而仅仅能更新本地orapwd文件。

ASM管理
随着ASM的出现,卷管理和存储管理的责任似乎变得模糊了。ASM管理定义
角色能够有一些变种,依赖组织层(管理层)。例如以下是一些典型部署(案例):
  • 由一个ASM管理员管理特定的ASM实例。ASM管理员能够来自Sysadmin(sa)
  • ASM的软件能够由RDBMS用户来安装。这样能够加强ASM管理角色。
  • 负责管理企业数据库DBA或ORACLE软件负责人同一时候管理ASM实例存储。
系统管理员(SA)管理OS LUNs(logical unit numbers),改动设备文件属组
同一时候把ASM磁盘与其它主机逻辑卷管理器

无论怎样分权和划分权责,以下的动作还是要为ASM存储做的:
确定ASM存储需求
     依据应用/数据库来确定存储类型,如SATA(Serial Advanced Technology 
Attachment)还是FC( Fibre Channel)。假设你部署一个分层存储这是一个很
重要的问题。比如,DATA磁盘组可能须要高端FC盘,而Flash磁盘组仅仅须要SATA
磁盘就能够了。
确定数据库须要多少空间。
确定数据库操作的IOPS数。结合IOPS需求来确定数据库对后端存储磁盘的
需求。这个步骤必需要要存储管理员和系统管理员系统完毕。

从磁盘阵列预分配磁盘
     从存储阵列创建LUNs。这些LUNs能够从RAID(RAID 10 或 RAID 5)组中来
划分,映射给合适的主机。
在主机层预分配磁盘。
     root用户在OS上确认这些LUNs能够被主机识别。为这些LUNs调整
权限和属组。

属组和权限改动完毕后,ASM能够发现这些盘了。这些盘就能够被加入到
已存在的磁盘组或用于创建新的磁盘组了。

创建必要的磁盘组
     ASM识别存储阵列提供的磁盘以后,确定怎样把这些磁盘分配给磁盘组。
     使用已有磁盘组或创建新磁盘组。

例如以下的ASM v$视图描写叙述了ASM的数据结构和组建:
V$ASM_ALIAS This view displays all system- and user-defined aliases.

There is one row for every alias present in every diskgroup mounted by the

ASM instance. The RDBMS instance displays no rows in this view.



V$ASM_ATTRIBUTE This Oracle Database 11gview displays one row

for each ASM attribute defined. These attributes are listed when they are

defined in CREATE DISKGROUPor ALTER DISKGROUPstatements.

DISK_REPAIR_TIMERis an example of an attribute.



V$ASM_CLIENT This view displays one row for each RDBMS instance

that has an opened ASM diskgroup.



V$ASM_DISK This view contains specifics about all disks discovered by

the ASM instance, including mount status, disk state, and size. There is one

row for every disk discovered by the ASM instance.



V$ASM_DISK_IOSTAT This displays information about disk I/O statistics

for each ASM client. If this view is queried from the database instance, only

the rows for that instance are shown.



V$ASM_DISK_STAT This view contains similar content as the V$ASM_

DISK, except V$ASM_DISK_STATreads disk information from cache and

thus performs no disk discovery. This view is primarily used for quick access

to the disk information without the overhead of disk discovery.



V$ASM_DISKGROUPV$ASM_DISKGROUPdisplays one row for every ASM

diskgroup discovered by the ASM instance on the node.



V$ASM_DISKGROUP_STAT This view contains all the similar view contents

as the V$ASM_DISKGROUP, except that V$ASM_DISK_STATreads disk

information from the cache and thus performs no disk discovery. This view

is primarily used for quick access to the diskgroup information without the

overhead of disk discovery.



V$ASM_FILE The V$ASM_FILEview displays information about ASM

files. There is one row for every ASM file in every diskgroup mounted by the

ASM instance. In a RDBMS instance, V$ASM_FILEdisplays no rows.



V$ASM_OPERATION This view describes the progress of an influx ASM

rebalance operation. In a RDBMS instance, V$ASM_OPERATIONdisplays

no rows.



V$ASM_TEMPLATE This view contains information on user- and systemdefined templates.



V$ASM_TEMPLATEdisplays one row for every template

present in every diskgroup mounted by the ASM instance. In a RDBMS

instance,V$ASM_TEMPLATEdisplays one row for every template present

in every diskgroup mounted by the ASM instance with which the RDBMS

instance communicates

例如以下视图能够在RDBMS和ASM实例中訪问
见P68

总结
ASM实例管理ASM metadata。ASM实例与ORACLE实例很相似也有
SGA和绝大多数的后台进程。ASM能够运行类似RDBMS实例的命令。
ASM实例不挂在数据库,可是挂载磁盘组。ASM管理metadata使得
ASM数据文件能够被数据库使用。ASM实例和数据库实例必须能够訪问
全部的ASM磁盘。当文件打开或创建时ASM实例提供extent map给RDBMS实例。
RDBMS实例基于extent map直接读写磁盘。ASM实例没有在I/0路径中。

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

本站注明原创和翻译的均为原创文章,文章同意转载,但必须以链接方式注明源地址,

否则追究法律责任!文章中难免有疏漏欢迎网友批评指正。



QQ:       173386747



Email:    hailong.sun1982@gmail.com



Blog:     http://blog.csdn.net/card_2005

ORACLE AUTOMATIC STORAGE MANAGEMENT翻译-第二章ASM Instance(4)完的更多相关文章

  1. ORACLE AUTOMATIC STORAGE MANAGEMENT翻译-第二章 ASM instance(1)

    第二章  ASM INSTANCE ASM的类型,例如可以: 10g后ORACLE instance 类型增加了一个ASM种类.参数INSTANCE_TYPE=ASM进行设置. ASM实例启动命令: ...

  2. Gradle2.0用户指南翻译——第二章. 概述

    翻译项目请关注Github上的地址:https://github.com/msdx/gradledoc本文翻译所在分支:https://github.com/msdx/gradledoc/tree/2 ...

  3. Spring学习指南-第二章-Spring框架基础(完)

    第二章 Spring框架基础 面向接口编程的设计方法 ​ 在上一章中,我们看到了一个依赖于其他类的POJO类包含了对其依赖项的具体类的引用.例如,FixedDepositController 类包含 ...

  4. Learning Scrapy 中文版翻译 第二章

    为了从网页中提取信息,你有必要对网页的结构做一些了解.我们将快速学习HMTL,HTML数状结构以及用XPath在网页上提取信息 HTML, DOM树结构以及XPath 让我们花一点时间来了解当用户在浏 ...

  5. Scyther-Semantics and verification of Security Protocol 翻译 (第二章 2.2.2----2.3)

    2.2.2  事件顺序 协议中的每个角色对应于事件列表,换句话说, 在属于角色 R 的协议事件集上施加结构,总的排序表示为 $ \prec $ , 如此任何角色 R∈Role 和 $\varepsil ...

  6. brent ozar的sqlserver dba训练课程翻译——第二章:手动恢复数据库

    备份的唯一原因 备份的唯一原因是我们可以还原   当我第一次成为sqlserver数据库管理员,只要备份工作都能成功运行,我就会觉得一切都很好.我会查看sqlserver代理,保证那些作业都在运行,然 ...

  7. 《Oracle Database 12c DBA指南》第二章 - 安装Oracle和创建数据库(2.1 安装Oracle数据库软件和创建数据库概览)

    当前关于12c的中文资料比较少,本人将关于DBA的一部分官方文档翻译为中文,很多地方为了帮助中国网友看懂文章,没有按照原文句式翻译,翻译不足之处难免,望多多指正. 2.1 安装Oracle数据库软件和 ...

  8. 【书评:Oracle查询优化改写】第二章

    [书评:Oracle查询优化改写]第二章 BLOG文档结构图 在上一篇中http://blog.itpub.net/26736162/viewspace-1652985/,我们主要分析了一些单表查询的 ...

  9. 《Oracle Database 12c DBA指南》第二章 - 安装Oracle和创建数据库(2.2 安装数据库软件)

    当前关于12c的中文资料比较少,本人将关于DBA的一部分官方文档翻译为中文,很多地方为了帮助中国网友看懂文章,没有按照原文句式翻译,翻译不足之处难免,望多多指正. 2.2 安装数据库软件 这部分简短讲 ...

随机推荐

  1. BIOS启动项中的设备都有哪些

    Floppy 软式磁盘驱动器,简称FDD,也就是我们平时所说的软驱. CD-ROM 不用多说了,大家都知道,这是光盘驱动器,也就是我们平时说得光驱. SCSI SCSI的全名是:Small Compu ...

  2. Hadoop中的辅助类ToolRunner和Configured的用法详解

    在开始学习hadoop时,最痛苦的一件事就是难以理解所写程序的执行过程,让我们先来看这个实例,这个测试类ToolRunnerTest继承Configured的基础上实现了Tool接口,下面对其用到的基 ...

  3. something: 重构、正则、vim -- clwu

    项目需要做一个db table 操作的小工具. 从phpMyAdmin上拷贝了一些代码过来修改,但我有没有足够的时间把所有拷贝过来的代码都重构修改和测试完,于是希望后面接手的同事在需要修改这些代码时能 ...

  4. CodeForces 622 A.Infinite Sequence

    A.Infinite Sequence time limit per test 1 second memory limit per test 256 megabytes input standard ...

  5. mvn安装jar文件到本地

    mvn install:install-file -DgroupId=com.jfinal -DartifactId=jfinal -Dversion=2.3 -Dpackaging=jar -Dfi ...

  6. UDP广播问题

    http://bbs.csdn.net/topics/390218123 Broadcast Address(广播地址)是专门用于同时向网络中所有工作站进行发送的一个地址.在使用TCP/IP 协议的网 ...

  7. Python基础 列表

    ---***---传送门---***--- 文档解释 def append(self, p_object): """ L.append(object) -> Non ...

  8. 缓存需要注意的问题以及使用.net正则替换字符串的方法

    参考资料:http://www.infoq.com/cn/news/2015/09/cache-problems 正则替换字符串的简单方法: var regTableType = new Regex( ...

  9. 欧几里德&扩展以及求解线性方程学习总结--附上poj1061解题报告

    欧几里德算法: 欧几里德就是辗转相除法,调用这个gcd(a,b)这个函数求解a,b的最大公约数 公式: gcd(a,b)=gcd(b,a%b):并且gcd(a,b)=gcd(b,a)=gcd(-a,b ...

  10. Oracle数据库编程:使用PL/SQL编写触发器

    8.使用PL/SQL编写触发器: 触发器存放在数据缓冲区中.        触发器加序列能够实现自动增长.        在触发器中不能使用connit和rollback.        DML触发器 ...