经典ASP(VBScript),2008 R2,使用AD进行身份验证时出错
我已将网站从Win2003 x32移动到Win2008R2 x64。它可以在旧服务器上正常工作。该网站使用active directory进行身份验证。我在2008年遇到此错误:-2147023584:指定的登录会话不存在。它可能已经被终止了。我尝试过切换到经典模式等,但没有改变。它确实执行VBScript代码(否则我不会得到错误) 代码如下:经典ASP(VBScript),2008 R2,使用AD进行身份验证时出错,vbscript,asp-classic,Vbscript,Asp Classic,我已将网站从Win2003 x32移动到Win2008R2 x64。它可以在旧服务器上正常工作。该网站使用active directory进行身份验证。我在2008年遇到此错误:-2147023584:指定的登录会话不存在。它可能已经被终止了。我尝试过切换到经典模式等,但没有改变。它确实执行VBScript代码(否则我不会得到错误) 代码如下: Function AuthenticateUser(UserName, Password) On Error Resume Next
Function AuthenticateUser(UserName, Password)
On Error Resume Next
Dim oADsNamespace, oADsObject
Dim strADsNamespace, strADsPath
strADsPath = "WinNT://ibcschools.edu"
strADsNamespace = left(strADsPath, instr(strADsPath, ":"))
Set oADsObject = GetObject(strADsPath)
Set oADsNamespace = GetObject(strADsNamespace)
Set oADsObject = oADsNamespace.OpenDSObject(strADsPath, UserName, Password, 0)
Response.Write(Err.Number & " : " & Err.Description & "<br />")
If Err.Number = 0 Then
Set oADsNamespace = Nothing
Set oADsObject = Nothing
Set strADsNamespace = Nothing
Set strADsPath = Nothing
AuthenticateUser = True
Else
Set oADsNamespace = Nothing
Set oADsObject = Nothing
Set strADsNamespace = Nothing
Set strADsPath = Nothing
AuthenticateUser = False
End If
End Function
Function AuthenticateUser(用户名、密码)
出错时继续下一步
暗淡的oADsNamespace,oADsObject
昏暗的空间
strADsPath=“WinNT://ibcschools.edu”
strADsNamespace=左(strADsPath,instr(strADsPath,“:”))
设置oADsObject=GetObject(strADsPath)
设置oADsNamespace=GetObject(strADsNamespace)
设置oADsObject=oADsNamespace.OpenDSObject(strADsPath,用户名,密码,0)
Response.Write(Err.Number&“:”和Err.Description&“
”)
如果Err.Number=0,则
设置oADsNamespace=Nothing
设置oADsObject=Nothing
Set-snamespace=无
设为空=无
AuthenticateUser=True
其他的
设置oADsNamespace=Nothing
设置oADsObject=Nothing
Set-snamespace=无
设为空=无
AuthenticateUser=False
如果结束
端函数
任何帮助都将不胜感激。谢谢。您的问题似乎与 你可以尝试的事情:
WinNT
替换为LDAP
提供程序好吧,我让它工作了。以前它没有域名,但现在需要它。我认为这与旧服务器上的应用程序池登录与此服务器登录有关。我打算再做一点。我不想改变所有的网站。我想这不是问题所在。如果您试图访问UNC共享或其他内容,这似乎更重要。不管怎样,我试过它说的话,但仍然不起作用。我还将其保存为VBS文件,效果良好。这和IIS7有关。只需要弄清楚我需要使用什么设置。我猜不允许您的IIS/ApplicationPool用户执行此查询-可能是旧计算机上的web应用使用了特权用户吗?不,它使用了网络服务。我试着将它切换到许多不同的用户和域用户。还是不行。我会试试你的其他建议。好的,我成功了。以前它没有域名,但现在需要它。我认为这与旧服务器上的应用程序池登录与此服务器登录有关。我打算再做一点。我不想更改所有网站。很高兴听到你能找到它。当我尝试在我的本地计算机上运行上面的代码时,无论我输入什么详细信息,它都会进行身份验证。我是否可以使用上述方法对本地计算机进行身份验证?