Esta sentencia sirve para crear un perfil de usuario.
Un perfil de usuario es una forma de limitar los recursos que puede utilizar un usuario.
Cada usuario puede tener un único perfil.
Antes de asignar un perfil a un usuario es necesario que este perfil exista en la base de datos.
Un perfil se asigna en la creación de un usuario CREATE USER o modificandolo ALTER USER.
Un ejemplo de script sería:CREATE PROFILE app_user LIMIT SESSIONS_PER_USER 2 -- CPU_PER_SESSION 10000 -- decimas de segundo CPU_PER_CALL 1 -- decimas de segundo CONNECT_TIME UNLIMITED -- minutos IDLE_TIME 30 -- minutos LOGICAL_READS_PER_SESSION DEFAULT -- DB BLOCKS LOGICAL_READS_PER_CALL DEFAULT -- DB BLOCKS -- COMPOSITE_LIMIT DEFAULT -- PRIVATE_SGA 20M -- FAILED_LOGIN_ATTEMPTS 3 -- PASSWORD_LIFE_TIME 30 -- dias PASSWORD_REUSE_TIME 12 -- PASSWORD_REUSE_MAX UNLIMITED -- PASSWORD_LOCK_TIME DEFAULT -- dias PASSWORD_GRACE_TIME 2 -- dias PASSWORD_VERIFY_FUNCTION NULL;
Los recursos que limitamos son recursos del kernel: uso de la CPU, duración de sesion,...
Y tambien limites de uso de las claves de acceso (passwords): duración, intentos de acceso, reuso, ...
Por ejemplo:ALTER PROFILE default LIMIT IDLE_TIME 20;
Limita el perfil por defecto a 20 minutos. IDLE_TIME: Es el tiempo que puede estar una sesión sin hacer nada antes de ser cerrada.
Explicación de la sintaxis utilizada para los comandos: Las palabras en mayusculas son comandos de oracle. Las palabras en minusculas son opiones modificables Las partes enmarcadas con [] son opcionales Las palabras en negrita son las opciones por defecto Las partes enmarcadas con {} son alternativas (una u otra). El simbolo | indica OR