应安全团队的要求,如果我撤销对这些表的访问权限,您认为有什么问题吗?
Use Master
GO
REVOKE SELECT ON sys.database_principals TO PUBLIC;
REVOKE SELECT ON sys.database_principals TO GUEST;
问题的重点不是请求是否合理,而是它是否会以任何方式造成伤害。
应安全团队的要求,如果我撤销对这些表的访问权限,您认为有什么问题吗?
Use Master
GO
REVOKE SELECT ON sys.database_principals TO PUBLIC;
REVOKE SELECT ON sys.database_principals TO GUEST;
问题的重点不是请求是否合理,而是它是否会以任何方式造成伤害。
我会说那个请求没有意义。权限部分声明每个用户只能看到自己的信息以及任何 SQL Server 实例上的默认信息:
sys.database_principals
因此,如果他们看到与其他用户相关的信息,则很可能他们已被授予
ALTER ANY USER
orALTER ANY ROLE
并且这应该是您的目标。它会破坏任何依赖于“任何用户都可以看到自己的用户名、系统用户和固定数据库角色”的记录行为的应用程序。