如何让SQL用户只能看到自己拥有权限的库

以SQL Server 2012 为例:

如何让SQL用户只能看到自己拥有权限的库_第1张图片

图是部分数据库的截图, 我们执行:保存

    DENY VIEW any DATABASE to PUBLIC;

然后给Best库的Best用户执行:

    ALTER   AUTHORIZATION   ON   DATABASE::MineTO   Mine

如何让SQL用户只能看到自己拥有权限的库_第2张图片

资源管理器中Best用户登陆后就只能显示Best库了, 同样给Mine库的Mine用户执行相同SQL:

    ALTER   AUTHORIZATION   ON   DATABASE::MineTO   Mine

如何让SQL用户只能看到自己拥有权限的库_第3张图片

Mine用户登录后也只能显示Mine数据库了, 达到了咱的目的,分配权限的时候记得给对应用户映射对应数据库的权限, 防止跨库操作。

来源: <http://database.9sssd.com/mssql/art/1444>

你可能感兴趣的:(如何让SQL用户只能看到自己拥有权限的库)