oracle 密码校验函数,自定义密码验证函数

本文介绍了如何在Oracle数据库中创建自定义的密码验证函数,以确保用户设置的新密码符合特定的安全要求。通过示例代码展示了一个简单的验证函数,包括检查新密码与旧密码是否相同、是否包含用户名、长度是否足够等条件,并将其设置为默认策略的验证函数。通过实际操作展示了当尝试设置不符合规则的密码时,验证函数如何阻止变更。
摘要由CSDN通过智能技术生成

在Oracle中可以很方便的自定义密码验证函数,用来检验用户的新密码是否符合安全标准。

下面是一个最简单的自定义验证函数的例子:

SQL> CONN / AS SYSDBA已连接。SQL> CREATE OR REPLACE FUNCTION F_MY_VERIFY

2     (P_USERNAME IN VARCHAR2, P_PASSWORD IN VARCHAR2, P_OLD_PASSWORD IN VARCHAR2)

3  RETURN BOOLEAN AS

4  BEGIN

5     IF P_PASSWORD = P_OLD_PASSWORD THEN

6             RAISE_APPLICATION_ERROR(-20001, 'NEW PASSWORD SAME AS OLD PASSWORD.');

7     END IF;

8

9     IF P_PASSWORD = P_USERNAME THEN

10             RAISE_APPLICATION_ERROR(-20002, 'PASSWORD SAME AS USERNAME.');

11     END IF;

12

13     IF INSTR(P_PASSWORD, P_OLD_PASSWORD, 1) > 0 OR INSTR(P_OLD_PASSWORD, P_PASSWORD, 1) > 0 THEN

14             RAISE_APPLICATION_ERROR(-20003, 'NEW PASSWORD AND OLD PASSWORD ARE LIKE EACH OTHER.');

15     END IF;

16

1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值