Oracle密码复杂度设置(Oracle_Password_Complexity)

本文介绍了Oracle数据库中密码的最小字符数以及密码必须包含的字符类型,包括数字、字母和特殊字符的要求,以增强密码安全性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、Oracle_Password_Complexity:

    SQL> alter system set resource_limit = true;

    SQL> @ $ORACLE_HOME/RDBMS/ADMIN/utlpwdmg.sql → [verify_function|verify_function_11G]

    SQL> alter profile default limit password_verify_function verify_function;

    # 取消Oracle密码复杂度检查:
    SQL> alter profile default limit password_verify_function null;

    SQL> SELECT profile,resource_type,resource_name,limit FROM dba_profiles WHERE resource_type='PASSWORD' AND profile='DEFAULT';

   1.FAILED_LOGIN_ATTEMPTS: 用户在登录尝试失败n次后被锁定。

   2.PASSWORD_LOCK_TIME: 登录尝试失败达到指定次数,用户锁定时长,以“Day”为单位。

   3.PASSWORD_LIFE_TIME: 用户口令的生命周期。

   4.PASSWORD_GRACE_TIME: 表示用户口令使用时间超过其生命周期后,可以延续使用的天数,并且可延续时间内登录会有相应口令即将过期的提示。

   5.PASSWORD_REUSE_TIME: 指定了口令不能重用前的天数。

   6.PA
### Linux 系统中设置密码复杂度的方法 在 Linux 系统中,可以通过修改 PAM(Pluggable Authentication Module)模块的相关配置来实现密码复杂度设置。以下是针对不同版本的操作系统的具体方法。 #### 1. **CentOS/RHEL 的密码复杂度设置** 对于 CentOS 和 RHEL 系列系统,主要通过编辑 `/etc/pam.d/system-auth` 或者 `/etc/security/pam_cracklib.conf` 文件来进行密码复杂度控制[^1]。 - 编辑 `pam_cracklib.so` 参数: ```bash password requisite pam_cracklib.so try_first_pass retry=3 minlen=8 ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1 difok=4 ``` 参数说明如下: - `minlen=8`: 密码最小长度为 8 位。 - `ucredit=-1`: 至少包含 1 个大写字母。 - `lcredit=-1`: 至少包含 1 个小写字母。 - `dcredit=-1`: 至少包含 1 个数字。 - `ocredit=-1`: 至少包含 1 个特殊字符。 - `difok=4`: 新旧密码之间至少有 4 个不同的字符[^2]。 完成上述操作后保存退出并重新加载服务即可生效。 #### 2. **SUSE Linux 的密码复杂度设置** 在 SUSE Linux 中,同样可以利用 PAM 模块中的 `pam_cracklib.so` 来定义复杂的密码规则[^4]。 - 修改 `/etc/pam.d/common-password` 文件: ```bash password requisite pam_cracklib.so minlen=6 lcredit=-2 ocredit=-1 use_authtok ``` 此命令表示密码最少需要 6 个字符,并且必须满足两个小写英文字母以及一个特殊符号的要求。 #### 3. **通用注意事项** 无论在哪种发行版上调整这些选项时都需要注意以下几点事项: - 如果使用的是 authconfig 工具,则可能还需要同步更新其默认模板; - 对于某些较新的基于 FIPS 加密标准启用环境下的部署场景来说,可能会强制应用更加严格的安全策略而忽略自定义设定; - 测试完成后建议立即验证新创建用户的初始登录尝试是否受到预期影响以确认改动成功与否。 ```bash # 示例测试脚本 #!/bin/bash echo "Testing new password policy..." passwd testuser <<EOF newPassw0rd! newPassw0rd! EOF if [ $? -eq 0 ]; then echo "Password change successful." else echo "Failed to set password due to complexity requirements." fi ``` 以上即是在主流几种常见类型的Linux平台下实施增强型身份认证机制过程中涉及到关于加强口令强度管理方面的基本流程概述.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值