SQL 2005安全性 - 用户:它们用于什么? (和其他各种问题)

时间:2010-03-05 04:08:48

标签: sql-server-2005 security permissions schema

我不是DBA,因此对SQL 2005安全设置等一无所知。我试图通过从SQL Management Studio生成的脚本生成完整数据库来设置数据库的空副本。不幸的是,我不知道有多少选项可以做,而且这个过程的MSFT文档也不是很好。

可以选择为Schemas,Tables,Views和Users生成脚本。我很困惑的是用户,因为我不明白它们如何影响数据库的使用。我们团队中有一些开发人员在这个列表中,有些人不在,但是每个人都可以在数据库上做任何事情,至少当他们在自己的机器上托管它时。

我是否需要将这些用户保留在我新生成的数据库中?他们做了什么?

我们还有一个dbo用户,他是db_owner并拥有我们的许多架构。这个dbo用户是什么?拥有架构的用户有什么意义?我们使用Schemas作为“名称空间”来对我们数据库中的逻辑相关表进行分组,但我认为它们比那些更多吗?

还有一个用户名绑定到这个dbo用户,它是我们其中一个开发人员的Windows NT登录名,但他在列表中没有自己的用户对象......这有什么意义吗?这是件坏事吗?

其他用户是来宾,INFORMATION_SCHEMA和sys,但我认为这些都是默认值?

很抱歉,我是一个SQL管理员无知,通常在我以前的工作中把这些东西留给了DBA!

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

  

我是否需要将这些用户保留在我新生成的数据库中以及他们做了什么

答案取决于它。如果您的应用程序使用混合模式身份验证,那么您将需要在SQL中创建的用户帐户。如果你使用Windows身份验证(听起来像你),那么你可能不需要它们。

  

用户拥有架构的重要性是什么?

在SQL Server 2005中,所有模式都必须由用户拥有。模式可用于对功能进行分组,但也可用于对安全性进行分组。例如,用户帐户可能只能访问特定模式(或多个模式)。

希望这有助于回答您的一些问题