我有一个使用 SQL Server 身份验证的 SQL Server 默认实例和两个用户 User1 和 User2。
User1 具有公共服务器角色,而 User2 具有公共服务器角色 + sysadmin 服务器角色。
我创建了一个数据库 sptest1。在该数据库中,我创建了一个存储过程,sp_viewtbl并创建了一个架构。使用模式我已禁用为 User1 执行存储过程并且它可以工作。
如何拒绝具有 sysadmin 服务器角色的 User2 执行存储过程?
假设我创建了 User3 并授予了 sysadmin 和 public 权限。那么如何防止新用户执行相同的存储过程呢?sp_viewtbl即使他们具有系统管理员权限,我也必须防止其他人登录。