sql-server sql server更改权限

m3eecexj  于 2022-10-31  发布在  SQL Server
关注(0)|答案(1)|浏览(415)

Maven
我正在尝试为我们的IT团队设置权限。我们所有的IT员工都是I.T组的成员。对于有问题的数据库,IT员工组是db_reader、db_reader的成员,可以执行所有SP/Fun。我想给予某个特定用户修改对象的权限。

CREATE USER [S\Al] FOR LOGIN [S\Al] WITH DEFAULT_SCHEMA=[dbo]

已将他添加到db_ddlAmin角色

EXEC sp_addrolemember N'db_ddladmin', N'S\Al'

我们数据库中的所有对象都属于DBO架构...因此,我已将dbo架构的alter权限授予用户

GRANT ALTER ON SCHEMA::[dbo] TO [S\Al]

但是,当此用户试图修改sp或删除表时,他会得到
无法更改过程'XX',因为它不存在或您没有权限。无法删除表'XX',因为它不存在或您没有权限。
此用户可以创建新表,但如果他尝试删除新创建的表,则会出现权限错误。
此用户是另外4个组的成员,该组是db_owner或db_ddladmin角色的成员,
我做错了什么,我该怎么解决这个问题。
谢谢
虚拟化

w3nuxt5m

w3nuxt5m1#

db_ddladmin角色的成员应该能够修改存储程序。
确保已将用户添加到正确数据库中的角色:

use YourDatabase;
EXEC sp_addrolemember N'db_ddladmin', N'S\Al'

如果没有显式的use,您可能已经使他成为master数据库的db_dlladmin角色的成员!

相关问题