`
zhyiwww
  • 浏览: 90024 次
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

Oracle Roles (转载)

阅读更多
Oracle Roles
Version 10.2
General
Data Dictionary Objects Related to Roles
defrole$ user$
dba_roles session_roles
dba_role_privs user_application_roles
role_role_privs user_role_privs
role_sys_privs v$pwfile_users
role_tab_privs
System Privileges Related To Roles
alter any role create role drop any role grant any role

Installation roles
Role Name Description
AQ_ADMINISTRATOR_ROLE Privilege to administer Advanced Queuing
AQ_USER_ROLE Deprecated
AUTHENTICATEDUSER DBUriServlet Security
CONNECT Contains the create session privilege (only)
CSW_USR_ROLE Not documented
CTXAPP Enables developers create Oracle Text indexes and index preferences, and to use PL/SQL packages.
CWM_USER Undocumented
DATAPUMP_EXP_FULL_DATABASE Undocumented
DATAPUMP_IMP_FULL_DATABASE Undocumented
DBA Example Database Administrator role. Should not be used
DELETE_CATALOG_ROLE Allow users to delete records from the system audit table (AUD$)
DMUSER_ROLE Undocumented
DM_CATALOG_ROLE Undocumented
EJBCLIENT Undocumented
EXECUTE_CATALOG_ROLE Allow users EXECUTE privileges for packages and procedures in the data dictionary

EXP_FULL_DATABASE
Provides the privileges required to perform full and incremental database exports, and includes: SELECT ANY TABLE, BACKUP ANY TABLE, EXECUTE ANY PROCEDURE, EXECUTE ANY TYPE, ADMINISTER RESOURCE MANAGER, and INSERT, DELETE, and UPDATE on the tables SYS.INCVID, SYS.INCFIL, and SYS.INCEXP. Also the following roles: EXECUTE_CATALOG_ROLE and SELECT_CATALOG_ROLE.
GATHER_SYSTEM_STATISTICS To update the dictionary system statistics a user must have DBA privileges or the GATHER_SYSTEM_STATISTICS role.
GLOBAL_AQ_USER_ROLE Required to register through LDAP using JDBC connection parameters as this requires the ability to write access to the connection factory entries in the LDAP server (which requires the LDAP user to be either the database itself or be granted GLOBAL_AQ_USER_ROLE).

HS_ADMIN_ROLE
Provides privileges for DBAs who need to use the DBA role using Oracle Database Heterogeneous Services to access appropriate tables in the data dictionary.

Used to protect access to the Heterogeneous Services (HS) data dictionary tables (grants SELECT) and packages (grants EXECUTE). It is granted to SELECT_CATALOG_ROLE and EXECUTE_CATALOG_ROLE such that users with generic data dictionary access also can access the HS data dictionary.

IMP_FULL_DATABASE
Provides the privileges required to perform full database imports. Includes an extensive list of system privileges (use view DBA_SYS_PRIVS to view privileges) and the following roles: EXECUTE_CATALOG_ROLE and SELECT_CATALOG_ROLE.

This role is provided for convenience in using the export and import utilities.
JAVADEBUGPRIV Grants permissions to run the Java debugger
JAVAIDPRIV Undocumented
JAVASYSPRIV Grants permissions for Java administrators including updating JVM-protected packages
JAVAUSERPRIV Grants permissions for Java users such as examining properties
JAVA_ADMIN Java administration privileges including permission to modify PolicyTable.
JAVA_DEPLOY Undocumented
JMXSERVER Provides permissions to start and maintain a JMX agent in a session. The procedure dbms_java.start_jmx_agent starts the agent in a specific session that generally remains active for the duration of the session.
LOGSTDBY_ADMINISTRATOR A prototype role created by default with RESOURCE, and EXECUTE on DBMS_LOGSTDBY privileges.

It is advisable to not use this role but rather to craft your own specific to your needs. Read Oracle's comments, in red with respect to RESOURCE. They apply here too.
MGMT_USER Undocumented
OEM_ADVISOR Required to run the Segment Advisor manually with Enterprise Manager.
OEM_MONITOR Undocumented
OLAPI_TRACE_USER Undocumented
OLAP_DBA To create dimensional objects in any schema
OLAP_USER Create dimensional objects
OLAP_XS_ADMIN Administer OLAP data security
ORDADMIN After installing Oracle Multimedia DICOM, the ORDADMIN role is created, with the database system privileges required for administration of the DICOM data model repository.

The ORDADMIN role must be assigned to the administrator of the DICOM data model repository.
OWB$CLIENT Privileges granted to PUBLIC are available to all sessions.
OWB_DESIGNCENTER_VIEW Undocumented
OWB_USER With Oracle Warehouse builder enables a remote Oracle WorkFlow instance to connect to the services provided by the Control Center.
PLUSTRACE Traditionally required to use AUTOTRACE but in 11gR1 it seems to function without this role being required.
PUBLIC -

RECOVERY_CATALOG_OWNER
Provides privileges for owner of the recovery catalog. Includes: CREATE SESSION, ALTER SESSION, CREATE SYNONYM, CREATE VIEW, CREATE DATABASE LINK, CREATE TABLE, CREATE CLUSTER, CREATE SEQUENCE, CREATE TRIGGER, and CREATE PROCEDURE

RESOURCE
Provides the following system privileges: CREATE CLUSTER, CREATE INDEXTYPE, CREATE OPERATOR, CREATE PROCEDURE, CREATE SEQUENCE, CREATE TABLE, CREATE TRIGGER, CREATE TYPE.

This role is provided for compatibility with previous releases of Oracle Database. You can determine the privileges encompassed by this role by querying the DBA_SYS_PRIVS data dictionary view.

Note: Oracle recommends that you design your own roles for database security rather than relying on this role. This role may not be created automatically by future releases of Oracle Database.
SCHEDULER_ADMIN Allows the grantee to execute the procedures of the DBMS_SCHEDULER package. It includes all of the job scheduler system privileges and is included in the DBA role.
SELECT_CATALOG_ROLE Provides SELECT privilege on objects in the data dictionary. Also provides the HS_ADMIN_ROLE privilege.
SPATIAL_CSW_ADMIN Privileges granted the Catalog Services for the Web (CSW) account used by the Oracle Spatial CSW cache manager to load all record type metadata, and record instances from the database into the main memory for the record types that are cached.
SPATIAL_WFS_ADMIN Privileges granted the Web Feature Service (WFS) account used by the Oracle Spatial WFS cache manager to load all feature type metadata, and feature instances from the database into main memory for the feature types that are cached.
WFS_USR_ROLE Privileges granted a Web Feature Service (WFS) user
WKUSER Privileges that must be granted to database users hosting new Oracle Ultra Search instances.
WM_ADMIN_ROLE Contains all Workspace Manager privileges with the grant option. By default, the database administrator (DBA role) is granted the WM_ADMIN_ROLE role.
XDBADMIN Allows the grantee to register an XML schema globally, as opposed to registering it for use or access only by its owner. It also lets the grantee bypass access control list (ACL) checks when accessing Oracle XML DB Repository.
XDB_SET_INVOKER Allows the grantee to define invoker's rights handlers and to create or update the resource configuration for XML repository triggers. By default, Oracle Database grants this role to the DBA role but not to the XDBADMIN role.
XDB_WEBSERVICES Allows the grantee to access Oracle Database Web services over HTTPS. However, it does not provide the user access to objects in the database that are public. To allow public access, you need to grant the user the XDB_WEBSERVICES_WITH_PUBLIC role. For a user to use these Web services, SYS must enable the Web service servlets.
XDB_WEBSERVICES_OVER_HTTP Allows the grantee to access Oracle Database Web services over HTTP. However, it does not provide the user access to objects in the database that are public. To allow public access, you need to grant the user the XDB_WEBSERVICES_WITH_PUBLIC role.
XDB_WEBSERVICES_WITH_PUBLIC Allows the grantee access to public objects through Oracle Database Web services.
Roles are treated like users in the data dictionary SELECT name USER_NAMES
FROM user$
WHERE type# = 1;

SELECT name ROLE_NAMES
FROM user$
WHERE type# = 0;
Controlling The Number Of Roles With An init.ora Parameter max_enabled_roles = <integer>
max_enabled_roles = 100
NOTE:
  • Roles can contain system privileges
  • Roles can contain object privileges
  • Roles can contain roles
  • Object privileges granted through roles do not work within procedures, functions, and packages. Those permissions must be granted explicitly to the user.
Creating Roles
Create Role CREATE ROLE <role_name>;
CREATE ROLE read_only;
Create Password Protected Role CREATE ROLE <role_name> IDENTIFIED BY <password>;
CREATE ROLE dba IDENTIFIED BY "S0^Sorry";
Assigning Privileges And Roles To Roles
Assign Privilege To A Role GRANT <privilege_name> TO <role_name>;
GRANT create session TO read_only
Create A Role Heirarchy GRANT <role_name> TO <role_name>;
CREATE ROLE ap_clerk;

GRANT read_only TO ap_clerk;
GRANT select ON general_ledger TO ap_clerk;
GRANT insert ON ap_master TO ap_clerk;
GRANT update ON ap_master TO ap_clerk;
GRANT insert ON ap_detail TO ap_clerk;
GRANT update ON ap_detail TO ap_clerk;
Add Another Layer To The Heirarchy GRANT <roles and privileges> TO <role_name>;
CREATE ROLE ap_manager IDENTIFIED BY appwd;

GRANT ap_clerk TO ap_manager;
GRANT delete ON ap_master TO ap_manager;
GRANT delete ON ap_detail TO ap_manager;
GRANT select any table TO ap_manager;
Assigning Roles
Assigning Roles To Users GRANT <roles_name> TO <user_name>;
GRANT read_only TO jcline;

GRANT ap_clerk TO jstough;
GRANT ap_clerk TO ckeizer;
GRANT ap_clerk TO rallen;

GRANT ap_manager TO escott;
Revoking Privileges From Roles
Revoke Privilege REVOKE <privilege_name> FROM <role_name>;
REVOKE select any table FROM ap_manager;
Revoking Roles
Revoke a role from a user REVOKE <role_name> FROM <user_name>;
REVOKE ap_manager FROM escott;
Revoke A Role And Drop Any Invalidated Constraints REVOKE ALL ON <table_name>
FROM <schema_name>
CASCADE CONSTRAINTS;
REVOKE ALL ON invoices
FROM abc
CASCADE CONSTRAINTS;
Activating & Decactivating Roles
Activating A Role SET ROLE <role_name>;
SET ROLE ap_clerk;
Activating A Password Protected Role SET ROLE <role_name> IDENTIFIED BY <role_password>;
SET ROLE ap_manager IDENTIFIED BY appwd;
Activating All Roles SET ROLE all;
Activating All Roles Except One SET ROLE all EXCEPT <role_name>;
SET ROLE all EXCEPT ap_manager;
Deactivating A Role Can not be done on an individual basis
Deactivating All Roles SET ROLE none;
Drop Role
Dropping A Role DROP ROLE <role_name>;
DROP ROLE manager_role;
PLUSTRACE Role
Creating And Assigning The PLUSTRACE Role Used By AUTOTRACE This role must be created by SYS and grants SELECT on the following v_$ views:
  • V_$SESSTAT
  • V_$STATNAME
  • V_$MYSTAT
SQL> @c:\oracle\product\ora10\sqlplus\admin\plustrce.sql

GRANT plustrace TO uwclass;
Role Related Queries
All Roles Available In The Database SELECT name
FROM user$
WHERE type# = 0;
Roles Granted To A User SELECT *
FROM user_role_privs;
Privileges Granted To A Role SELECT *
FROM role_sys_privs;
System Privileges SELECT DISTINCT privilege
FROM dba_sys_privs;
Grant SELECT On All Tables In A Schema CREATE OR REPLACE PROCEDURE GRANT_SELECT AS

CURSOR ut_cur IS
SELECT table_name
FROM user_tables;

RetVal NUMBER;
sCursor INT;
sqlstr VARCHAR2(250);

BEGIN
FOR ut_rec IN user_tabs_cur;
LOOP
sqlstr := 'GRANT SELECT ON '||ut_rec.table_name
|| ' TO jwc7675';
sCursor := dbms_sql.open_cursor;
dbms_sql.parse(sCursor,sqlstr, dbms_sql.native);

RetVal := dbms_sql.execute(sCursor);
dbms_sql.close_cursor(sCursor);
END LOOP;
END grant_select;
Roles Granted To Schemas SELECT grantee, granted_role
FROM dba_role_privs;
Tables And Columns That Can Be Modified by a User SELECT *
FROM all_updatable_columns;
Other Related Topics
Autotrace
Consumer Groups
Object Privileges
Profiles
System Privileges
Users
Contact Us Legal Notices and Terms of UsePrivacy Statement
分享到:
评论

相关推荐

    Oracle Security

    Chapter 5 Oracle Default Roles and User Accounts About the Defaults The CONNECT Role The RESOURCE Role The DBA Role The SYSDBA and SYSOPER Roles Using the Default Roles Default User Accounts ...

    ansible-oracle-master

    - **角色(Roles)**:在Ansible中,我们可以创建一个名为“oracle”的角色,包含所有安装Oracle所需的任务(tasks)、变量(variables)、模板(templates)和文件(files)。 - **任务(Tasks)**:在tasks/main...

    Abp项目模板使用Oracle数据库

    在Oracle 11g数据库中,这些实体会被映射到相应的表,如Users、Roles、Permissions等。 接下来,我们看看压缩包内的两个文件:“CAC.MES.EntityFramework”和“CAC.MES.Core”。"Entity Framework"是微软的一个ORM...

    oracle官方文档-Oracle Database Concepts

    角色(Roles)、权限(Privileges)和对象权限(Object Privileges)是管理用户访问的关键元素。 10. **集群技术**:Oracle Real Application Clusters (RAC) 允许数据库在多台服务器上运行,提高可用性和性能。它...

    涂抹Oracle 高清版

    4. **数据库安全**:包括用户管理、权限控制(GRANT和REVOKE)、角色(ROLES)以及审计(Auditing)等,确保数据的安全访问。 5. **性能优化**:Oracle提供了各种工具和技巧进行性能监控和调优,如SQL*Plus、...

    oracle fail safe解决方案

    oracle fail safe安装配置解决方案。

    Zx_Roles tool v2.5 免费版.rar

    《Zx_Roles工具v2.5免费版详解》 在信息技术领域,工具软件往往扮演着提高效率、简化任务的关键角色。"Zx_Roles tool v2.5 免费版"便是这样一款专为用户提供便捷服务的工具,旨在帮助用户更有效地管理和控制角色...

    oracle-security.rar_Oracle 11G_Oracle Security_oracle_oracle 11

    6. **安全标签和多层安全**:Oracle 11g引入了Secure Application Roles和Virtual Private Database (VPD)等特性,允许基于用户、时间、地点等条件进行访问控制,实现数据的多层隔离。 7. **实时应用监控**:Oracle...

    oracle初学者指南

    1. 用户管理:创建、删除用户,分配权限,理解ROLES和GRANTS。 2. 角色与权限:设置对象权限和系统权限,理解默认角色的权限分配。 3. 审计:监控数据库活动,跟踪敏感操作,确保数据安全。 九、数据库监控与故障...

    Oracle概念

    6. **安全性**:Oracle提供精细的权限和角色管理,如用户(Users)、权限(Privileges)、角色(Roles)以及访问控制列表(ACLs),确保数据安全。此外,还有审计(Auditing)功能来追踪数据库活动。 7. **事务处理...

    oracle原厂数据.zip

    权限和角色(Privileges and Roles)机制确保了数据的访问控制。DBA可以定义用户、分配权限、创建角色,以及实施审计策略来追踪数据库活动。Oracle还支持透明数据加密(Transparent Data Encryption,TDE),以保护...

    Oracle DG 通过rman部署过程(单例Oracle 12c-Oracle 12c)

    - `*.log_archive_dest_1='location=/u01/app/arch valid_for=(all_logfiles,all_roles) db_unique_name=orcl_pri'` #### 四、备库配置 **1. 安装数据库软件** 在备库上仅安装 Oracle 软件,不创建实例。 **2. ...

    (可参考)ORACLE 12C DATAGUARD环境搭建和主从切换.docx

    alter system set LOG_ARCHIVE_DEST_1='LOCATION=/u01/app/oracle/arch/VALID_FOR=(ALL_LOGFILES,ALL_ROLES)DB_UNIQUE_NAME=cdbtest' scope=both; alter system set LOG_ARCHIVE_DEST_2='SERVICE=cdbtest1 ASYNC ...

    UNIX下创建ORACLE数据库

    `open_cursors` 控制并发会话可以打开的游标数量,`max_enabled_roles` 设置最大启用的角色数,`db_block_buffers` 设定了缓冲区的数量,`shared_pool_size` 是共享池的大小,`java_pool_size` 为Java程序分配的空间...

    SAP Roles config

    SAP roles training material

    Ansible-Ansible-roles.zip

    在 "Ansible-roles.zip" 压缩包中的 "Ansible-roles-master" 文件可能是一个包含多个预定义角色的仓库。每个角色通常有以下目录结构: - tasks:包含角色的主要任务清单文件。 - handlers:定义了当某些事件发生时...

    oracle数据库各种功能语句以及驱动

    7. 权限和角色(Privileges and Roles):Oracle提供了一套权限系统来控制用户对数据库资源的访问。`GRANT` 和 `REVOKE` 用于赋予和撤销权限,而角色是权限的集合,可以简化权限管理。 8. 驱动:在Java中,Oracle ...

    oracle详细介绍(中英对照)

    2. 角色(Roles):角色是一组权限的集合,方便权限管理。 3. 权限(Privileges):包括系统权限(如CREATE TABLE)和对象权限(如SELECT ON TABLE),控制用户对数据库资源的访问。 六、Oracle备份与恢复 1. 非...

    Oracle 11g升级12c方案

    - 打开 Server Manager -&gt; add Roles and features -&gt; features -&gt; Desktop Experience -&gt; add features -&gt; Next -&gt; install -&gt; 完成后重启服务器。 - 打开控制面板,确认 Flash Player 已经安装成功。 - 打开 IE...

Global site tag (gtag.js) - Google Analytics