Saltar al contenido
DBAExperts
Oracle Usuarios y permisos

Cómo crear un usuario y otorgar permisos en Oracle

Un usuario nuevo debe recibir solo los permisos que necesita. Otorgar de más es la causa más común de problemas de seguridad.

  1. 1

    Crea el usuario

    Define contraseña y el tablespace por defecto. En bases con contenedores, decide si es común o local.

    CREATE USER app_user IDENTIFIED BY "Clave_Segura#2026"
      DEFAULT TABLESPACE users
      TEMPORARY TABLESPACE temp
      QUOTA 100M ON users;
  2. 2

    Otorga privilegios de conexión

    Sin CREATE SESSION el usuario no puede iniciar sesión aunque exista.

    GRANT CREATE SESSION TO app_user;
  3. 3

    Usa roles en lugar de grants sueltos

    Agrupa permisos en un rol y asígnalo. Facilita el mantenimiento y la auditoría.

    CREATE ROLE app_rol;
    GRANT SELECT, INSERT, UPDATE, DELETE ON ventas.pedidos TO app_rol;
    GRANT app_rol TO app_user;
  4. 4

    Otorga permisos de objeto puntuales

    Para accesos específicos, otorga directo al objeto. Evita GRANT ANY salvo casos justificados.

    GRANT SELECT ON ventas.clientes TO app_user;
  5. 5

    Revoca y verifica

    Quita lo que sobra y revisa los privilegios efectivos del usuario.

    SELECT * FROM dba_role_privs WHERE grantee = 'APP_USER';
    SELECT * FROM dba_tab_privs WHERE grantee = 'APP_USER';

// el error común

Otorgar DBA o CREATE ANY TABLE por comodidad da acceso a toda la base. Un usuario de aplicación casi nunca lo necesita.

// cuándo conviene un experto

Si el esquema de permisos creció sin control o hay usuarios con más acceso del que deberían, conviene auditarlo. En dba.mx revisamos y ordenamos permisos con techo cerrado.

Agenda un Escaneo — desde USD $550

Esta guía es orientativa y usa comandos de referencia. En producción, adapta a tu versión y prueba en un ambiente seguro primero.