代码之家  ›  专栏  ›  技术社区  ›  S M Kamran

在VS开发服务器中工作但在IIS中不工作的Web应用程序

  •  3
  • S M Kamran  · 技术社区  · 16 年前

    我有一个ASP.NET应用程序,它使用SQL Server存储过程和使用Windows身份验证的Web服务。其思想是使用登录的用户凭据来调用Web服务(这很关键,因为Web服务使用身份验证凭据来分配已创建或更新记录的所有者)和执行存储过程。

    当我使用vs.net集成Web服务器时,结果很好(可能是因为此服务器在当前登录用户帐户下启动),SQL Server SP返回预期结果(即使我从查询分析器执行这些结果),并且Web服务凭据正确设置为当前登录用户。

    但是,当我在本地IIS中托管应用程序时,它并没有按预期工作。SQL Server存储过程返回空数据集,Web服务凭据设置为空。

    我正在使用

    myService.credentials=system.net.credentialscache.defaultcredentials

    Web服务主机虚拟目录和我的应用程序虚拟目录在IIS的目录安全性中使用Windows身份验证。

    有人知道吗????

    3 回复  |  直到 15 年前
        1
  •  1
  •   citronas    16 年前

    最有可能运行作为用户网络服务宿主ASP.NET的应用程序池的本地IIS。
    您的ASP.NET应用程序似乎没有正确使用WindowsAuthentication。您确定您正确记录了它吗?创建一个新的空白页,并将断点设置为page-onload方法。在这里,您转到(我认为它是提示窗口)并键入this.user.identity.name,查看它是否与您的Windows登录名匹配。

        2
  •  0
  •   user240141    16 年前

    在IIS管理器下。单击网站->属性并选择目录安全。然后匿名访问和授权控制,然后选择集成Windows以允许Windows域用户。访问网站

        3
  •  0
  •   S M Kamran    15 年前

    不幸的是,我没有找到原因。但是为了解决这个问题,我使用了模拟。

    关于不返回任何值的SP。我已经发现我使用的是来自SP的视图,而且登录的Windows帐户对这些视图没有足够的权限。

    推荐文章