Microsoft PHP SQL Server 连接问题 - 如何排除被阻止的问题
我正在通过 Windows 身份验证进行连接。我在本地系统上有两个网络服务器。 端口 80 上的 IIS 6.0、Apache 80:80;我已经创建了 DSN 并连接。我编写了简单的 ASP/VBS 脚本并与此 DSN 连接。
我尝试在 PHP 中使用 odbc_connect 使用此 DSN,但失败了。然后,我尝试了此处概述的连接:
http:// /msdn.microsoft.com/en-us/library/cc296161%28SQL.90%29.aspx
然后,我使用 ODBC 创建了一个本地 dsn,并验证了代码实际上可以在 Apache 上运行的本地主机上运行。
我的 IT 人员不会/无法在 SQL Server 上创建用户 ID/密码。问题是,如果我提出这个问题,他们就会玩“出了什么问题”的游戏。我可以推断出了什么问题(缺乏可信身份验证);但是,我无法解决其他问题,因为我无法查看此服务器端。
我认为我正在连接 DSN,但它没有使用与我的 Web 浏览器中的 Windows 帐户相同的凭据。我试图运行 Fiddler 来运行它,但我没有看到任何东西跳出来。
我确定这是“身份验证”问题或被阻止的问题。我只是想看看在我和 IT 部门一起玩暮光之城(或者朵拉世界里桥上那些讨厌的老侏儒……哈哈)之前,是否还遗漏了一些东西,或者有什么可以被阻止。
I am connecting through Windows Authentication. I have two webservers on local system.
IIS 6.0 on port 80, Apache 80:80; I have created a DSN and connected. I have written simple ASP/VBS Script and connected with this DSN.
I've tried to use this DSN using odbc_connect in PHP and it failed. I then tried the connection as outlined here:
http://msdn.microsoft.com/en-us/library/cc296161%28SQL.90%29.aspx
I then created a local dsn using ODBC and verified the code actually works from localhost running on Apache.
My IT guys won't/can't create a user id/password on SQL Server. The issue is if I bring this up, they play a game of 'what's wrong.' I can deduce what is wrong ( lack of trusted authentication ); however, I can't rule other issues since I can't look at this server side.
I'm thinking I'm connecting with a DSN, but it's not using the same credentials as my windows account from my web browser. I attempted to run Fiddler to run this down and I'm not seeing anything jump out there.
I'm sure this is an 'authentication' issue or something be blocked. I just trying to see if there is something else I've missed or what could be blocked before I go play Twilight zone with the IT dept ( or the nasty old gnomes at the bridge in Dora's world...lol).
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我有一个坏消息要告诉你:Windows 身份验证很糟糕。确切的问题称为 '双跳身份验证' - Google 搜索它,您会发现很多人寻求帮助。他们中的一半人会使用一些已经无法为你工作的东西来解决问题 - 而另一半显然从未解决过问题。
我最近为一位客户编写了一个外联网敏感数据收集应用程序,该客户坚持一切都基于 Active Directory 和 Windows 身份验证。长话短说,整个项目停止了整整一个月,直到他们放弃并允许单一 SQL Server 登录进行网络连接。其他的都没起作用。
经验教训:
I have bad news for you: Windows Authentication stinks big time. The exact problem is called 'double hop authentication' - google for it and you'll find lots of people asking for help. Half of them would have solved the problem using something that already failed to work for you - while the other half apparently never solved the issue.
I wrote recently an extranet sensitive data gathering application for a customer that insisted everything being based on Active Directory and Windows Authentication. To cut a long story short, the whole project stopped for a whole month until they gave up and allowed a single SQL Server login for the network connection. Nothing else worked.
Lessons learned: