我有一个在IIS 7.5中托管的asp.net网站
网站必须使用Windows身份验证。用户将添加到AD组。 AD用户组可以完全控制发布网站的Web文件夹。 Server / IIS_IUSRS也可以完全控制Web文件夹。
网站需要使用的数据存储在另一台服务器中。 AD组对存储数据的文件夹具有完全控制权。 我正在使用经典模式,因为Integrated打破了它。
网站身份验证和APP池设置应该是什么?
答案 0 :(得分:1)
就我个人而言,我已成为将应用程序池标识设置为AD服务帐户,然后允许该应用程序使用这些凭据访问数据库和其他资源的粉丝。无需传递连接字符串上的凭据或尝试模拟用户(编辑:应注意这适用于使用Windows集成安全性的资源)。也无需尝试让用户直接访问数据存储区或其他资源,只需要应用程序凭据即可访问。最初设置起来有点麻烦,但从长远来看更容易管理。
每当我要求他们为我建立一个新站点时,我发送给我们服务器组的清单:(注意这是基于Win Serv2003和IIS 6,在新版本中可能会有所不同。)
答案 1 :(得分:1)
不要混淆IIS自动化和ASP.NET自动化:
IIS自动化
ASP.NET自动化
<authorization>
元素)限制对您网络的访问:
访问您的数据文件夹,几个解决方案:
在访问数据文件夹时,使用默认的IIS 7 ASP.NET帐户和impersonate代码本地用户
System.Security.Principal.WindowsImpersonationContext impersonationContext; impersonationContext = ((System.Security.Principal.WindowsIdentity)User.Identity).Impersonate();
//插入在。下运行的代码 验证的安全上下文 用户在这里。
impersonationContext.Undo();
全局激活impersonation(<identity impersonate="true"/>
);不喜欢这个