I've created the following user (in Oracle 12c), assuming they wouldn't be able to create new tables in the schema...
CREATE USER myuser
IDENTIFIED BY somePassword
DEFAULT TABLESPACE myTablespace
QUOTA UNLIMITED on myTablespace;
GRANT CONNECT TO myuser;
GRANT CREATE SESSION TO myuser;
GRANT UNLIMITED TABLESPACE TO myuser;
GRANT SELECT ANY TABLE TO myuser;
This user can "create table" which wasn't granted.
I've tried the following...
REVOKE create table from myuser;
...but I get ...
ORA-01952: system privileges not granted to 'myuser'
...which is because they don't have that grant. I can grant them "create table" and then revoke works - but it appears pointless, as the user can create tables either way.
Is it possible to prevent "create table" for my user?
Any help appreciated.