gpt4 book ai didi

sql-server - 我可以授予数据库用户在架构中创建 View 的权限吗?

转载 作者:行者123 更新时间:2023-12-04 02:13:23 26 4
gpt4 key购买 nike

我想设置一个安全情况,我的数据库用户(“ApplicationUser”)有权在架构中创建、更改和删除 View 。

如果我执行语句

GRANT ALTER ON SCHEMA :: MySchema TO ApplicationUser;

然后连接数据库并执行语句:
CREATE VIEW [MySchema].[MyView] AS SELECT * FROM SomeTable

我收到错误消息
CREATE VIEW permission denied in database 'MyDatabase'.

是否可以按照我想要的方式配置安全性,或者我必须在整个数据库上授予“ALTER”权限?或者是其他东西?

谢谢你的帮助!

最佳答案

create schema myschema authorization ApplicationUser
GO

grant create view to ApplicationUser
GO

为此,您需要更改架构的授权,这可能会产生其他后果,或者使用诸如数据库 DDL 触发器之类的东西。

对于现有架构,请执行以下操作:
alter authorization on schema::myschema to ApplicationUser

就像我说的,这种方式应该谨慎行事。对于另一种方式 http://msdn.microsoft.com/en-us/library/ms186406(v=sql.105).aspx

关于sql-server - 我可以授予数据库用户在架构中创建 View 的权限吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14988895/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com