使用Oracle Database 12.2启用统一审核时的ORA-07445

时间:2018-04-18 22:04:53

标签: oracle oracle12c audit-logging

在Oracle数据库12.2中启用以下统一审核策略时,会发生v $ alert_log和ORA-03114中的每个新登录的一般错误ORA-07445。

遇到

ORA-07445:异常:核心转储[kxes_evaopn2_setup_rpiswu_args()+ 73] [SIGSEGV] [ADDR:0x218] [PC:0x2DCCFA9] [地址未映射到对象] []。

ORA-03114:未连接到ORACLE。

这个错误在三个经过测试的12.2数据库中一致发生。

但是,如果删除WHEN子句中的UPPER函数调用,则不会发生错误。这可能是12.2中的错误吗?此外,想知道这是否是一个有效的解决方法来删除UPPER函数调用。

-- create policies
CREATE AUDIT POLICY sox_audit_ddl
  ACTIONS
    CREATE ASSEMBLY,
    CREATE AUDIT POLICY,
    CREATE CLUSTER,
    CREATE CONTEXT,
    CREATE DATABASE LINK,
    CREATE DIMENSION,
    CREATE DIRECTORY,
    CREATE DISK GROUP,
    CREATE EDITION,
    CREATE FLASHBACK ARCHIVE,
    CREATE FUNCTION,
    CREATE INDEX,
    CREATE INDEXTYPE,
    CREATE JAVA,
    CREATE LIBRARY,
    CREATE MATERIALIZED VIEW ,
    CREATE MATERIALIZED VIEW LOG,
    CREATE MATERIALIZED ZONEMAP,
    CREATE OPERATOR,
    CREATE OUTLINE,
    CREATE PACKAGE,
    CREATE PACKAGE BODY,
    CREATE PFILE,
    CREATE PLUGGABLE DATABASE,
    CREATE PROCEDURE,
    CREATE PROFILE,
    CREATE RESTORE POINT,
    CREATE ROLE,
    CREATE ROLLBACK SEGMENT,
    CREATE SCHEMA,
    CREATE SCHEMA SYNONYM,
    CREATE SEQUENCE,
    CREATE SPFILE,
    CREATE SYNONYM,
    CREATE TABLE,
    CREATE TABLESPACE,
    CREATE TRIGGER,
    CREATE TYPE,
    CREATE TYPE BODY,
    CREATE USER,
    CREATE VIEW,
    ALTER ASSEMBLY,
    ALTER AUDIT POLICY,
    ALTER CLUSTER,
    ALTER DATABASE,
    ALTER DATABASE LINK,
    ALTER DIMENSION,
    ALTER DISK GROUP,
    ALTER FLASHBACK ARCHIVE,
    ALTER FUNCTION,
    ALTER INDEX,
    ALTER INDEXTYPE,
    ALTER JAVA,
    ALTER LIBRARY,
    ALTER MATERIALIZED VIEW ,
    ALTER MATERIALIZED VIEW LOG,
    ALTER MATERIALIZED ZONEMAP,
    ALTER OPERATOR,
    ALTER OUTLINE,
    ALTER PACKAGE,
    ALTER PACKAGE BODY,
    ALTER PLUGGABLE DATABASE,
    ALTER PROCEDURE,
    ALTER PROFILE,
    ALTER RESOURCE COST,
    ALTER ROLE,
    ALTER ROLLBACK SEGMENT,
    ALTER SEQUENCE,
    ALTER SESSION,
    ALTER SYNONYM,
    ALTER SYSTEM,
    ALTER TABLE,
    ALTER TRIGGER,
    ALTER TYPE,
    ALTER TYPE BODY,
    ALTER USER,
    ALTER VIEW,
    TRUNCATE CLUSTER,
    TRUNCATE TABLE,
    RENAME,
    DROP ASSEMBLY,
    DROP AUDIT POLICY,
    DROP CLUSTER,
    DROP CONTEXT,
    DROP DATABASE LINK,
    DROP DIMENSION,
    DROP DIRECTORY,
    DROP DISK GROUP,
    DROP EDITION,
    DROP FLASHBACK ARCHIVE,
    DROP FUNCTION,
    DROP INDEX,
    DROP INDEXTYPE,
    DROP JAVA,
    DROP LIBRARY,
    DROP MATERIALIZED VIEW ,
    DROP MATERIALIZED VIEW  LOG,
    DROP MATERIALIZED ZONEMAP,
    DROP OPERATOR,
    DROP OUTLINE,
    DROP PACKAGE,
    DROP PACKAGE BODY,
    DROP PLUGGABLE DATABASE,
    DROP PROCEDURE,
    DROP PROFILE,
    DROP RESTORE POINT,
    DROP ROLE,
    DROP ROLLBACK SEGMENT,
    DROP SCHEMA SYNONYM,
    DROP SEQUENCE,
    DROP SYNONYM,
    DROP TABLE,
    DROP TABLESPACE,
    DROP TRIGGER,
    DROP TYPE,
    DROP TYPE BODY,
    DROP USER,
    DROP VIEW
  WHEN
    'UPPER(SYS_CONTEXT(''USERENV'', ''SESSION_USER'')) IN (''USER_A'', ''USER_B'') AND UPPER(SYS_CONTEXT(''USERENV'', ''OS_USER'')) != ''ORACLE'''
    EVALUATE PER SESSION;

CREATE AUDIT POLICY sox_audit_dml
  ACTIONS
    INSERT,
    UPDATE,
    DELETE
  WHEN
    'UPPER(SYS_CONTEXT(''USERENV'', ''SESSION_USER'')) IN (''USER_A'', ''USER_B'') AND UPPER(SYS_CONTEXT(''USERENV'', ''OS_USER'')) != ''ORACLE'''
    EVALUATE PER SESSION;

CREATE AUDIT POLICY sox_audit_tcl
  ACTIONS
    COMMIT,
    ROLLBACK
  WHEN
    'UPPER(SYS_CONTEXT(''USERENV'', ''SESSION_USER'')) IN (''USER_A'', ''USER_B'') AND UPPER(SYS_CONTEXT(''USERENV'', ''OS_USER'')) != ''ORACLE'''
    EVALUATE PER SESSION;

CREATE AUDIT POLICY sox_audit_dcl
  ACTIONS
    GRANT,
    REVOKE
  WHEN
    'UPPER(SYS_CONTEXT(''USERENV'', ''SESSION_USER'')) IN (''USER_A'', ''USER_B'') AND UPPER(SYS_CONTEXT(''USERENV'', ''OS_USER'')) != ''ORACLE'''
    EVALUATE PER SESSION;

CREATE AUDIT POLICY sox_audit_misc
  ACTIONS
    ANALYZE CLUSTER,
    ANALYZE INDEX,
    ANALYZE TABLE,
    ASSOCIATE STATISTICS,
    AUDIT,
    CHANGE PASSWORD,
    COMMENT,
    DISASSOCIATE STATISTICS,
    EXECUTE,
    FLASHBACK TABLE,
    LOCK TABLE,
    LOGOFF,
    LOGON,
    NOAUDIT,
    PURGE INDEX,
    PURGE TABLE,
    PURGE TABLESPACE,
    SET ROLE,
    SET TRANSACTION
  WHEN
    'UPPER(SYS_CONTEXT(''USERENV'', ''SESSION_USER'')) IN (''USER_A'', ''USER_B'') AND UPPER(SYS_CONTEXT(''USERENV'', ''OS_USER'')) != ''ORACLE'''
    EVALUATE PER SESSION;

-- enable policies
AUDIT POLICY sox_audit_ddl;
AUDIT POLICY sox_audit_dml;
AUDIT POLICY sox_audit_tcl;
AUDIT POLICY sox_audit_dcl;
AUDIT POLICY sox_audit_misc;

0 个答案:

没有答案