Oracle 10g OS身份验证在SQL Plus中失败

Oracle 10g OS身份验证在SQL Plus中失败,oracle,oracle10g,sqlplus,Oracle,Oracle10g,Sqlplus,我已经为我们的Oracle 10g(10.2.0.3)数据库设置了一个外部识别用户,如下所示: CREATE USER "OPS$DOMAIN\USER" IDENTIFIED EXTERNALLY; 现在,我正在尝试使用10.2.0.1 sqlplus客户端进行连接 connect /@TNS_NAME; 不管我得到什么 Invalid username/password. [已编辑] 以下是我目前能提供的关于这个问题的所有信息: 有两个虚拟化的Windows 2003服务器,每个服务

我已经为我们的Oracle 10g(10.2.0.3)数据库设置了一个外部识别用户,如下所示:

CREATE USER "OPS$DOMAIN\USER" IDENTIFIED EXTERNALLY;
现在,我正在尝试使用10.2.0.1 sqlplus客户端进行连接

connect /@TNS_NAME;
不管我得到什么

Invalid username/password.
[已编辑]
以下是我目前能提供的关于这个问题的所有信息:

  • 有两个虚拟化的Windows 2003服务器,每个服务器都运行自己的Oracle 10.2.0.3数据库
  • Oracle客户端10.2.0.1有两个虚拟化Windows XP客户端
  • 所有四台计算机都位于同一虚拟主机上,并且位于同一域中
  • 使用同一用户登录两个客户端
  • 客户端1可以使用OS身份验证连接到服务器1
  • 客户端1无法使用OS身份验证连接到服务器2
  • 客户端2无法通过OS身份验证连接到任一数据库服务器
  • 两个客户端都可以使用模式所有者/密码连接到任意一个数据库服务器
  • 四个月前,客户端2可以通过OS身份验证连接到客户端2。我无法判断Client1->Server2和Client2->Server1是否有效,但我几乎可以肯定它确实有效
我考虑过的事情:

  • 我仔细检查了os_authent_前缀,即“OPS$”
  • 我试着重新创建用户,并确保所有内容都是用大写字母写的(我们过去遇到过问题,因为我们没有所有大写字母)
  • 我尝试授予创建会话权限(有人建议在某个地方这样做;没有帮助)
  • 我可能会错过什么/我还能尝试什么


    PS:这里不关心数据库安全;我知道操作系统身份验证是有效的。

    由于问题发生在客户端,您可以检查客户端计算机中sqlnet.ora文件中的以下参数吗

    SQLNET.AUTHENTICATION_SERVICES= (NTS)
    

    即使在这之后它仍然不起作用,您也可以参考此来检查是否缺少任何步骤

    谢谢,我将在今天下午尝试,幸运的是,这没有帮助。此外,我意识到我的客户端1无法使用OS身份验证连接到服务器2,看起来我上次无意中连接到了错误的服务器。查看我的更新问题您可以检查数据库服务器2中的参数SQLNET.AUTHENTICATION_SERVICES=(NTS)吗?因为根据oracle文档,客户端和服务器中的SQLNET.ora都需要此参数,所以在所有机器上都设置了此参数。最后修复了它。问题是,客户端通过
    TNSADMIN
    注册表项引用另一台服务器的TNS名称。我不知道这也让他们在那里搜索sqlnet.ora文件。某人或某事在服务器上放置了一个空的sqlnet.ora文件,这可能会使客户端和数据库忽略它们自己的本地文件。将行添加到中心文件中修复了它。