博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
sec_case_sensitive_logon
阅读量:2065 次
发布时间:2019-04-29

本文共 1324 字,大约阅读时间需要 4 分钟。

1. 背景

一项目现场ogg割接oracle由aix 11.2.0.4到linux 11.2.0.4之后,引发程序连接oracle ORA-01017: invalid username/password; logon denied,但是用户名密码配置割接前后并无改动

经测试,相同的用户名密码,本地sqlplus可以连接,程序无法连接,怀疑是连接工具会自动将密码转为大写/小写,

可以将参数sec_case_sensitive_logon设置为false来避免ORA-01017错

后检查aix原库发现sec_case_sensitive_logon是false,更加证实了猜想

2. sec_case_sensitive_logon介绍

11g之前建立的用户,密码不区分大小写,即使用双引号强制

image.png

11g之后出现了sec_case_sensitive_logon参数,可以设置密码大小写是否忽略(true:大小写敏感,false:大小写不敏感)

默认为true

image.png

改为false测试

alter system set sec_case_sensitive_logon=false scope=both;

image.png

 

sec_case_sensitive_logon=false时数据库中存储的密码是否区分大小写?

在false时重置密码,改为true时发现存储密码按实际的大小写字符存储

image.png

 

3. 10g升级到11g

如果10g dbua或者迁移到11g,如果程序端设置的密码没有明确区分大小写,但是默认11g是区分大小写的,故可以将alter system set sec_case_sensitive_logon=false scope=both;来解决

11g还引入了密码延迟验证的特性

如果一个用户用错误的密码试图连接oracle,会导致验证的时间越来越长

image.png

从第三次密码错误的登录开始,每次延迟时间开始变成2秒、3秒并一次递增。既是这时提供正确的密码登录,会话也会延迟N秒,然后进行验证。不过一旦验证成功,会将失败计数清零,后续的错误登录会重新计数

如果同时存在两个会话,则很快延迟验证时间就会达到10秒、20秒的级别。如果同时大量的连接采用错误的密码,基本上这个用户的登录就会被完全HANG住

可以如下设置关闭密码延迟特性

ALTER SYSTEM SET EVENT = '28401 TRACE NAME CONTEXT FOREVER, LEVEL 1' SCOPE = SPFILE

或者也可以设置用户的密码PASSWORD_LOCK_TIME来锁定用户

 

4. 18c和sec_case_sensitive_logon

18c以后已经弃用了sec_case_sensitive_logon,但是为了向前兼容,还是保留了此参数

并且oracle建议保留sec_case_sensitive_logon的默认值true,不要修改

如果使用dbua升级,oracle建议检查此参数,并确保它是true

 

sharding环境修改sec_case_sensitive_logon为false,导致gsm sync database时报ORA-01017错误

转载地址:http://umwmf.baihongyu.com/

你可能感兴趣的文章
Containerd 1.5 发布:重磅支持 docker-compose!
查看>>
基于 Kubernetes 的 Spring Could 微服务 CI/CD 实践
查看>>
5.15 相约上海!2021 年度首届云原生 Meetup | KubeSphere & Friends
查看>>
使用 Cilium 作为网络插件部署 K8s + KubeSphere
查看>>
万变不离其宗,性能优化也有章可循
查看>>
别再乱用 Prometheus 联邦了,分享一个 Prometheus 高可用新方案
查看>>
Litmus 实践:让群魔在混沌中乱舞,看 K8s 能撑到何时
查看>>
Prometheus 存储层的演进
查看>>
Kubernetes 边缘节点抓不到监控指标?试试这个方法!
查看>>
不对全文内容进行索引的 Loki 到底优秀在哪里
查看>>
太强大了!这些 Go 的难点问题都能解决!
查看>>
万字长文:K8s 创建 pod 时,背后到底发生了什么?
查看>>
后云原生时代,Kubernetes:你看我还有机会吗?
查看>>
Wintun:一款惊艳的 WireGuard 虚拟网卡接口驱动
查看>>
个人学习方法分享
查看>>
时隔多年。。终于有一款云原生消息系统出仕了!
查看>>
[译]数据包在 Kubernetes 中的一生(1)
查看>>
[译]数据包在 Kubernetes 中的一生(2)
查看>>
[译]数据包在 Kubernetes 中的一生(3)
查看>>
从源头解决 Service Mesh 问题最彻底!
查看>>