MSSQL2000安全设置图文教程

所属分类: 数据库 / MsSql 阅读数: 571
收藏 0 赞 0 分享
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

更多精彩内容其他人还在看

SQL Substring提取部分字符串

SQL 中的 substring 函数是用来抓出一个栏位资料中的其中一部分。这个函数的名称在不同的资料库中不完全一样
收藏 0 赞 0 分享

用户"sa"登陆失败 SQLServer 错误18456的解决方法

sqlserver下用sa登录提示18456错误的解决方法。
收藏 0 赞 0 分享

drop,truncate与delete的区别

这里说的delete是指不带where子句的delete语句
收藏 0 赞 0 分享

SQL语句查询数据库中重复记录的个数

一个sql语句:一个表test有四个字段id,a,b,c,如果表中的记录有三个字段a,b,c都相等,则说明这条记录是相同的,求相同的记录的个数 。
收藏 0 赞 0 分享

SQL 导入导出Excel数据的语句

从Excel文件中,导入数据到SQL数据库中,很简单
收藏 0 赞 0 分享

可以获取客户端的IP地址的sql语句

利用SQL语句得到客户端的IP地址的代码
收藏 0 赞 0 分享

SQL 根据汉字获取全拼的代码

SQL 根据汉字获取全拼(有些字还没有添加上去,请自已加上去,涂聚文注)
收藏 0 赞 0 分享

sqlserver exists,not exists的用法

exists,not exists的使用方法示例,需要的朋友可以参考下。
收藏 0 赞 0 分享

sqlserver substring函数使用方法小结

在操作sqlserver时候用到了substring函数,特整理一些实例,需要的朋友可以参考下。
收藏 0 赞 0 分享

sql 判断数据库,表,存储过程等是否存在的代码

sql下用了判断各种资源是否存在的代码,很实用。需要的朋友可以参考下。
收藏 0 赞 0 分享
查看更多