当前位置: 首页 > news >正文

如何配置Oracle的外部口令存储_安全外部密码库Wallet自动登录

根本原因是数据库未启用外部口令存储支持,需在sqlnet.ora中配置SQLNET.AUTHENTICATION_SERVICES=(EXTERNAL)和WALLET_LOCATION,并确保路径正确、权限合法、客户端环境重载。Oracle Wallet 创建后 sqlplus / @db 仍提示密码错误?根本原因不是 wallet 没建好,而是数据库没启用外部口令存储支持。oracle 默认关闭该功能,必须显式配置 sqlnet.authentication_services 和 wallet_location 才能走 wallet 自动登录。检查 $ORACLE_HOME/network/admin/sqlnet.ora 是否包含这两行(顺序无关):SQLNET.AUTHENTICATION_SERVICES = (EXTERNAL)WALLET_LOCATION = (SOURCE = (METHOD = FILE) (METHOD_DATA = (DIRECTORY = /path/to/wallet)))WALLET_LOCATION 的 DIRECTORY 必须是绝对路径,且 Oracle 进程用户(如 oracle)对该目录有读+执行权限(chmod 700 安全起见)改完 sqlnet.ora 不需要重启监听或实例,但客户端环境(比如你 ssh 登录的 shell)要重新加载,或者新开终端——很多人卡在这一步,以为配置不生效用 mkstore 添加用户时提示 ORA-12154: TNS could not resolve the connect identifier这不是 Wallet 问题,而是 mkstore 命令本身不连接数据库,它只操作本地文件。这个错误说明你误在命令里写了 @db 或类似 TNS 别名——mkstore 根本不认连接串。正确添加用户名密码的命令长这样:mkstore -wrl "/path/to/wallet" -createCredential ORCL myuser mypass其中 ORCL 是 TNS 别名(对应 tnsnames.ora 里的条目),不是数据库名也不是服务名-createCredential 后的三个参数:Wallet 路径、TNS 别名、用户名、密码——顺序错一个就报各种奇怪错误如果 tnsnames.ora 里没有 ORCL 条目,sqlplus / @ORCL 当然连不上,但 Wallet 本身是好的;先确保 tnsping ORCL 通,再配 Wallet为什么 sqlplus / @ORCL 能自动登录,但 sqlplus myuser/mypass@ORCL 还是能连?Wallet 不会禁用口令认证,它只是多提供一种认证方式。只要用户名密码正确,传统方式依然有效——这反而是设计意图:Wallet 是增强,不是替代。真正想强制走 Wallet,得关掉口令登录:在 sqlnet.ora 加 SQLNET.ALLOWED_LOGON_VERSION_SERVER = 8(不推荐)或更实际的做法是,在应用层统一用 / @db 格式,并移除应用代码里的明文密码注意 SQLNET.ALLOWED_LOGON_VERSION_SERVER 设太低会导致 12c+ 新特性失效,别乱调Wallet 本身不加密网络传输,它只解决“本地客户端免输密码”问题;链路加密还得靠 SQLNET.ENCRYPTION_CLIENT 单独配Wallet 文件被删或损坏后,sqlplus / @db 报 ORA-12649: Unknown encryption algorithm这个错误通常不是算法问题,而是 Oracle 尝试读一个已损坏、非 Wallet 格式、或权限不对的文件。Wallet 是二进制格式,不能用文本编辑器改,也不能用 cp 覆盖正在被使用的 wallet。 Tellers AI Tellers是一款自动视频编辑工具,可以将文本、文章或故事转换为视频。

http://www.jsqmd.com/news/673521/

相关文章:

  • 如何构建无懈可击的国际象棋平台:从单元测试到E2E测试的完整策略
  • 终极i3wm-themer指南:10分钟快速打造个性化Linux桌面环境
  • 026、AI与物联网(IoT):让身边设备变聪明
  • 原神成就管理终极指南:YaeAchievement免费工具完整使用教程
  • EssentialsX:打造专业级Minecraft服务器管理套件
  • 3分钟解决Minecraft模组英文难题:MASA全家桶汉化包完整指南
  • CSS布局如何解决父级因全是绝对定位导致本身没高度的问题
  • NASA“大爆炸“升级计划:让旅行者号探测器延寿运行
  • Percy组件单元测试:10个最佳实践确保代码质量
  • 洛谷-P5658 [CSP-S 2019] 括号树 题解
  • 如何为ClearURLs创建自定义规则:保护隐私的终极指南
  • 从频域看高斯滤波:用Python+NumPy手把手带你理解sigma如何决定图像‘模糊度’
  • 《jEasyUI 创建复杂树形网格》
  • Deforum Stable Diffusion终极指南:从零开始掌握AI动画生成
  • 深入uvmgen生成的UVM环境:如何从“空壳”到“实战”的改造指南
  • 关于测试之理论
  • Ace Data Cloud Flux 图像生成 API 使用指南
  • PySide6多线程避坑指南:除了QThread,别忘了还有QtConcurrent和QRunnable
  • 终极系统定制方案:3步解锁设备隐藏潜力
  • 5分钟掌握WinUtil:Windows系统优化与软件管理的终极工具箱
  • AI驱动无线网络人才短缺危机加剧,企业安全风险攀升
  • 大模型推理:决胜未来的三大核心技术战场
  • Dify .NET SDK官方未适配AOT?别等了!我们已验证通过的6大手动补丁方案(含Source Generator注入实战)
  • ORB-SLAM3的Atlas多地图系统到底强在哪?手把手解析其重定位与地图合并的工程实现
  • Jetson Nano到手后,除了SSH连接,这3个远程管理技巧让你效率翻倍
  • 我又读了一次白夜行
  • THREE.MeshLine与Three.js生态系统集成:最佳实践和常见问题解决方案
  • Materialistic中的响应式编程:RxJava与RxAndroid实战指南
  • CSS如何制作导航栏平滑移动_使用transition与left属性
  • HarmonyOS / OpenHarmony 鸿蒙PC平台三方库移植:使用 Lycium 移植 pngquant 的实践总结