Sql server 登录到SQL Server Windows对Active Directory组的身份验证时出现问题
我遇到了一点困难,不幸的是,我一直无法找到我的问题的具体答案。我会尽力解释这个问题;我希望这是有意义的 我对SQL Server和Windows身份验证的工作方式有问题。事情很复杂,所以我会尽力澄清 对于此场景,请绘制以下图片:Sql server 登录到SQL Server Windows对Active Directory组的身份验证时出现问题,sql-server,windows-authentication,Sql Server,Windows Authentication,我遇到了一点困难,不幸的是,我一直无法找到我的问题的具体答案。我会尽力解释这个问题;我希望这是有意义的 我对SQL Server和Windows身份验证的工作方式有问题。事情很复杂,所以我会尽力澄清 对于此场景,请绘制以下图片: 一个SQL Server 2008实例 在该服务器上,有一个名为应用程序的数据库 在应用程序数据库中,有两个模式称为app1和app2 每个架构包含同名应用程序的所有表 两个Windows广告组,每个应用程序一个,分别命名为app1\u RW和app2\u RW 任何
- 一个SQL Server 2008实例
- 在该服务器上,有一个名为
应用程序
的数据库
- 在
数据库中,有两个模式称为应用程序
和app1
app2
- 每个架构包含同名应用程序的所有表
- 两个Windows广告组,每个应用程序一个,分别命名为
和app1\u RW
app2\u RW
- 任何给定数量的用户都可以在一个或两个广告组中
- 两个.NET应用程序,都使用Windows身份验证模式连接到数据库
Data Source=DATABASEINSTANCENAME;Initial Catalog=APPLICATIONS;Integrated Security=True
application1
或application2
时,应用程序将执行以下操作(按此顺序):
app1\u RW
和app2\u RW
的成员时,我似乎无法强制哪个组登录。如果用户登录到application1
,我将看到Windows身份验证使用app2\u RW
将他们登录到数据库的位置。因此,应用程序失败,因为app2\u RW
无权访问运行application1
所需的架构/权限
我曾希望我的答案会像在连接字符串中指定要登录的Windows广告组一样简单,但据我所知,如果Integrated Security=True
,则无法指定连接字符串的“用户Id”
有人能帮忙吗?我非常想继续使用Windows广告组来管理我的应用程序。如果我遗漏了任何信息或我可以澄清,请让我知道
非常感谢您,祝您度过愉快的一天。只要这两个广告组不是互斥的,您就可以在应用程序中设置规则,确定哪个组是超集,并将该组用作登录。如果这两个组再次互斥,请设置一个规则以提供最低权限。希望对您有所帮助。您确定您提供了完整的信息吗?您收到了什么错误消息?这是权限问题还是命名问题?这两个应用程序是在同一个目录中还是在不同的目录中?。。。。通常,您需要在数据库中创建角色,为角色分配权限,然后使用“用户映射”对话框将登录映射到数据库角色。这将允许您实现所需的多/多映射。