为Enterprise PostgreSQL创建密码验证功能

时间:2018-04-11 18:32:51

标签: enterprisedb

如何在EDB PostgreSQL中创建一个功能来检查密码?

密码应包含:

  • 至少1个大写
  • 至少1个小写
  • 至少1位数
  • 至少8个字符
  • 至少1个特殊字符

到目前为止,我搜索并获得了

CREATE OR REPLACE FUNCTION verify_password(user_name varchar2, new_password varchar2, old_password varchar2)
  RETURN boolean IMMUTABLE
IS
BEGIN
  IF (length(new_password) < 5)
  THEN
    raise_application_error(-20001, 'too short');
  END IF;

  IF substring(new_password FROM old_password) IS NOT NULL
  THEN
    raise_application_error(-20002, 'includes old password');
  END IF;
  RETURN true;
END;

以上功能正常但我无法添加大写,小写和特殊字符的检查。

如果我在支票上添加大写,小写和特殊字符的行,我可以创建该函数但是当密码检查进来时它似乎不起作用。

0 个答案:

没有答案