我们的生产 SQL 数据库上发生了一些非常奇怪的事情。通过 Windows 身份验证连接的用户似乎已失去对主数据库的所有访问权限。默认情况下,所有登录都将默认数据库设置为 master。因此,当您使用 SQL Server Management Studio 连接时,他们会收到错误:
“无法打开用户默认数据库。登录失败错误 4064”。
同样令人担忧的是,我们有一个名为“COMPANY - SQL Administrator”的组,它具有系统管理员权限,并且该组中的用户也遇到了同样的错误。更糟糕的是,他们似乎不再是系统管理员了……
如果他们将默认数据库更改为其他数据库,他们就可以连接并处理该数据库,只是主数据库有问题。
我甚至不确定 Windows 身份验证用户通过什么机制访问主数据库。是硬编码的还是某些属性发生了变化?
有任何想法吗?
干杯,罗布。
答案1
确保在主数据库中启用了来宾帐户。
答案2
您最近在 Active Directory 中做过任何更改吗?COMPANY - SQL 管理员组是否在其他地方(例如文件服务器或管理工具)拥有管理员权限?
看起来,要么是 AD 中的实际权限被搞砸了,要么是 SQL 服务器的安全方案发生了一些变化。我要做的第一件事就是找出是哪一种情况。
答案3
您的主数据库上是否仍设置有 dbo?