Search notes:

$ORACLE_HOME/sqlplus/admin/pupbld.sql

$ORACLE_HOME/sqlplus/admin/pupbld.sql is the script that install the SQL*Plus PRODUCT_USER_PROFILE table and the PRODUCT_PRIVS view.
This table allows to disable SQL*Plus commands per users.
These tables are only used by SQL*Plus and have no affect on other Oracle clients (and are therefore desupported starting with Oracle 19c).
create table sqlplus_product_profile (
  product        varchar2 (30) not null,  -- Or varchar2(128)
  userid         varchar2 (128),
  attribute      varchar2 (240),
  scope          varchar2 (240),
  numeric_value  decimal (15,2),
  char_value     varchar2 (240),
  date_value     date,
  long_value     long
);
create view product_privs as
  select product, userid, attribute, scope,
         numeric_value, char_value, date_value, long_value
  from sqlplus_product_profile
  where userid = 'public' or 
        userid like sys_context('userenv','current_user');

See also

SQL*Plus's command line option -restrict.
The parent directory $ORACLE_HOME/sqlplus/admin

Index