Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server SQL Server 2005安全性_Sql Server_Sql Server 2005_Database Security - Fatal编程技术网

Sql server SQL Server 2005安全性

Sql server SQL Server 2005安全性,sql-server,sql-server-2005,database-security,Sql Server,Sql Server 2005,Database Security,下面是一个场景。我有一个SQL Server 2005生产数据库/服务器。它目前有开发者和支持者可以连接到它。我需要创建一个安全模块,允许开发人员以只读方式访问数据库的所有区域。这意味着开发人员应该只能查看所有对象以及计划的活动/作业 是否有可能以这种方式启用安全性,如果有,我可以被温和地指导如何实现这一点。我正在学习成为一名DBA,创建数据库快照不是我的选择 提前谢谢大家。每个对象都有权限。 创建一个存储过程,为每个GROUP授予您需要保护的对象所需的确切权限。我不太确定这个“安全模块”在体系

下面是一个场景。我有一个SQL Server 2005生产数据库/服务器。它目前有开发者和支持者可以连接到它。我需要创建一个安全模块,允许开发人员以只读方式访问数据库的所有区域。这意味着开发人员应该只能查看所有对象以及计划的活动/作业

是否有可能以这种方式启用安全性,如果有,我可以被温和地指导如何实现这一点。我正在学习成为一名DBA,创建数据库快照不是我的选择


提前谢谢大家。

每个对象都有权限。
创建一个存储过程,为每个GROUP授予您需要保护的对象所需的确切权限。

我不太确定这个“安全模块”在体系结构中的位置。无论如何,这里有一种可能性可以从数据库端保护它

我假设您已经创建了用户

创建一个新角色(yourdb>安全>角色>新数据库角色),说“ReadOnlyDevelopers”。让所有者dbo或任何有意义的东西。不要选择角色所拥有的任何架构。用开发人员填充“角色成员”

接下来,打开数据库上的属性页。转到权限页面。单击添加。。。并添加新角色。在底部的权限网格下,将SELECT授予角色

现在假设您的开发人员已经属于其他角色,您需要进入用户属性,并在数据库角色成员资格下将其限制为仅属于新角色。在这一点上,他们应该能够阅读


我猜我遗漏了一两个细节(这个角色可能需要一些额外的权限来“查看”数据库、更改密码等),但如果不设置整个场景,我就无法达到这个细节级别。希望这能将您推向正确的方向。

谢谢Dani的回答,但我忘了提到我是这方面的新手,因此我只使用GUI进行了查看,因此创建SP将是一个巨大的挑战,因为我不知道从哪里开始。任何想法都会有帮助。谢谢你。它在一定程度上起作用。我会继续比赛,当我找到答案的时候,我会试着把它贴出来,这样大家都能看到。