SQL Server安全性:通过数据库角色控制访问(下)

 
   | |

导读:文章主要为SQL Server安全性技巧,在本文中作者介绍了为什么通过存储过程来控制所有数据库访问是最佳方法,以及为何该方法可以帮助提高安全性/性能……

关键词:SQL Server安全性 数据库角色 验证角色访问

正在加载数据... 【TechTarget中国原创】我希望在本文中你能够学到一些东西。我已经解释了为什么通过存储过程来控制所有数据库访问是最佳方法,以及为何该方法可以帮助提高安全性/性能。同时,我还阐述了如何定义数据库角色、数据库角色是如何提高安全性/可管理性的、如何为数据库角色授予对象权限……

【TechTarget中国原创】第四步:创建/使用添加到数据库角色的用户/组。在我们所列举的例子中,我们将创建如下图所示的注册/用户"roleaccess"。

  通过数据库角色控制访问(图三)

  在这里,我们也可以将用户指派到数据库和已经创建的角色上,如下所示。

  通过数据库角色控制访问(图四)

  验证角色访问

  我们可以通过检查数据库中的数据库角色来验证访问,如下图所示。右击数据库角色,选择属性,就会显示如下图所示的新添加角色成员的窗口。

  通过数据库角色控制访问(图五)

  我们可以通过查看securables来检查存储过程/其它安全对象,如下所示。

  通过数据库角色控制访问(图六)

  检测数据库角色的安全性

  为了查看我们设置的角色访问的实际作用,我们可以使用"roleaccess"用户登陆SSMS。如下图所示,我们可以看到所有的数据库,但是无法访问它们。我们也只能看到我们拥有访问权限的表或存储过程,而无法看到所有其它的表或存储过程。

  通过数据库角色控制访问(图七)

  我们也可以右击Proc_test1并点击修改来查看代码,但是我们无法修改它,如下图所示。

  通过数据库角色控制访问(图八)

  最后,我们可以执行存储过程,但是我们无法查询Table_1表。

  通过数据库角色控制访问(图九)

  我希望在本文中你能够学到一些东西。我已经解释了为什么通过存储过程来控制所有数据库访问是最佳方法,以及为何该方法可以帮助提高安全性/性能。同时,我还阐述了如何定义数据库角色、数据库角色是如何提高安全性/可管理性的、如何为数据库角色授予对象权限、如何创建一个登陆、如何指派一个用户到数据库和数据库角色以及如何验证已定义的权限。最后,我还演示了它是如何限制用户访问数据库。请记住,在项目的一开始定义数据库安全性比在之后添加要容易得多。

 
查看全文
 
 
 
 
 

SQL Server安全

 
采用透明数据加密,整个数据库(MDFs,tempdb,等等)对磁盘的读取和写入都作了解密/加密的处理,而不需要重写应用程序或生成自定义的加密和解密的代码。
 
现在的SQL Server Express版本已经非常便于自动打补丁了。你可以使用Windows Server Update Services或者更新你的Windows操作系统就可以完成补丁安装。
 
SQL Server Express最早是SQL Server 7.0的缩水版本,微软SQL Server桌面引擎(MSDE)就是它的前身。
 
想要攻击一个看似安全的SQL Server系统,可以有无数种选择。现实的情况中,在SQL Server上执行更高级别的安全审计实际上是失去先机。
 
在对SQL Server系统执行入侵测试或者更高级别的安全审计时,有一种测试不应该被忽略,那就是SQL Server密码测试。
 

登录TechTarget中国

关闭
本服务仅向TechTarget中国的会员开放,请登录或立即免费注册
电子邮件地址:
请输入您的电子邮件地址
密码:
下次自动登录