IIS6到IIS7.5打破了数据库调用,“Active Directory错误'8007203b'”

时间:2013-07-12 22:27:35

标签: database vbscript ldap opends

我们最近从IIS 6升级到IIS 7.5。 我们将所有网站都移到了新系统中,而且它们都是从一个系统中移除的。

破碎的网站提供有关ftp服务器的信息,经过一些实验,我们确定了导致问​​题的代码。

这是要求服务器提供FTP站点的到期日期的代码行:

Set objuser = objRoot.OpenDSObject("LDAP://CN="&user&",dc=companySite,OU=FTP", strUserDN, strPassword, ADS_SECURE_AUTHENTICATION)

这是上下文功能的其余部分:

function expiration(user)

    Set con = Server.CreateObject("ADODB.Connection")
    con.provider ="ADsDSOObject"
    con.open "Active Directory Provider"
    Set Com = CreateObject("ADODB.Command")
    Set Com.ActiveConnection = con

    Const ADS_SECURE_AUTHENTICATION = 1

    strUserDN = "cn=ftplist,cn=users,dc=companySite,dc=com"
    strPassword = "password"

    Set objRoot = GetObject("LDAP:")

    Set objuser = objRoot.OpenDSObject("LDAP://CN="&user&",dc=companySite,OU=FTP", strUserDN, strPassword, ADS_SECURE_AUTHENTICATION)

    On error resume next
    expiry = objuser.AccountExpirationDate
    If expiry = "1/1/1970" Or expiry = "1/01/1601 10:00:00 AM" Or Err.Number = -2147467259 then
    expiration = "No expiration"
    else
    expiration = formatdatetime(objuser.AccountExpirationDate, vbshortdate)
    end if
    response.write expiration

end function

页面显示的错误如下:

Active Directory error '8007203b' 
A local error has occurred. 
/ftp-search.asp, line 28 

我不熟悉我们公司使用的数据库,所以我无法分辨导致问题的原因。 我做了一些研究但到目前为止找不到解决方案。

任何提示都将不胜感激!

1 个答案:

答案 0 :(得分:0)

你的尊贵名字似乎已经消失了。域部分应该在组织单元之后:

Set objuser = objRoot.OpenDSObject("LDAP://CN=" & user & _
  ",OU=FTP,dc=barghausen", strUserDN, strPassword, ADS_SECURE_AUTHENTICATION)