Oracle 12c – Insufficient Privileges When Creating Trigger with SYS User

oracleoracle-12cpermissionssystrigger

I want to create a trigger for CRE schema. I'm trying to create this trigger with SYS user but I have insufficient privileges error.

My trigger:

CREATE OR REPLACE TRIGGER CRE.TRIGGER_NAME
AFTER LOGON ON DATABASE
DECLARE
asd1 NUMBER;
asd2 NUMBER;
asd3 NUMBER;
asd4 NUMBER;
asd NUMBER;
qwe VARCHAR2(200);
qaz VARCHAR2(200);
ewq NUMBER;
zaq VARCHAR2(50);
xsw VARCHAR2(50);
BEGIN
CRE.SOME_PROCEDURE_NAME('S', SYSDATE);
END;
/

How can it possible with SYS user?

How can I fix it?

Best regards.

Best Answer

Even if you create the trigger as SYS, the owner must have the CREATE TRIGGER privilege:

GRANT CREATE TRIGGER TO CRE;

In addition to the above, to create an AFTER LOGON ON DATABASE trigger, the ADMINISTER DATABASE TRIGGER privilege is also required:

GRANT ADMINISTER DATABASE TRIGGER TO CRE;