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 |