首先,在实例级,有一个 view any database的这个属性,打开时可以看到所有数据库的元数据表,因此能看到实例下所有数据库的名字.默认public角色拥有这个属性.所以新建的登陆是可以看到所有的数据库的,只是没有对应权限的打不开而已. 如果拒绝view any database权限,那么对应的登陆只能查看 master.tempdb 以及所拥有的数据库的元数据. 所以,要实现sqlserver客户端连接只显示特定数据库,将数据库的所有者改为需要设定的登陆,然后拒绝此登陆的view an