oracle用户修改口令审计

1、创建存储更改信息的表

create table PW_CHANGE_LOG
(
  username    VARCHAR2(100),
  change_date DATE,
  host        VARCHAR2(100),
  os_user     VARCHAR2(100)
);

2、使用SYS用户执行下面两个语句,使用Resource Manager来记录口令更改记录

CREATE OR REPLACE FUNCTION password_change_log (
  username varchar2,
  password varchar2,
  old_password varchar2
) RETURN boolean
IS
  v_host varchar2(100);
  v_os_user varchar2(100);
BEGIN
  SELECT SYS_CONTEXT('USERENV', 'HOST'), SYS_CONTEXT('USERENV', 'OS_USER')
  INTO v_host, v_os_user
  FROM DUAL;

  INSERT INTO PW_CHANGE_LOG VALUES (USERNAME, SYSDATE, v_host, v_os_user);
  RETURN(TRUE);
END;
/

CREATE PROFILE LOG_PW_CHANGE LIMIT PASSWORD_VERIFY_FUNCTION PASSWORD_CHANGE_LOG;

Comments are closed.