Oracle all_users
和user_roles_privs
表在SQL SERVER 2012中的对应值是什么?
首先:在SQL Server中有两个'级别'的'用户'。第一个是Server Logins
。这些是可以连接到服务器的用户。第二个"级别"是Database Users
(这些用户映射到服务器登录)。
也有两种类型的权限:服务器级权限和数据库(对象)级权限。
这些是相关的目录视图:
- 服务器登录:
sys.server_principals
和sys.sql_logins
和sys.login_token
数据库用户: - 数据库角色成员:
sys.database_role_members
sys.database_principals
数据库权限:sys.database_permissions
你也可以使用这些函数来检查用户是否有权限:fn_my_permissions
和HAS_PERMS_BY_NAME
您可以在MSDN上阅读更多关于目录视图的信息:http://msdn.microsoft.com/en-us/library/ms174365.aspx
另外,请检查这个问题:SQL Server查询查找数据库中所有用户的所有权限/访问