当前位置:  开发笔记 > 数据库 > 正文

SQL Server 2005中"CREATE USER"所需的权限?

如何解决《SQLServer2005中"CREATEUSER"所需的权限?》经验,为你挑选了1个好方法。

我正在尝试从我的应用程序中创建一个SQL Server登录和数据库用户,以及一个自定义应用程序用户行.我希望这些用户能够创建其他用户 - 即应用程序将控制谁可以/不能创建用户但我需要所有用户拥有创建SQL服务器登录和数据库用户的权限.

我已经获得了服务器登录权限 - 即现有用户/登录可以创建新登录 - 通过将登录添加到'securityadmin'服务器角色 - 授予'ALTER ANY LOGIN'权限.

我试图对数据库用户做同样的事情 - 将它们添加到'db_accessadmin'数据库角色 - 这应该授予CREATE USER所需的ALTER ANY USER权限.

但是,每当我尝试使用具有上述权限的用户创建新数据库用户时,我都会获得权限异常.

我尝试手动授予特定用户ALTER ANY USER权限(GRANT ALTER ANY USER to demouser)但这也不起作用.



1> gbn..:

从技术上讲,是的.无论是对还是错......没有评论.

无论如何,数据库安全性分为两个功能:

db_accessadmin来管理用户(或者你提到的"ALTER ANY USER"权限)

db_securityadmin允许您管理角色成员身份和对象权限(或"ALTER ANY ROLE权限")

这是针对sp_addrolemember提到的.

您实际上是通过运行sp_addrolemember来更改角色而不是用户,因此"ALTER ANY ROLE"就足够了,而没有完整的db_owner权限.

推荐阅读
小白也坚强_177
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有