Advertisement

Oracle 11gR2构建PASSWORD_VERIFY_FUNCTION用于密码复杂度验证的步骤。

  •  5星
  •     浏览量: 0
  •     大小:None
  •      文件类型:DOC


简介:
在Oracle 11g R2数据库环境中,为了显著提升数据库的安全防护水平,必须保证用户密码具备一定的复杂性标准。实现这一目标可以通过构建和部署`PASSWORD_VERIFY_FUNCTION`来实现。该函数能够让我们灵活地定义一个PLSQL程序,并在用户尝试修改密码时进行验证,从而确保新设定的密码完全符合我们所规定的复杂度规范。下面将详细阐述在Oracle 11g R2中创建此功能的具体操作步骤: 1. **实施默认密码复杂度函数脚本**:为了连接Oracle数据库,您需要使用SYSDBA身份登录。在命令行界面中,输入`sqlplus nolog`,随后执行`conn as sysdba`命令建立数据库连接。之后,请运行Oracle提供的默认密码策略脚本`utlpwdmg.sql`,该脚本通常存储在 `$ORACLE_HOME/rdbmsadmin/` 目录下。通过执行`@$ORACLE_HOME/rdbmsadmin/utlpwdmg.sql`来创建名为`UTL_PWD_MGMT`的包,该包内包含一系列用于验证密码复杂度的函数。 2. **构建资源定义文件(PROFILE)**: 在PL/SQL开发环境中,通过`CREATE PROFILE`语句生成一个新的资源定义文件。该文件详细规定了用户可访问的各项资源限制,涵盖诸如登录尝试次数、密码失效期限等关键参数。 譬如,您可以创建一个名为“资源文件名”的配置,并将其中的`FAILED_LOGIN_ATTEMPTS`参数设置为10次,`PASSWORD_LIFE_TIME`参数设定为180天,同时指定使用`PASSWORD_VERIFY_FUNCTION`来引用我们即将建立的验证函数 `verify_function_11G`。 ```sql CREATE PROFILE 资源文件名 LIMIT SESSIONS_PER_USER UNLIMITED CPU_PER_SESSION UNLIMITED CPU_PER_CALL UNLIMITED CONNECT_TIME UNLIMITED IDLE_TIME 600 LOGICAL_READS_PER_SESSION UNLIMITED LOGICAL_READS_PER_CALL UNLIMITED COMPOSITE_LIMIT UNLIMITED PRIVATE_SGA UNLIMITED FAILED_LOGIN_ATTEMPTS 10 PASSWORD_LIFE_TIME 180 PASSWORD_REUSE_TIME UNLIMITED PASSWORD_REUSE_MAX UNLIMITED PASSWORD_LOCK_TIME 1 PASSWORD_GRACE_TIME 10 PASSWORD_VERIFY_FUNCTION verify_function_11G; ``` 3. **构建验证函数(VERIFY_FUNCTION_11G)**:随后,您需要开发一个PLSQL函数,例如`verify_function_11G`,该函数将新的密码作为输入参数,并对其进行评估,以确认其是否符合您定义的密码规范。这个评估过程可能涉及多种检查,包括验证密码的长度、确认是否包含数字字符、字母字符以及各种特殊符号。为了具体说明,您可以设置密码的最小长度要求,并确保密码中存在大写字母、小写字母、数字和特殊字符组合。如果输入的密码能够完全满足所有这些规定条件,则该函数应返回True;反之,如果任何一个条件未被满足,函数则应返回False。 4. **配置用户并分配资源文件**: 在创建新用户时,需要明确指定其将采用先前建立的资源文件。 举例来说,若要创建一个名为“用户名”,密码为“密码”,默认表空间设定为“默认表空间名”,临时表空间设置为“临时表空间名”,并使用“资源文件名”作为其初始配置,则操作便可完成。 ```sql CREATE USER 用户名 IDENTIFIED BY 密码 DEFAULT TABLESPACE 默认表空间名 TEMPORARY TABLESPACE 临时表空间名 PROFILE 资源文件名; ``` 5. **授权与测试**: 为新用户分配必要的权限,包括`CONNECT`、`RESOURCE`、`EXP_FULL_DATABASE`和`IMP_FULL_DATABASE`等。随后,对密码更新流程进行验证。首先,使用一个基本的字符串,例如`123456`进行尝试,预期结果是失败,这是因为我们的验证机制会阻止使用过于简化的密码。接下来,尝试一个更为复杂的字符串,比如`_20151211`,如果该字符串符合预定的安全规则,则密码更改操作应当能够顺利完成。 总而言之,Oracle 11g R2中的密码策略管理机制是通过构建资源文件并定义个性化的密码验证函数来完成的。这种方法不仅能够强制实施密码复杂度要求,还能进一步限制用户登录尝试的次数,并设定密码失效的时间期限等,从而显著提升数据库的安全防护水平。通过遵循这些步骤,您可以根据您组织机构的具体需求,量身定制一套满足要求的密码策略。

全部评论 (0)

还没有任何评论哟~
客服
客服
  • Oracle 11gR2设置PASSWORD_VERIFY_FUNCTION以符合要求.doc
    优质
    本文档详细介绍了在Oracle 11g Release 2数据库中配置PASSWORD_VERIFY_FUNCTION的过程,确保用户密码满足复杂的安全标准。 在Oracle 11g R2中增强数据库安全性的一种方法是确保用户的密码达到一定的复杂度要求。这可以通过创建并应用`PASSWORD_VERIFY_FUNCTION`来实现,该功能允许自定义一个PL/SQL函数,在用户尝试更改密码时进行验证,并确认新密码符合预设的复杂性规则。 以下是具体步骤: 1. **执行默认密码复杂度检查脚本**: 需要以SYSDBA身份登录至Oracle数据库。在命令行中输入`sqlplus nolog`,然后用 `conn as sysdba` 连接到数据库。运行提供的默认策略脚本`utlpwdmg.sql`(通常位于 `$ORACLE_HOME/rdbms/admin/` 目录下),通过执行 `@?/rdbms/admin/utlpwdmg.sql` 来创建名为UTL_PWD_MGMT的包,该包包含密码复杂度检查所需的函数。 2. **定义资源文件**: 在PLSQL环境中使用`CREATE PROFILE`语句来创建一个新资源文件。这个文件规定了用户可以使用的各种限制如登录失败次数、密码有效期等。例如,你可以创建名为“指定名称”的配置,并设置 `FAILED_LOGIN_ATTEMPTS = 10, PASSWORD_LIFE_TIME = 180天`, 并使用`PASSWORD_VERIFY_FUNCTION`来指明我们即将定义的验证函数`verify_function_11G`. 3. **编写密码验证函数**: 接下来,你需要创建一个PL/SQL函数如 `verify_function_11G`。此函数接收新的密码作为参数,并检查其是否符合你的策略规则。这可能包括检查最小长度、包含大写和小写字母以及特殊字符等条件。如果新密码满足所有要求,则该函数返回TRUE,否则返回FALSE。 4. **创建用户并分配资源文件**: 创建一个新用户时,指定使用刚才定义的资源文件作为其配置的一部分。例如: ```sql CREATE USER 用户名 IDENTIFIED BY 密码 DEFAULT TABLESPACE 默认表空间 TEMPORARY TABLESPACE 临时表空间 PROFILE 指定名称; ``` 5. **授权与测试**: 授予新用户必要的权限,如`CONNECT`, `RESOURCE`, 等,并尝试使用过于简单的密码(例如“123456”)和复杂度较高的密码(例如“_20151211”,假设满足规则条件),来测试新的策略是否有效。 总结来说,在Oracle 11g R2中,通过创建资源文件及自定义的验证函数可以实现对数据库用户密码的安全管理。这不仅能强制执行复杂的密码要求,还可以限制登录失败次数、设置过期时间等措施以提高整体安全性,并且可以根据组织的具体需求定制适合自己的策略。
  • Oracle中设定函数
    优质
    本文介绍了在Oracle数据库中通过使用特定函数来设置和验证用户密码的复杂性要求的方法,帮助增强数据库安全。 Oracle 设置用户密码复杂度的函数创建实现密码自定义规则的函数 my_password_verify:
  • OracleDBLink
    优质
    本教程详细介绍了如何在Oracle数据库中创建数据库链接(DBLink),包括所需的前提条件、语法及示例操作。 此文档详细介绍了在Oracle数据库中建立DBLink的步骤。
  • Oracle中调整性要求
    优质
    本文介绍了如何在Oracle数据库中设置和调整用户密码的安全策略,包括最小长度、字符种类等要求,确保系统的安全性。 在Unix环境下修改Oracle用户密码复杂度的具体操作例子及过程如下:这是为企业进行Oracle数据库安全设置的实际步骤之一。其中包括了对密码长度、字符类型要求、过期时间、提示过期时间和无效尝试次数等多方面的配置。
  • 联通规则下注册
    优质
    本文探讨了在联通服务中注册时对用户设置密码的安全要求和标准,强调了创建强健、复杂的密码以增强账户安全的重要性。 密码不能为空且长度至少为8个字符;密码应包含大写字母、小写字母、数字以及特殊符号中的三种或以上类型;不允许使用连续的相同字母或数字作为密码;不能在密码中使用与账号名称相同的英文单词、汉语拼音或其简写;避免使用具有明确意义的英文单词和汉语拼音作为密码;禁止将看似符合要求但实际上为键盘上连续键位组合的字符串用作密码。
  • WPS安装无需,解压即
    优质
    简介:WPS办公软件提供简便快捷的安装方式,用户只需进行简单的解压操作即可立即使用,无需繁琐的安装流程。 WPS是最好的选择,解压后即可使用。
  • 华为-设置.txt
    优质
    本文档提供了关于如何在华为设备上设置强密码的指导和建议,旨在帮助用户增强其账户的安全性。 华为建议配置密码的复杂度以增强安全性。推荐使用包含大小写字母、数字以及特殊字符的组合,并且避免使用常见的单词或短语,确保密码不易被猜测或破解。定期更换密码也是保障账户安全的重要措施之一。
  • Oracle查询试报告
    优质
    本报告深入探讨了在Oracle数据库环境下执行复杂SQL查询的技术细节与性能优化策略,旨在为数据库管理员和开发人员提供实践指导。 请使用SQL语句完成Oracle复杂查询实验报告中的相关查询。尽可能采用嵌套查询来实现这些查询要求。
  • 实战Oracle 11gR2 RAC+ASM+DG(最新精简版)
    优质
    本书为数据库管理员和开发人员提供了一套详细的指南,用于搭建、配置及管理Oracle 11gR2的RAC(Real Application Clusters)、ASM(Automatic Storage Management)以及Data Guard环境。通过实战案例讲解,帮助读者掌握高可用性和灾难恢复技术。 实战完美搭建Oracle 11gR2_RAC+ASM+DG(最新精编版)