首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >模拟进程不会使用Windows身份验证登录到Oracle

问模拟进程不会使用Windows身份验证登录到Oracle
EN

Stack Overflow用户
提问于 2010-02-15 23:03:05
回答 1查看 1.5K关注 0票数 0

我正在IIS7上运行asp IIS7 web服务。后者运行在Windows2008WindowsServer上。is 7/ web服务配置为asp .net模拟。工作进程所有者设置为网络服务。

web服务调用服务器上他/她的域帐户模拟的sqlplus.exe。我可以通过任务经理看到这一点。然而,当sqlplus启动时,oracle表示用户名/密码是错误的。

sqlplus.exe是这样启动的: sqlplu.exe /。如果我用用户帐户手动登录服务器并输入上面的语句,这很好,一切都很好。

EN

回答 1

Stack Overflow用户

发布于 2010-02-17 02:08:06

我相信你在这里遇到了“双跳”的问题。

您的第一跳是使用从客户端计算机到web服务器的模拟。第二个跳转是从web服务器到数据库服务器,在那里您试图将相同的凭据传递到数据库。

当您手动登录并运行sqlplus语句时,它只是从web服务器到数据库服务器的一次跳转。

以下引用自MSDN。请注意使用从客户端到web服务器的基本身份验证的建议。

当ASPX页面尝试使用位于与IIS服务器不同的服务器上的资源时,就会出现双跳问题。在我们的例子中,第一个" hop“是从web浏览器客户端到IIS ASPX页面;第二个跳转到Active Directory。需要主令牌。因此,IIS服务器必须知道客户端将主令牌传递给的密码。如果IIS服务器具有辅助令牌,则使用NTAUTHORITY\匿名帐户凭据。此帐户不是域帐户,对的访问非常有限。

使用辅助令牌的双跳发生,例如,当浏览器客户端通过使用NTLM身份验证对IIS ASPX页面进行身份验证时。在本例中,IIS服务器由于使用NTLM而具有密码的散列版本。如果IIS掉头并将凭据传递给Active Directory,IIS将传递散列密码。Active Directory无法验证密码,因此它使用NTAUTHORITY\匿名登录进行身份验证。

如果浏览器客户端使用基本身份验证来对IIS ASPX页进行身份验证,则IIS服务器具有客户端密码,并且可以制作主令牌以传递给Active。Active可以验证密码并对域用户进行身份验证。

http://msdn.microsoft.com/en-us/library/ms817871.aspx

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2269561

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档