现在用MSSQL的地方太多了,有很多做技术的个人电脑上也安装SQL专业版,因为它用的多,但用的人都知道,SQL有个超级用户sa,此用户默认情况下,它指派给固定服务器角色 sysadmin,并不能进行更改。一般懂点安全问题的技术人员都会把这个密码修改掉,但修改再复杂的密码都不是绝对安全的,一些暴力破解软件,菜鸟都会用。
那怎么办呢,最好的办法就是删除或改名,下面提供方法.
为了加强安全把默认的sa用户更改掉,安全性会有大幅提升。
Alter LOGIN sa DISABLE
Alter LOGIN sa WITH NAME = [新用户名]
修改SA用户名:
一:在企业管理器中右击:(local)(windows NT),选属性,选择“服务器设置”,在服务器行为中的“允许对系统目录直接进行修改”前面的方框打钩。再点确定。
二:再打开查询分析器,登陆进去(呵呵,随便你用什么帐号进去,不过可一定要在master数据库中有db_owner的权限)输入
代码如下:
update sysxlogins set name='你要改成的名字' where sid=0x01
update sysxlogins set sid=0xE765555BD44F054F89CD0076A06EA823 where name='你要改成的名字'
,OK,执行成功,转道企业管理器中刷新安全性中的登陆,看看,sa是不是变成你自己想修改的用户了
删除SA用户:
修改方法需要利用的存储过程sp_configure,sp_configure显示或更改当前服务器的全局配置设置。
语法:
打开查询分析器,输入
sp_configure [ [ @configname = ] 'name' ]
[ , [ @configvalue = ] 'value' ]
实例:
代码如下:
sp_configure 'allow updates', 1
go
RECONFIGURE WITH OVERRIDE
go
好拉,这样我们就可以更新系统表拉,接下来和前面的做法一样拉 update sysxlogins set name='你要改成的名字' where sid=0x01,然后再删除"你改名后的那个名字"
不过要注意在 sp_configure 上没有参数(或只有第一个参数)的执行许可权限默认授予所有用户。有两个参数的 sp_configure(用于更改配置选项)的执行许可权限默认授予 sysadmin 和 serveradmin 固定服务器角色。RECONFIGURE 权限默认授予 sysadmin 固定服务器角色和 serveradmin 固定服务器角色,并且不能传输。