--授予tony对具有创建表、视图、存储过程等的操作权限
GRANT CREATE TABLE,CREATE VIEW,CREATE PROC TO tony
--禁止tony对具有创建表、视图、存储过程等的操作权限
DENY CREATE TABLE,CREATE VIEW,CREATE PROC TO tony
像上面的语句一样, 可以禁止数据库tony登录名用户 对数据库进行 创建表视图 存储过程操作。
哪位还知道 怎么禁止创建触发器,索引, 已经对应的授权行为
sqlserver 数据库
------解决方案--------------------
CREATE TRIGGER connection_limit_trigger
ON ALL SERVER
FOR Create_trigger
AS
BEGIN
IF ORIGINAL_LOGIN()= 'login_test'
ROLLBACK;
END;
------解决方案--------------------
好像,sql sever没办法防止某个登录不能创建触发器,只能通过服务器级别的触发器,或者数据库级别的触发器,来限制用户在创建触发器是报错,无法创建成功:
--建立服务器级别触发器
create trigger gyy_server
on all server
for create_table,create_view,create_procedure,create_index,create_trigger
as
if ORIGINAL_LOGIN() = 'tony'
begin
rollback;
Raiserror('你没有权限创建触发器!',16,-1)
end
go
--接下来用tony登陆后create trigger,就会报错的