我刚刚创建了一个新的Web应用程序,它接受来自用户的某些基于表单的输入并将其插入到数据库中。与此一起去,我创建的数据库的新用户以及最初分配用户两个角色和模式...SQL Server 2008 - 删除模式所有权
db_datareader
db_datawriter
在我想的东西后实现了用户并不需要成为db_datareader
的一部分因为用户只将数据插入到数据库中,并且从不读取任何数据。所以我回去并删除了角色db_datareader
,并注意到架构选项变灰。我无法从db_datareader
的架构所有权中移除用户。
如何从特定架构的所有权中移除用户?我应该首先分配模式所有权吗?
我以SQL Server和Windows 7操作系统的管理员身份登录。
谢谢。我做了你的建议,用户不再是模式的所有者。我发现谁拥有架构所有权的概念令人困惑。任何关于资源或教程的建议涵盖了这个领域? – webworm 2011-03-04 20:40:24
好吧,我参加了SQL Server 2008的一个培训课。在那之前,我对什么模式都是困惑的。我真正发现的是,如果你需要细化对象的权限(即多个用户可以访问(或不访问)模式中的对象),那么这些模式实际上只不过是像命名空间这样的逻辑容器 - 只对开发人员。否则,如果某个帐户可以访问模式中的所有对象,则向该模式添加更多对象会隐式授予架构成员所配置的访问权限。 – HardCode 2011-03-04 21:30:53
就我个人而言,对于使用Active Directory安全性的内部企业应用程序,我发现模式仅作为我们开发人员的命名空间。我创建数据库(或从现在起的应用程序)角色并为角色分配角色权限。 – HardCode 2011-03-04 21:32:25