SQL Developer操作系统身份验证 [英] SQL Developer OS authentication

查看:262
本文介绍了SQL Developer操作系统身份验证的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我具有包含JDK8的Oracle SQL Developer版本4.1.19(64位).

I have Oracle SQL Developer version 4.1.19 (64 bit) with JDK8 included.

这适用于需要使用{username,password}组合的Oracle连接-在那里没有问题.

This is working for Oracle connections which require a {username, password} combination - no problem there.

我的问题是我无法使用OS身份验证配置进行连接.

My issue is that I cannot connect with an OS Authentication configuration.

请注意,我可以使用 sqlplus/@ MY_TNS_NAME 从命令行通过操作系统身份验证进行连接,

Please note that I can connect from the command line with OS authentication by using sqlplus /@MY_TNS_NAME and this works fine.

我已将SQL Developer应用程序配置为使用OCI/Thick驱动程序,并且还使用x64 12.1.0.2.0基本即时客户端.这个似乎可以配置好,因为如果我选中 Help-> About-Properties ,则sqldeveloper.oci.available的值为"true".

I have the SQL Developer application configured to use the OCI/Thick driver and also to use the x64 12.1.0.2.0 basic instant client. This seems to be configured ok in that if I check Help->About-Properties then sqldeveloper.oci.available has the value "true".

但是,每次我测试连接时,都会收到失败消息 "ORA-01017:无效的用户名/密码;登录被拒绝"

However, each time that I test the connection I receive the failure message "ORA-01017: invalid username/password; logon denied"

我的操作系统是Windows 7 Enterprise x64 SP1

My OS is Windows 7 Enterprise x64 SP1

我显然已经选中了"OS Authentication"选项:).

I have obviously checked the option "OS Authentication" :).

是否需要更改/检查其他任何配置才能使SQL Developer允许我通过OS身份验证进行连接? (更改身份验证类型不是我的选择.)

Is there any other configuration that I need to change/check in order to get SQL Developer to allow me to connect via OS Authentication? (Changing the authentication type is not an option for me).

谢谢.

推荐答案

出现了同样的问题.原因是SQL Developer的轻量级JDBC不支持扩展身份验证.相反,SQL * Plus是针对本机驱动程序编译的,因此它没有问题.

Had the same issue. The cause is that SQL Developer's lightweight JDBC does not support extended authentication. SQL*Plus, to the contrary, is compiled against native driver, that's why it has no problem.

解决方案:,在SQL Developer中,进入

Solution: in SQL Developer, go

Tools -> Preferences -> Database -> Advanced Parameters

如果已经检查了Use Oracle Client,则只需检查Use OCI/Thick driver.就这样.如果不是,请首先检查Use Oracle Client,然后指定驱动程序路径.想法来自此处

If you have Use Oracle Client already checked, just check Use OCI/Thick driver. That's all. If not, check Use Oracle Client first, and specify driver path. Idea was taken from here

谈到客户端,Oracle允许创建一个版本库.如果选择工作客户端时遇到问题,最干净的选择是使用SQL * Plus所在的路径.只需从末尾剥离\bin,并确保其CPU架构与SQL Developer匹配即可.

Speaking about clients, Oracle allows to have a zoo of versions. If you have problems selecting working client, the cleanest option would be to use path where your SQL*Plus resides. Just strip \bin from its end, and make sure its CPU architecture matches SQL Developer.

这篇关于SQL Developer操作系统身份验证的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆