Welcome 微信登录
编程资源 图片资源库

首页 / 数据库 / SQLServer / MSSQL2000安全设置图文教程

MSSQL2000安全设置

Sql server 2000建立独立帐号数据库方法

首先我们启动Sql server 2000数据库,并打开企业管理器连接我们使用的数据库并找到数据库选项,在上面点击 鼠标右键选择新建数据库如下图所示。建立数据库时可以在数据文件,和事件日志中设置数据文件的物理存放位置

然后我们在安全性中找登录项,在上面点击鼠标右键如下图所示。我们将他的默认数据库设置为我们刚刚建立的数据库。如果 系统为英文请将sql server的字符集设置为Chinese_PRC_CI_AS。

然后再将这个帐号映射到数据库中,以限定数据库帐号的范围。


警告:我们不要给数据库分配服务器角色,只需要如图所示赋予public,db_owner。

到这数据库就建立完成了,记住您设置的帐号和密码并填写在程序配置文件中。存储过程有安全问题,全部复制到"SQL查询分析器" 点击菜单上的--"查询"--"执行",就会将有安全问题的SQL过程删除
复制代码 代码如下:
use master
EXEC sp_dropextendedproc "xp_cmdshell"
EXEC sp_dropextendedproc "Sp_OACreate"
EXEC sp_dropextendedproc "Sp_OADestroy"
EXEC sp_dropextendedproc "Sp_OAGetErrorInfo"
EXEC sp_dropextendedproc "Sp_OAGetProperty"
EXEC sp_dropextendedproc "Sp_OAMethod"
EXEC sp_dropextendedproc "Sp_OASetProperty"
EXEC sp_dropextendedproc "Sp_OAStop"
EXEC sp_dropextendedproc "Xp_regaddmultistring"
EXEC sp_dropextendedproc "Xp_regdeletekey"
EXEC sp_dropextendedproc "Xp_regdeletevalue"
EXEC sp_dropextendedproc "Xp_regenumvalues"
EXEC sp_dropextendedproc "Xp_regread"
EXEC sp_dropextendedproc "Xp_regremovemultistring"
EXEC sp_dropextendedproc "Xp_regwrite"
drop procedure sp_makewebtask

更改默认SA空密码.数据库链接不要使用SA帐户.单数据库单独设使用帐户.只给public和db_owner权限.数据库的自动备份点击“开始”中的“程序”,点击“Microsorft SQL Server”打开“企业管理器”,并打开如图所示的界面,鼠标右击“zbintel117_all”,选“所有任务”,再选“维护计划”。

如果点击“完成”按钮,出现下图界面,说明SQL Server Agent服务停止,应该启用SQL Server Agent服务。

启用“SQL Server Agent”服务


复制代码 代码如下:
下面内容来自网络仅作为参考,其中
exec sp_dropextendedproc "Xp_regdelete"
exec sp_dropextendedproc "Xp_regenums"
内容与上文不同,实际使用以上文为准。
命令删除SQL的扩展

use master
exec sp_dropextendedproc "xp_cmdshell"
exec sp_dropextendedproc "xp_dirtree"
exec sp_dropextendedproc "xp_enumgroups"
exec sp_dropextendedproc "xp_fixeddrives"
exec sp_dropextendedproc "xp_loginconfig"
exec sp_dropextendedproc "xp_enumerrorlogs"
exec sp_dropextendedproc "xp_getfiledetails"
exec sp_dropextendedproc "Sp_OACreate"
exec sp_dropextendedproc "Sp_OADestroy"
exec sp_dropextendedproc "Sp_OAGetErrorInfo"
exec sp_dropextendedproc "Sp_OAGetProperty"
exec sp_dropextendedproc "Sp_OAMethod"
exec sp_dropextendedproc "Sp_OASetProperty"
exec sp_dropextendedproc "Sp_OAStop"
exec sp_dropextendedproc "Xp_regaddmultistring"
exec sp_dropextendedproc "Xp_regdeletekey"
exec sp_dropextendedproc "Xp_regdelete"
exec sp_dropextendedproc "Xp_regenums"
exec sp_dropextendedproc "Xp_regread"
exec sp_dropextendedproc "Xp_regremovemultistring"
exec sp_dropextendedproc "Xp_regwrite"
drop procedure sp_makewebtask
go

恢复扩展存储过程,执行以下语句。
至于sp_makewebtask 这个存储过程你可以从别人那拷贝过来一个脚本,
执行以后生成的存储过程一样可以用。

use master
exec sp_addextendedproc xp_cmdshell,"xp_cmdshell.dll"
exec sp_addextendedproc xp_dirtree,"xpstar.dll"
exec sp_addextendedproc xp_enumgroups,"xplog70.dll"
exec sp_addextendedproc xp_fixeddrives,"xpstar.dll"
exec sp_addextendedproc xp_loginconfig,"xplog70.dll"
exec sp_addextendedproc xp_enumerrorlogs,"xpstar.dll"
exec sp_addextendedproc xp_getfiledetails,"xpstar.dll"
exec sp_addextendedproc sp_OACreate,"odsole70.dll"
exec sp_addextendedproc sp_OADestroy,"odsole70.dll"
exec sp_addextendedproc sp_OAGetErrorInfo,"odsole70.dll"
exec sp_addextendedproc sp_OAGetProperty,"odsole70.dll"
exec sp_addextendedproc sp_OAMethod,"odsole70.dll"
exec sp_addextendedproc sp_OASetProperty,"odsole70.dll"
exec sp_addextendedproc sp_OAStop,"odsole70.dll"
exec sp_addextendedproc xp_regaddmultistring,"xpstar.dll"
exec sp_addextendedproc xp_regdeletekey,"xpstar.dll"
exec sp_addextendedproc xp_regdelete,"xpstar.dll"
exec sp_addextendedproc xp_regenums,"xpstar.dll"
exec sp_addextendedproc xp_regread,"xpstar.dll"
exec sp_addextendedproc xp_regremovemultistring,"xpstar.dll"
exec sp_addextendedproc xp_regwrite,"xpstar.dll"

以上语句是自动生成的。
感兴趣你可以看一下以下语句,上边的语句就是这么生成的。
由于我机器上的扩展存储过程没有drop掉,所以可以生成上边的语句。

create table #temp( name varchar(100),dll varchar(100))

truncate table #temp

insert into #temp
exec sp_helpextendedproc "xp_cmdshell"
insert into #temp
exec sp_helpextendedproc "xp_dirtree"
insert into #temp
exec sp_helpextendedproc "xp_enumgroups"
insert into #temp
exec sp_helpextendedproc "xp_fixeddrives"
insert into #temp
exec sp_helpextendedproc "xp_loginconfig"
insert into #temp
exec sp_helpextendedproc "xp_enumerrorlogs"
insert into #temp
exec sp_helpextendedproc "xp_getfiledetails"
insert into #temp
exec sp_helpextendedproc "Sp_OACreate"
insert into #temp
exec sp_helpextendedproc "Sp_OADestroy"
insert into #temp
exec sp_helpextendedproc "Sp_OAGetErrorInfo"
insert into #temp
exec sp_helpextendedproc "Sp_OAGetProperty"
insert into #temp
exec sp_helpextendedproc "Sp_OAMethod"
insert into #temp
exec sp_helpextendedproc "Sp_OASetProperty"
insert into #temp
exec sp_helpextendedproc "Sp_OAStop"
insert into #temp
exec sp_helpextendedproc "Xp_regaddmultistring"
insert into #temp
exec sp_helpextendedproc "Xp_regdeletekey"
insert into #temp
exec sp_helpextendedproc "Xp_regdelete"
insert into #temp
exec sp_helpextendedproc "Xp_regenums"
insert into #temp
exec sp_helpextendedproc "Xp_regread"
insert into #temp
exec sp_helpextendedproc "Xp_regremovemultistring"
insert into #temp
exec sp_helpextendedproc "Xp_regwrite"

select "exec sp_addextendedproc "+name+","""+dll+""""
from #temp