SQL Server数据库安全规划全攻略
2007-05-15 09:31:56 来源:WEB开发网注意sp_addsrvrolemember存储过程的第一个参数要求是帐户的完整路径。例如,BigCo域的JoeS应该是bigcojoes(如果你想用本地帐户,则路径应该是server_namejoes)。
要创建在所有新数据库中都存在的用户,你可以修改Model数据库。为了简化工作,SQL Server自动把所有对Model数据库的改动复制到新的数据库。只要正确运用Model数据库,我们无需定制每一个新创建的数据库。另外,我们可以用sp_addrolemember存储过程把SQL Server Security Operators加入到db_securityadmin,把SQL Server Developers加入到db_owner角色。
注意我们仍然没有授权任何组或帐户访问数据库。事实上,我们不能通过Enterprise Manager授权数据库访问,因为Enterprise Manager的用户界面只允许我们把数据库访问权限授予合法的登录帐户。
SQL Server不要求NT帐户在我们把它设置为数据库角色的成员或分配对象权限之前能够访问数据库,但Enterprise Manager有这种限制。尽管如此,只要我们使用的是sp_addrolemember存储过程而不是Enterprise Manager,就可以在不授予域内NT帐户数据库访问权限的情况下为任意NT帐户分配权限。
到这里为止,对Model数据库的设置已经完成。但是,如果你的用户群体对企业范围内各个应用数据库有着类似的访问要求,你可以把下面这些操作移到Model数据库上进行,而不是在面向特定应用的数据库上进行。
四、允许数据库访问
在数据库内部,与迄今为止我们对登录验证的处理方式不同,我们可以把权限分配给角色而不是直接把它们分配给全局组。这种能力使得我们能够轻松地在安全策略中使用SQL Server验证的登录。即使你从来没有想要使用SQL Server登录帐户,本文仍旧建议分配权限给角色,因为这样你能够为未来可能出现的变化做好准备。
- ››sql server自动生成批量执行SQL脚本的批处理
- ››sql server 2008亿万数据性能优化
- ››SQL Server 2008清空数据库日志方法
- ››sqlserver安装和简单的使用
- ››SQL Sever 2008 R2 数据库管理
- ››SQL SERVER无法安装成功,sqlstp.log文件提示[未发...
- ››Sql Server中通过父记录查找出所有关联的子记录
- ››SqlServer触发器、存储过程和函数
- ››SQL Server 中的事务(含义,属性,管理)
- ››Sqlite数据库插入和读取图片数据
- ››Sql server 2005拒绝了对对象 'xx表' (数...
- ››Sql server 2005拒绝了对对象 'xx表' (数...
更多精彩
赞助商链接