SQL Server存储过程和权限

是否可以拒绝sql Server中所有内容的权限(例如select,insert等),并通过存储过程提供临时权限.我想只使用存储过程来访问sql数据库中的数据.

这可能还是有另一种方式?

解决方法

这是一个支持我的sql Server的好模式.

基本上,如果proc和表具有相同的所有者(通常是dbo),那么对存储过程具有权限的人根本不需要任何表权限.它被称为ownership chaining

注意:在这种情况下,不会检查表的权限,因此也会忽略显式的“DENY权限”(DENY与“no permissions”不同)

这同样适用于视图,函数等(例如视图调用表,proc调用视图,……)

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 'EastRiver' 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...