我正在构建一个由SQL Server 2008 R2后端和MS Access前端组成的应用程序。 所有数据都保存在SQL Server中。 MS Access只是一组表单,控件和VBA ADO对象,它们调用SQL服务器上的存储过程,即。用户仅通过存储过程与SQL Server连接。 这些存储过程是不改变数据库状态的存储过程(例如,从表/视图/函数中选择)和一些改变状态的存储过程(例如,插入/更新/删除/合并)
在SQL Server上,我有一个名为' ADG'的AD组,它既是服务器登录又是数据库用户。 MS Access前端的用户是ADG的成员。 所有SQL Server数据库对象(表,视图,函数和存储过程)都在一个称为' ABC'的特定模式下。这是dbo拥有的。数据库中还有其他模式,全部由dbo拥有。
我一直在阅读“所有权链”'并希望澄清以下内容:
是' dbo'所有者'在ABC' ABC下的表格,视图,功能和存储过程凭借其对ABC' ABC的所有权的架构模式
鉴于上述应用程序的设置并取决于对1.的回答,是' EXECUTE'在ABC架构上,唯一的权限我 是否需要ADG,还是需要其他人?
赞赏任何澄清的帮助。
答案 0 :(得分:0)
查看https://msdn.microsoft.com/en-us/library/ms191465.aspx以查看权限层次结构的完整图片。
如果所有对象都在同一个ABC模式中,那么模式的所有者实际上是底层对象的所有者。再次,请参阅上面链接中的图表以获得清晰的图片。