Informática
Administración y Optimización de Bases de Datos Oracle
Administración y Optimización de Bases de Datos Oracle
Gestión de privilegios y recursos
| Conceptos de gestión de privilegios y recursos |
| Concepto | Significado |
|
Privilegio | Permiso para realizar una acción, asignable a un usuario o un rol |
| Rol | Conjunto de privilegios, asignables a un usuario o un rol |
| Usuario | Colección de objetos y privilegios identificado con un nombre y password |
| Perfil | Conjunto de restricciones relativas al uso de recursos, y asignable a usuarios. Un usuario sólo puede tener un perfil |
| Recurso | Uso susceptible de ser restringido, asignable a un perfil |
| Roles Predefinidos por Oracle (select * from dba_roles;) |
| CONNECT |
| RESOURCE |
| DBA |
| EXP_FULL_DATABASE |
| IMP_FULL_DATABASE |
| DELETE_CATALOG_ROLE |
| EXECUTE_CATALOG_ROLE |
| SELECT_CATALOG_ROLE |
| Recursos en Oracle (select * from user_resource_limits;) |
| COMPOSITE_LIMIT |
| SESSIONS_PER_USER |
| CPU_PER_SESSION |
| CPU_PER_CALL |
| LOGICAL_READS_PER_SESSION |
| LOGICAL_READS_PER_CALL |
| IDLE_TIME |
| CONNECT_TIME |
| PRIVATE_SGA |
| Limites en uso del espacio en disco (select * from dba_ts_quotas;) |
| ALTER USER SCOTT QUOTA UNLIMITED ON USER_DATA; |
| ALTER USER SCOTT QUOTA 5M ON TEMPORARY_DATA; |
| ALTER USER SCOTT QUOTA 0 ON SYSTEM; |
| Para la gestión de | se utilizan los comandos |
| Privilegios | GRANT (conceder un privilegio a un usuario o a un rol) |
| Roles | CREATE ROLE (crear) |
| Usuarios | CREATE USER (crear) |
| Perfiles y Recursos | CREATE PROFILE (crear) |
| Activación de perfiles |
| Estado de la Base de Datos | Acción |
| Base de Datos Parada | RESOURCE_LIMIT = TRUE en c:\orant\database\initorcl.ora |
| Base de Datos Arrancada | ALTER SYSTEM SET RESOURCE_LIMIT = TRUE; |
| Vistas más relevantes |
| Significado | |||
| Usuarios | Principio del formulario Final del formulario | Principio del formulario Final del formulario | Principio del formulario Final del formulario |
| Roles | Principio del formulario Final del formulario | Principio del formulario Final del formulario | Principio del formulario Final del formulario |
| Roles asignados a roles o usuarios | Principio del formulario Final del formulario | Principio del formulario Final del formulario | Principio del formulario Final del formulario |
| Privilegios asignados a roles o usuarios | Principio del formulario Final del formulario | Principio del formulario Final del formulario | Principio del formulario Final del formulario |
| Permisos sobre tablas asignados a roles o usuarios | Principio del formulario Final del formulario | Principio del formulario Final del formulario | Principio del formulario Final del formulario |
| Roles asignados a roles | Principio del formulario Final del formulario | Principio del formulario Final del formulario | Principio del formulario Final del formulario |
| Privilegios de cada rol | Principio del formulario Final del formulario | Principio del formulario Final del formulario | Principio del formulario Final del formulario |
| Límites de recursos | Principio del formulario Final del formulario | Principio del formulario Final del formulario | Principio del formulario Final del formulario |
| Perfiles y sus límites de recursos asociados | Principio del formulario Final del formulario | Principio del formulario Final del formulario | Principio del formulario Final del formulario |
| Límites de recursos en cuanto a restricciones en claves | Principio del formulario Final del formulario | Principio del formulario Final del formulario | Principio del formulario Final del formulario |
| Límites de recursos en cuanto a espacio máximo en tablespaces | Principio del formulario Final del formulario | Principio del formulario Final del formulario | Principio del formulario Final del formulario |
| Ejemplos de gestión de privilegios y recursos |
| Crear un perfil que que sólo permita 2 conexiones concurrentes y asignar ese perfil al usuario SCOTT |
SYSTEM>create profile solodos limit sessions_per_user 2;
SYSTEM>alter user scott profile solodos;
| Crear un rol llamado conectarse que incluya los roles connect y resource, y asignar ese rol a scott |
SYSTEM>create role conectarse;
SYSTEM>grant connect, resource to conectarse;
SYSTEM>grant conectarse to scott;
| Convertir a scott en DBA |
SYSTEM>grant dba to scott;
| Crear un usuario especificando que la password debe ser cambiada en la primera conexión |
SYSTEM>create user prueba1 identified by prueba1 password expire;
| Cambiar el espacio reservado en disco para SCOTT |
SYSTEM>alter user scott quota unlimited on user_data;
SYSTEM>alter user scott quota 5M on temporary_data;
SYSTEM>alter user scott quota 0 on system;
SYSTEM>select * from dba_ts_quotas;
| Crear un usuario llamado PRUEBA1 y darle únicamente el permiso para conectarse (hacer log on) |
SYSTEM>create user prueba1 identified by prueba1;
SYSTEM>grant create session to prueba1;
| Dar al usuario PRUEBA1 permiso para crear tablas |
SYSTEM>grant create table to prueba1;
SYSTEM>alter user prueba1 default tablespace system quota 10M on system;
SYSTEM>connect prueba1/prueba1
PRUEBA1>create table tabla1(campo1 number);
PRUEBA1>connect system/manager
| Desde SCOTT, dar al usuario PRUEBA1 el permiso de consultar la tabla EMP |
SYSTEM>connect scott/tiger
SCOTT>grant select on emp to prueba1;
PRUEBA1>select * from scott.emp;
PRUEBA1>connect system/manager
| Desde SCOTT, dar al usuario PRUEBA1 el permiso de insertar en la tabla EMP |
SYSTEM>connect scott/tiger
SCOTT>grant insert on emp to prueba1;
PRUEBA1>insert into scott.emp values ('john',999,'development');
PRUEBA1>connect system/manager
| Desde SYSTEM, dar al usuario PRUEBA1 el permiso de consultar la tabla EMP de SCOTT |
SYSTEM>connect scott/tiger
SCOTT>grant select on emp to system with grant option;
PRUEBA1>connect system/manager
SYSTEM>grant select on scott.emp to prueba1;
SYSTEM>connect prueba1/prueba1
PRUEBA1>select * from scott.emp;
PRUEBA1>connect system/manager
| Desde SYSTEM, dar al usuario PRUEBA1 el permiso de crear otros usuarios |
SYSTEM>grant create user to prueba1;
SYSTEM>connect prueba1/prueba1
PRUEBA1>create user prueba2 identified by prueba2;
drop user prueba2;
PRUEBA1>connect system/manager
| Desde SYSTEM, dar al usuario PRUEBA1 el permiso de crear otros usuarios (por ejemplo, PRUEBA2) de forma que estos, a su vez, puedan crear otros usuarios (por ejemplo, PRUEBA3) |
SYSTEM>grant create user to prueba1 with admin option;
SYSTEM>grant create session to prueba1 with admin option;
SYSTEM>connect prueba1/prueba1
PRUEBA1>create user prueba2 identified by prueba2;
PRUEBA1>grant create user to prueba2 with admin option;
PRUEBA1>grant create session to prueba2 with admin option;
PRUEBA1>connect prueba2/prueba2
PRUEBA2>create user prueba3 identified by prueba3;
PRUEBA2>grant create session to prueba3;
PRUEBA2>connect prueba3/prueba3
PRUEBA3>connect system/manager
| Privilegios sobre objetos |
| ALTER |
| EXECUTE |
| INDEX |
| INSERT |
| READ |
| REFERENCES |
| SELECT |
| UPDATE |
| ALL ó ALL PRIVILEGES |
| Privilegios del sistema |
| ALTER ANY CLUSTER |
| ALTER ANY INDEX |
| ALTER ANY PROCEDURE |
| ALTER ANY ROLE |
| ALTER ANY SEQUENCE |
| ALTER ANY SNAPSHOT |
| ALTER ANY TABLE |
| ALTER ANY TYPE |
| ALTER ANY TRIGGER |
| ALTER DATABASE |
| ALTER PROFILE |
| ALTER RESOURCE COST |
| ALTER ROLLBACK SEGMENT |
| ALTER SESSION |
| ALTER SYSTEM |
| ALTER TABLESPACE |
| ALTER USER |
| ANALYZE ANY |
| AUDIT ANY |
| AUDIT SYSTEM |
| BACKUP ANY TABLE |
| BECOME USER |
| COMMENT ANY TABLE |
| CREATE ANY CLUSTER |
| CREATE ANY DIRECTORY |
| CREATE ANY INDEX |
| CREATE ANY LIBRARY |
| CREATE ANY PROCEDURE |
| CREATE ANY SEQUENCE |
| CREATE ANY SNAPSHOT |
| CREATE ANY SYNONYM |
| CREATE ANY TABLE |
| CREATE ANY TRIGGER |
| CREATE ANY TYPE |
| CREATE ANY VIEW |
| CREATE CLUSTER |
| CREATE DATABASE LINK |
| CREATE ANY LIBRARY |
| CREATE PROCEDURE |
| CREATE PROFILE |
| CREATE PUBLIC DATABASE LINK |
| CREATE PUBLIC SYNONYM |
| CREATE ROLE |
| CREATE ROLLBACK SEGMENT |
| CREATE SEQUENCE |
| CREATE SESSION |
| CREATE SNAPSHOT |
| CREATE SYNONYM |
| CREATE TABLE |
| CREATE TABLESPACE |
| CREATE TRIGGER |
| CREATE TYPE |
| CREATE USER |
| CREATE VIEW |
| DELETE ANY TABLE |
| DROP ANY CLUSTER |
| DROP ANY DIRECTORY |
| DROP ANY INDEX |
| DROP ANY LIBRARY |
| DROP ANY PROCEDURE |
| DROP ANY ROLE |
| DROP ANY SEQUENCE |
| DROP ANY SNAPSHOT |
| DROP ANY SYNONYM |
| DROP ANY TABLE |
| DROP ANY TRIGGER |
| DROP ANY TYPE |
| DROP ANY VIEW |
| DROP LIBRARY |
| DROP PROFILE |
| DROP PUBLIC DATABASE LINK |
| DROP PUBLIC SYNONYM |
| DROP ROLLBACK SEGMENT |
| DROP TABLESPACE |
| DROP USER |
| EXECUTE ANY PROCEDURE |
| EXECUTE ANY TYPE |
| FORCE ANY TRANSACTION |
| FORCE TRANSACTION |
| GRANT ANY PRIVILEGE |
| GRANT ANY ROLE |
| INSERT ANY TABLE |
| LOCK ANY TABLE |
| MANAGE TABLESPACE |
| RESTRICTED SESSION |
| SELECT ANY SEQUENCE |
| SELECT ANY TABLE |
| SYSDBA |
| SYSOPER |
| UNLIMITED TABLESPACE |
| UPDATE ANY TABLE |
Descargar
| Enviado por: | DAVID ARANDA |
| Idioma: | castellano |
| País: | Paraguay |
