查看数据库账号权限

Posted ganlanzhizhg

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了查看数据库账号权限相关的知识,希望对你有一定的参考价值。

sp_helpuser

查看当前数据库中的所有用户的信息,如果指定用户则只报告指定用户的信息

https://docs.microsoft.com/zh-cn/previous-versions/sql/sql-server-2008-r2/ms187732(v=sql.105)

sp_helplogins

技术分享图片

结果集

第一个报表包含有关每个指定的登录的信息。

列名数据类型描述
LoginName sysname 登录名。
SID varbinary(85) 登录安全标识符。
DefDBName sysname LoginName 连接到 Microsoft? SQL Server? 时使用的默认数据库。
DefLangName sysname LoginName 所使用的默认语言。
Auser char(5) Yes = LoginName 在一个数据库中有相关联的用户名。
No = LoginName 没有相关联的用户名。
ARemote char(7) Yes = LoginName 有相关的远程登录。
No = LoginName 没有相关的登录。

 

第二个报表包含有关与每个登录相关的用户及别名的信息。

列名数据类型描述
LoginName sysname 登录名。
DBName sysname 连接到 SQL Server 时,LoginName 所使用的默认数据库。
UserName sysname 在 DBName 中,LoginName 所映射到的用户帐户以及 LoginName 所属的角色。
UserOrAlias char(8) MemberOf = UserName 是角色。
User = UserName 是用户帐户。

 

注释

在删除登录之前,使用 sp_helplogins 确定该登录映射到的用户帐户。

权限

只有 sysadmin 和 securityadmin 固定服务器角色的成员才可以执行 sp_helplogins

sp_helplogins 必须检查服务器上所有的数据库,以确定这些数据库中与登录相关的用户帐户。因此,服务器上的每个数据库都必须满足下列条件之一:

  • 执行 sp_helplogins 的用户必须有访问该数据库的权限。

  • guest 用户帐户必须存在于数据库中。

如果不能访问某个数据库,则 sp_helplogins 显示错误信息 15622,并且尽其所能显示所有与这些数据库中的用户帐户相关的登录信息。

示例

下面的示例报告有关登录 John 的信息。

EXEC sp_helplogins ‘John‘
go

LoginName SID                        DefDBName DefLangName AUser ARemote 
--------- -------------------------- --------- ----------- ----- ------- 
John      0x23B348613497D11190C100C  master    us_english  yes   no

(1 row(s) affected)

LoginName   DBName   UserName   UserOrAlias 
---------   ------   --------   ----------- 
John        pubs     John       User        

(1 row(s) affected)

sp_who

报告当前Adaptive server用户和进程的信息或有关特定用户和进程的信息。
 技术分享图片

sp_who2

技术分享图片

 

use testSb

go

exec sp_helprotect 








以上是关于查看数据库账号权限的主要内容,如果未能解决你的问题,请参考以下文章

Android 逆向Linux 文件权限 ( Linux 权限简介 | 系统权限 | 用户权限 | 匿名用户权限 | 读 | 写 | 执行 | 更改组 | 更改用户 | 粘滞 )(代码片段

账号与权限管理实验

若依切账号如何去掉提示当前操作没有权限

mysql用户账号权限密码管理

《学习》13权限管理

mysql 用户账号权限与密码问题