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

用户 '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】->确定,在右边的具有授权,如果不知道的情况下全部打钩即可。参照截图如下

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

完美解决,下班。

 

posted @ 2017-07-30 20:28  sky110  阅读(38238)  评论(0编辑  收藏  举报