Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 用户在多个组中时的存储过程安全性(SQL Server 2016)_Sql Server - Fatal编程技术网

Sql server 用户在多个组中时的存储过程安全性(SQL Server 2016)

Sql server 用户在多个组中时的存储过程安全性(SQL Server 2016),sql-server,Sql Server,我有两个广告组:A组和B组 组A包含用户1、用户2、用户3 B组包含User1 我有3个存储过程 SP1组A授权执行 SP2 A组授权执行 SP3 A组拒绝执行,B组授予执行 SP3不为用户1运行,猜测来自组A的拒绝覆盖组B的授权,这是真的吗 如何在不从组A中删除User1并将组B添加到所有SP的情况下实现此功能。。。或者不可能。按照当前的设置方式,这是不可能的,因为“拒绝”将始终优先于“授予” 您需要创建另一个名为组C的安全组,从其他组中删除用户1并将其添加到此组中。然后,您将向C组的SP1和

我有两个广告组:A组和B组

组A包含用户1、用户2、用户3 B组包含User1

我有3个存储过程 SP1组A授权执行

SP2 A组授权执行

SP3 A组拒绝执行,B组授予执行

SP3不为用户1运行,猜测来自组A的拒绝覆盖组B的授权,这是真的吗


如何在不从组A中删除User1并将组B添加到所有SP的情况下实现此功能。。。或者不可能。

按照当前的设置方式,这是不可能的,因为“拒绝”将始终优先于“授予”

您需要创建另一个名为组C的安全组,从其他组中删除用户1并将其添加到此组中。然后,您将向C组的SP1和SP3申请授权。

DENY>GRANT。权限总是这样工作的。就我个人而言,我发现最好在他们自己的角色中拥有拒绝权限。混合匹配GRANT和DENY往往会导致这样的问题。