create_verify_function 过程 - Amazon Relational Database Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

create_verify_function 过程

您可以使用 Amazon RDS 过程 rdsadmin.rdsadmin_password_verify.create_verify_function 创建自定义函数来验证密码。所有版本的 RDS for Oracle 都支持 create_verify_function 过程。

create_verify_function 过程具有以下参数。

参数名称 数据类型 默认值 必需 描述

p_verify_function_name

varchar2

自定义函数的名称。将在 SYS 架构中为您创建此函数。为用户配置文件分配此函数。

p_min_length

number

8

要求的字符的最小数量。

p_max_length

number

256

允许的字符的最大数量。

p_min_letters

number

1

要求的字母的最小数量。

p_min_uppercase

number

0

要求的大写字母的最小数量。

p_min_lowercase

number

0

要求的小写字母的最小数量。

p_min_digits

number

1

要求的数字的最小数量。

p_min_special

number

0

要求的特殊字符的最小数量。

p_min_different_chars

number

3

旧密码和新密码之间需要的不同字符的最小数。

p_disallow_username

布尔值

true

设置为 true 可禁止在密码中使用用户名。

p_disallow_reverse

布尔值

true

设置为 true 则禁止在密码中使用反向用户名。

p_disallow_db_name

布尔值

true

设置为 true 则禁止在密码中使用数据库或服务器名称。

p_disallow_simple_strings

布尔值

true

设置为 true 则禁止将简单字符串用作密码。

p_disallow_whitespace

布尔值

false

设置为 true 则禁止在密码中使用空格字符。

p_disallow_at_sign

布尔值

false

设置为 true 以禁止在密码中使用 @ 字符。

可以创建多个密码验证函数。

自定义函数的名称受到一些限制。您的自定义函数不能具有与现有系统对象相同的名称。名称长度不能超过 30 个字符。另外,名称必须包括以下字符串之一:PASSWORDVERIFYCOMPLEXITYENFORCESTRENGTH

下面的示例创建一个名为 CUSTOM_PASSWORD_FUNCTION 的函数。此函数要求密码具有至少 12 个字符、2 个大写字符、1 个数字和 1 个特殊字符,并且该密码禁止使用 @ 字符。

begin rdsadmin.rdsadmin_password_verify.create_verify_function( p_verify_function_name => 'CUSTOM_PASSWORD_FUNCTION', p_min_length => 12, p_min_uppercase => 2, p_min_digits => 1, p_min_special => 1, p_disallow_at_sign => true); end; /

要查看验证函数的文本,请查询 DBA_SOURCE。以下示例获取名为 CUSTOM_PASSWORD_FUNCTION 的自定义密码函数的文本。

COL TEXT FORMAT a150 SELECT TEXT FROM DBA_SOURCE WHERE OWNER = 'SYS' AND NAME = 'CUSTOM_PASSWORD_FUNCTION' ORDER BY LINE;

要将您的验证函数与用户配置文件关联,请使用 alter profile。以下示例将验证函数与 DEFAULT 用户配置文件关联。

ALTER PROFILE DEFAULT LIMIT PASSWORD_VERIFY_FUNCTION CUSTOM_PASSWORD_FUNCTION;

要查看哪些用户配置文件与哪些验证函数关联,请查询 DBA_PROFILES。以下示例获取与名为 CUSTOM_PASSWORD_FUNCTION 的自定义验证函数关联的配置文件。

SELECT * FROM DBA_PROFILES WHERE RESOURCE_NAME = 'PASSWORD' AND LIMIT = 'CUSTOM_PASSWORD_FUNCTION'; PROFILE RESOURCE_NAME RESOURCE LIMIT ------------------------- -------------------------------- -------- ------------------------ DEFAULT PASSWORD_VERIFY_FUNCTION PASSWORD CUSTOM_PASSWORD_FUNCTION

以下示例获取所有配置文件以及与之关联的密码验证函数。

SELECT * FROM DBA_PROFILES WHERE RESOURCE_NAME = 'PASSWORD_VERIFY_FUNCTION'; PROFILE RESOURCE_NAME RESOURCE LIMIT ------------------------- -------------------------------- -------- ------------------------ DEFAULT PASSWORD_VERIFY_FUNCTION PASSWORD CUSTOM_PASSWORD_FUNCTION RDSADMIN PASSWORD_VERIFY_FUNCTION PASSWORD NULL