我在IIS上托管了一个.net 2.0应用程序,它连接到Ingres DB。该连接使用iBatis和ODBC驱动程序连接到受安装密码保护的ingres数据库。
出于某种原因,当我调试我的代码时,一切运行正常。它建立连接没有任何问题。但是,当我尝试在我的本地IIS上托管该站点时,ingres会返回此错误
ERROR [5000H] [CA][Ingres ODBC Driver][Ingres]User authorization check failed.
Your user identifier was not known to this installation.
Contact your system manager for further assistance.
ERROR [08S01] [CA][Ingres ODBC Driver][Ingres]The connection to the server has been aborted.
我想知道为什么安装密码对我的调试会话可以正常工作,并且拒绝在IIS后面连接? IIS是否使用不同于我的计算机名称的“名称”来建立与安装密码的连接?
答案 0 :(得分:1)
连接被拒绝,因为目标服务器不知道用户尝试连接或尚未添加该用户。检查本地IIS实例的进程所有者是否是有效的ingres用户。 IIRC帐户名称通常类似于IUSR_MACHINENAME,其中MACHINENAME是IIS框的主机名。使用服务器上的以下SQL添加用户帐户:
echo "create user IUSR_MACHINENAME\g" | sql iidbdb