Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database IIS6至IIS7.5断开数据库调用;Active Directory错误';8007203b&x27&引用;_Database_Vbscript_Ldap_Opends - Fatal编程技术网

Database IIS6至IIS7.5断开数据库调用;Active Directory错误';8007203b&x27&引用;

Database IIS6至IIS7.5断开数据库调用;Active Directory错误';8007203b&x27&引用;,database,vbscript,ldap,opends,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_SECU

我们最近从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 
我不熟悉我们公司使用的数据库,因此我无法辨别问题的原因。 我做了一些研究,但到目前为止还没有找到解决办法


任何提示都将不胜感激

您的尊姓大名好像不对劲。域部分应位于组织单元之后:

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

“,OU=FTP,dc=barghausen”,strUserDN,strPassword,ADS\u SECURE\u AUTHENTICATION)
我不确定您回复中的下划线是否是故意的?我尝试了以下操作:Set objuser=objRoot.OpenDSObject(“LDAP://CN=“&user&”,OU=FTP,dc=barghausen),strUserDN,strPassword,ADS\u SECURE\u AUTHENTICATION),收到了相同的错误。下划线表示指令在下一行继续。至于您的错误,您需要确保dn是正确的(通常它看起来应该有点像
LDAP://servername/CN=foo,OU=bar,DC=example,DC=com
),您的凭据是正确的,常量
ADS\u SECURE\u身份验证已定义,等等。请检查。凭据签出,'ftplist'具有权限。根据文档,我添加了dc=com。但还是没有运气。设置objuser=objRoot.OpenDSObject(“LDAP://CN=“&user&”,OU=FTP,dc=barghausen,dc=com”,strUserDN,strPassword,ADS\u SECURE\u AUTHENTICATION)文档仅包含一个示例。您必须将其调整为实际域中该用户的实际可分辨名称。