是否可以阻止对提供数据库服务器潜在敏感信息的内置SQL Server功能的授权。
例如
答案 0 :(得分:1)
没有
仅来自
的权限SELECT *
FROM fn_builtin_permissions(default)
可以访问。
如果您不希望用户执行这些功能,则用户应通过应用程序访问数据库(使用用户不知道的应用程序登录名/密码),以便应用程序控制用户执行的操作。
答案 1 :(得分:1)
如果用户被拒绝了权限VIEW ANY DATABASE,他应该只能看到他拥有的master,tempdb和数据库。
但是,函数db_name()
仍然返回他不应该看到的数据库的值。由于数据库ID是低整数,因此列出服务器上的所有数据库都是件小事。请注意,数据库名称可能包含客户名称等敏感信息。
db_id()
存在同样的问题。
从SQL 2005开始,所有版本中都存在此问题。