2. WITH GRANT OPTION
• Otorgar privilegios sobre objetos
• El usuario con este privilegio, podrá otorgar a
otros usuarios.
• Los usuarios con el privilegio WITH GRANT
OPTION pueden revocar el privilegio de
cualquier otro usuario de la base de datos.
• Hay un efecto en cascada cuando se revoca un
privilegio.
3. WITH ADMIN OPTION
• Otorgar privilegios del sistema
• El usuario con este privilegio de sistema podrá
otorgarlo a otros usuarios.
• Los usuarios con el privilegio del sistema
ADMIN OPTION pueden revocar el privilegio
de cualquier otro usuario de la base de datos.
• No hay un efecto en cascada cuando se revoca
un privilegio.
4. SYS USERA USERB
Priv. sistema
CREATE SESSION WITH ADMIN OPTION CREATE SESSION
Priv. De Objeto
SELECT ON HR.EMPLOYEES
WITH GRANT OPTION
SELECT ON HR.EMPLOYEES
Priv. sistema
Priv. De Objeto
5. SYS USERA USERB
Priv. sistema
CREATE SESSION
WITH ADMIN OPTION
CREATE SESSION
Priv. De Objeto
SELECT ON HR.EMPLOYEES
WITH GRANT OPTION
SELECT ON HR.EMPLOYEES
Priv. sistema
Priv. De Objeto
CREATE SESSION
6. Asignando privilegios de Sistema con
la opción WITH ADMIN OPTION
• Crear el usuario USERA/USERA
CREATE USER USERA IDENTIFIED BY USERA;
• Crear el usuario USERB/USERB
CREATE USER USERB IDENTIFIED BY USERB
• El usuario SYS le asigna el privilegio create session con la
opción WITH ADMIN OPTION al usuario USERA
GRANT CREATE SESSION TO USERA WITH ADMIN OPTION;
7. Asignando privilegios de Sistema con
la opción WITH ADMIN OPTION
• Conectarse con USERA/USERA
• Asignarle el privilegio create session a USERB
GRANT CREATE SESSION TO USERB;
• Conectarse con el usuario USERB/USERB
8. Asignando privilegios de objeto utilizando
la opción WITH GRANT OPTION
• Conectarse como sys/sys as sysdba
• Asignarle al USERA el privilegio SELECT sobre la tabla hr.employees
con la opción WITH GRANT OPTION
GRANT SELECT ON HR.EMPLOYEES TO USERA WITH GRANT OPTION;
• Conectarse con el usuario USERA
• Asignarle al usuario USERB el privilegio SELECT sobre la tabla
hr.employees.
GRANT SELECT ON HR.EMPLOYEES TO USERB;
10. Comando para crear un usuario
CREATE USER nombre_usuario
IDENTIFIED BY contraseña
[DEFAULT TABLESPACE nombre_tablespace]
[TEMPORARY TABLESPACE nombre_temp]
[QUOTA INT{K|M} | UNLIMITED ON tablespace]
[PROFILE perfil]
[PASSWORD EXPIRE]
[ACCOUNT {UNLOCK|LOCK}];
11. PROFILE
• Es un conjunto de límites de recursos de la
base de datos, los cuales se asignan a un
determinado usuario.
• Se debe habilitar/deshabilitar la limitación de
recursos mediante perfiles.
• Consulte el parámetro que limita los recursos
mediante perfiles
Resource_limit = TRUE
12. Modificar el parámetro resource_limit
• ALTER SYSTEM SET resource_limit =
TRUE/FALSE SCOPE=SPFILE/MEMORY/BOTH;
13. PERFIL DEFAULT
• Es el perfil por defecto que se le asigna a los
usuarios que no se especifican el perfil a
asignar.
• Utilice la vista DBA_PROFILES para ver los
recursos que limita el perfil DEFAULT
15. PARÁMETROS DE RECURSOS
• SESSIONS_PER_USER Número de sesiones
concurrentes
• CPU_PER_SESSION Tiempo de CPU por
sesión (centésimas de segundo)
• CPU_PER_CALL Tiempo de CPU para una
llamada(centésimas de segundo)
• CONNECT_TIME Tiempo total para una
sesión (minutos)
16. PARAMETROS DE RECURSOS
• IDLE_TIME Tiempo de inactividad continua en
una sesión (minutos)
• LOGICAL_READS_PER_SESSION número de
bloques de datos leídos en una sesión
• LOGICAL READS_PER_CALL número de
bloques de datos para una llamada SQL
• PRIVATE_SGA Cantidad de espacio, en bytes,
para uso privado reservado en “SHARED
POOL” (kilobytes K y megabytes M).
17. PARÁMETROS DE CONTRASEÑA
• FAILED_LOGIN_ATTEMPTS número de intentos
fallidos de conexión antes del bloqueo.
• PASSWORD_LIFE_TIME número de días en que la
clave es válida para autenticación.
• PASSWORD_GRACE_TIME número de días,
periodo de gracia donde se permite la conexión
pero se notifica la necesidad de cambiarla.
• PASSWORD_REUSE_TIME 30 número de días en
los cuales la contraseña no puede reutilizarse
18. PARÁMETROS DE CONTRASEÑA
• PASSWORD_REUSE_MAX Número de cambios
clave necesarios antes de reutilizar la
contraseña actual.
• PASSWORD_LOCK_TIME Número de días que
la cuenta estará bloqueada después de un
cierto número de fallos de conexión.
• PASSWORD_VERIFY_FUNCTION Permite
indicar un argumento que verifica la
complejidad de la clave: verify_function
19. EJECUTAR EL SCRIPT DE CREACIÓN DE FUNCIONES
DE VERIFICACIÓN DE CONTRASEÑAS
• Buscar el archivo UTLPWDMG.SQL en la carpeta
C:oraclexeapporacleproduct11.2.0serverrdb
msadmin
Copiar el archivo UTLPWDMG.SQL en el disco C:
Ejecutar el archivo
@C:UTLPWDMG.SQL
20. Ejemplo: Parámetros de Recursos
• Crear un perfil denominado “perfil_recursos”
que permita:
Solo se permite una sesión concurrente por
usuario. El tiempo de conexión de la sesión no
debe exceder los 2 minutos. El tiempo máximo
que una sesión puede estar inactiva es de 1
minuto.
21. Parámetros de Recursos
• Crear el usuario user_recursos/user_recursos
• Asignar el perfil perfil_recursos
• Asignar el privilegio de crear sesión
• Asignar el privilegio de hacer select a la tabla
employees.
• Modificar el perfil PERFIL_RECURSOS
limitando el tiempo de uso del CPU por sesión
a 1 segundo.
22. • Probar
– Crear 2 sesiones con el mismo usuario
– Dejar inactiva la sesión por más de un minuto
– Usar la sesión por más de 2 minutos
• Asignar el perfil DEFAULT al usuario
user_recursos
23. Ejemplo
• Crear un perfil denominado “perfil_passwd” que
permita:
Restringir el número de intentos fallidos a cuatro, si
se excede el número de intentos fallidos se deberá
bloquear la cuenta por una hora. La contraseña
asignada será valida solo por 30 días, el periodo de
gracia de la contraseña será de 10 días. Activar la
función verify_function para verificar la
complejidad de la contraseña.
24. Ejemplo
• Crear el usuario:
Nombre de usuario: user_passwd
Contraseña: user_passwd
Perfil: Perfil_passwd