IIS的网站提示数据库用户ASPNET登录失败?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IIS的网站提示数据库用户ASPNET登录失败?相关的知识,希望对你有一定的参考价值。

先说明一下情况,我的电脑同时装了SQL 2005和SQL 2000,装2005在先。因此(local)实际上是2005的实例,PC-200909030930也是2005的实例,PC-200909030930\DK才是2000的实例。而我的网站程序是需要连接SQL2000的PC-200909030930\DK 数据库,web.config为<add name="datadb" connectionString="Data Source=PC-200909030930\DK ;Initial Catalog=msystem;User ID=sa;Password=sa;Connect Timeout=25;Integrated Security=true" providerName="System.Data.SqlClient"/> 。这个设置在VS自带的测试是可以通过的,可以顺利连接到PC-200909030930\DK 这个实例并进行操作。但通过IIS发布后问题就来了,会提示“用户 'PC-200909030930\ASPNET' 登录失败”。但我明明是需要登录PC-200909030930\DK 这个实例,因为PC-200909030930这个是2005的,但不知道为什么发布后会把我后面的DK替换为了ASPNET而导致登录失败。
如何能做到不要把我的DK替换为了ASPNET?难道只能通过重新安装两个SQL才能解决问题吗?
附图可见,我的SQL2000实例为PC-200909030930\DK,并且已经设置好了NT AUTHOR的登录权限了。现在根本问题在于IIS发布后网站没有按照我的webconfig设置去连接在2000上的PC-200909030930\DK,而是自作主张去连接了在2005上的PC-200909030930!

你可以将sql2005关闭掉,如下图进入数据库服务器管理界面,关掉sql2005,只让sql2000运行

参考技术A 那你把连接字符串改成这样试试:connectionString="server=. ;database=msystem;uid=sa;pwd=sa;"本回答被提问者采纳

无法打开登录所请求的数据库 "xxxx"。登录失败。 用户 'NT AUTHORITYSYSTEM' 登录失败。

用户 \'IIS APPPOOL\\DefaultAppPool\' 登录失败。 
我在windows8中安装了iis
之后添加了我做的网站
打开之后提示用户 \'IIS APPPOOL\\DefaultAppPool\' 登录失败。 

我再vs2010中能正常运行       
最佳答案 这是设置iis应用程序池的设置问题。
我就遇到了这样的问题。

比如我的网站取名myweb,就会默认给你建立一个myweb应用程序池
一开始报http 404.17错误

解决方案:
1. 右键myweb应用程序池,基本设置,选择.net framework 版本,看到有两个,2.0和4.0.
啊,这时我明白了,就选了4.0.

接着就报了你的那个错误
 \'IIS APPPOOL\\DefaultAppPool\' 登录失败。
这时因为你的iis应用程序池的用户验证模式和sqlserver的验证模式不同。记得你安装sqlserver时选了哪个模式吗?我的是LocalSystem(如果忘记了就一个个试)
好,接下来解决这个问题。

2. 再次右键myweb应用程序池,高级设置,看到有一个节点叫“进程模型”,修改标示一项,为
LocalSystem。搞定。

开启你的网站吧。

 

先用 用户名和密码方式登陆数据库,在安全性登录名的位置添加本机名字,然后记得分配权限。

例如:

在“Albums”数据库下->安全性>用户>右击(新建用户)>登录名(选择\'NT AUTHORITY/SYSTEM\' )>然后选择对应的角色成员(注意权限),确定,确定。就OK了。
注意一点是:要在  “数据库”>“登录名”下先给用户添加用户映射,步骤是:用户名上右击>属性>用户映射>把右侧数据库“Albums”勾上。确定。

 

 

拒绝了对对象 \'base_config\' (数据库 \'****\',架构 \'dbo\')的 SELECT 权限

这里用到的数据库是08版本的,出现了这种一直报权限错误:错误截图如下:

  所见效果描述:在windows身份验证的 情况下登陆进去数据库的表都是可以打开的,当换到sa或者别的账号登陆进去的时候这个时候我们点击我们的数据库就会报错:

 解决方法如下:

  1、首先我们要用windows身份登陆进去进行设置,因为你的sa等账号登陆进去设置都是无效的【这一步很重要】。

  2、找到对应的库下面的安全性->架构->dbo->右键属性【权限】->搜索->浏览【public】->确定,在右边的具有授权,如果不知道的情况下全部打钩即可。参照截图如下:

3、如果这个时候还是用sa或者别的账号可以登陆了,进去之后右键编辑表错误,那么这个时候你就需要进行下面的设置了。

4、windows登陆进去选择表右键属性【权限】->搜索->浏览【public】->确定,在右边的具有授权,如果不知道的情况下全部打钩即可。参照截图如下

最终完美解决问题。效果如下图所示:

完美解决,下班。

 

以上是关于IIS的网站提示数据库用户ASPNET登录失败?的主要内容,如果未能解决你的问题,请参考以下文章

用户 'IIS APPPOOLxxxx' 登录失败

用户 'IIS APPPOOL***' 登录失败

无法打开登录请求的数据库“测试”。登录失败。用户 'xyz\ASPNET' 登录失败

iis部署sa登录失败

如何用.net来解析asp后缀的页面

iis服务器网站 突然就登录不上去了 登录失败