使用SQL集成安全性和IIS Windows身份验证

时间:2015-03-27 00:22:36

标签: asp.net sql-server authentication iis impersonation

我们有一个内部asp.net Web应用程序,它启用了ASP.NET身份验证和Windows身份验证,以便用户可以在使用域凭据连接到网站后立即登录(这是我们无法更改的要求)。

我们目前正在寻求升级我们的SQL数据库,并了解SQL身份验证的安全性低于集成安全性(例如https://msdn.microsoft.com/en-us/library/bb669066(v=vs.110).aspx)。目前我们使用SQL身份验证。

我们可以轻松地将连接字符串更改为使用集成安全性运行,但IIS将用户视为连接到网站的域用户(例如domain \ greg)而不是服务(domain \ WebsiteServiceUser),因为IIS模拟用户。需要进行此模拟才能访问其Exchange邮箱,文件和其他内容。

如果我们沿着这条路走下去,我们就必须为每个用户(使用AD组)添加登录到SQL Server。这是可能的,但本身就存在一个新的安全问题 - 用户可以在我们的Web应用程序之外创建一个SQL连接,并对数据库运行他们喜欢的任何查询。我们所有的授权都可以被绕过。

有没有办法使用AppPool运行的用户(Domain \ WebsiteServiceUser)使用集成身份验证连接到SQL,而不是以当前登录用户身份(Domain \ Greg)连接?

0 个答案:

没有答案