用户 'IIS APPPOOL\XXX' 登录失败解决方法
[b]现象:[/b]运行MVC框架后提示“用户 'IIS APPPOOL\XXX' 登录失败”
详细堆栈信息如下
说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.Data.SqlClient.SqlException: 用户 'IIS APPPOOL\XXX' 登录失败。
源错误:[code]行 31: {
行 32: var query = from user in container.T_SYSTEM_USER where user.USER_NAME == username select user;
行 33: return query.FirstOrDefault();
行 34: }
行 35:[/code][b]原因:[/b]
1、查看项目web.config文件中的数据库连接字符串
Integrated Security=True;//集成验证模式
2、打开IIS管理器,查看项目的应用程序池,确实为集成验证模式,其标识列中为ApplicationPoolIdentity,问题就出在这里了。
[b]解决:[/b]
右键打开应用程序池中该项目的高级设置,将设置中的 标识 选项打开,选择账户为 NetWorkService ,点击确定。
-----------------------------------------------------------------------------------------------
另:查看sql中用户账户是否存在NetWorkService,方法:
1)打开sql管理器,选择,【安全性】-【登录名】,查看是否存在NetWorkService,若不存在,则添加之
2)添加账户方法:右键【登录名】,选择【新建登录名】,在弹出的对话框中的右边有登录名输入框,点击右侧的【搜索】,在弹出的【选择用户或组】中点击【高级】,再点击【立即查找】,找到NetWorkService用户名,点击确定。 然后点击左侧的【服务器角色】,将publick选择框打上,点击【用户映射】,将你项目中用到的数据表前 的勾打上,点击【确定】即可。
再次打开iis ,重启该项目,点击浏览,这样登录就ok了。
页:
[1]