0

我们正在.NET 2.0 平台上开发一个 Intranet Web 应用程序。该应用程序使用集成 Windows 身份验证进行单点登录。用户有权根据他们所在的 Active Directory 组使用不同的模块。

直到完成身份验证和授权为止,一切正常。但是当应用程序尝试连接到 MSSQL Server 上的数据库时,问题就开始了。

根据我们客户的安全政策,即使已加密,也不应将数据库用户或密码数据保存在连接字符串或注册表中。所以我们被迫在连接字符串中使用 Integrated Security=SSPI。

IIS 上的应用程序池由他们使用有权访问数据库的身份用户配置。

当我们停用 Windows 集成身份验证时,我们使用应用程序池的身份用户连接到数据库。但是,当启用集成身份验证时,应用程序会尝试使用登录用户凭据连接到数据库。

我们尝试了集成身份验证的每一种组合,无论有没有模拟,都可以解决这个问题。

有没有办法解决这个冲突?

4

1 回答 1

1

通常,您的操作方式应该可以工作。您是否启用了启用委派的 Kerberos?

也许这有帮助:

编辑:如果 SQL 和 IIS 在同一台机器上,您需要关闭模拟:

  • <身份验证模式="Windows" />
  • <identity impersonate="false" />
于 2009-03-28T09:44:00.040 回答