【问题标题】:SQL 2005 Security - Users: What are they used for? (and other various questions)SQL 2005 安全性 - 用户:它们用于什么? (以及其他各种问题)
【发布时间】:2010-03-05 04:08:48
【问题描述】:

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

有一个选项可以为模式、表、视图和用户生成脚本。这是我感到困惑的用户,因为我不明白他们如何影响数据库的使用。我们团队中有一些开发人员在此列表中,也有一些不在此列表中,但每个人都可以在数据库上做任何事情,至少当他们将数据库托管在自己的机器上时。

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

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

还有一个用户名与此 dbo 用户相关联,它是我们一位开发人员的 windows NT 登录名,但他在列表中没有自己的用户对象...这有什么意义吗?这是一件坏事吗?

其他用户是guest、INFORMATION_SCHEMA和sys,但我觉得这些都是默认的?

抱歉,我是一个无知的 SQL 管理员,在我以前的工作中通常将这些事情留给 DBA!

感谢您的帮助。

【问题讨论】:

  • 虽然编程和 DBMS 管理之间的界限有时很模糊,但 serverfault.com 上的人们可能会更好地解决这个问题。
  • 我什至没有想到,这不是一个坏主意。
  • 问题已在那里发布。谢谢。

标签: sql-server-2005 security permissions schema


【解决方案1】:

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

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

用户拥有模式的意义是什么?

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

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

【讨论】:

    猜你喜欢
    • 2011-08-03
    • 2014-05-27
    • 1970-01-01
    • 1970-01-01
    • 2011-06-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多