用户 'IIS APPPOOL\IdealTest' 登录失败解决方案

来源:互联网 发布:淘宝韩版女装店铺排行榜 编辑:程序博客网 时间:2024/05/16 01:15

运行MVC框架后可能会提示“用户 'IIS APPPOOL\IdealTest' 登录失败

详细堆栈信息如下

?
说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.Data.SqlClient.SqlException: 用户'IIS APPPOOL\IdealTest' 登录失败。
源错误:
行 31: {
行 32: var query = from userin container.T_SYSTEM_USER where user.USER_NAME == username select user;
行 33: returnquery.FirstOrDefault();
行 34: }
行 35:

经过多方查找,找到了解决方案

1.查看项目web.config文件中的数据库连接字符串

?
Integrated Security=True;//集成验证模式

2.打开iis管理器,查看项目的应用程序池,确实为集成验证模式

发现其标识列中为ApplicationPoolIdentity,问题就出在这里了

3,右键打开应用程序池中该项目的高级设置,将设置中的 标识 选项打开,选择账户为 NetWorkService ,点击确定,这样iis设置就完成了

4,查看sql中用户账户是否存在NetWorkService,方法:

1)打开sql管理器,选择,【安全性】-【登录名】,查看是否存在NetWorkService,若不存在,则添加之

2)添加账户方法:右键【登录名】,选择【新建登录名】,在弹出的对话框中的右边有登录名输入框,点击右侧的【搜索】,在弹出的【选择用户或组】中点击【高级】,再点击【立即查找】,找到NetWorkService用户名,点击确定。 然后点击左侧的【服务器角色】,将publick选择框打上,点击【用户映射】,将你项目中用到的数据表前 的勾打上,点击【确定】即可。

5,再次打开iis ,重启该项目,点击浏览,这样登录就ok了,呵呵,希望能帮到你。