当谈到 SQL Sever 中的数据库权限管理世界时,我非常喜欢。
让我们保持一个简单的例子。
假设帐户“admin”是模式 A、B 和 C 的所有者。
还有另一个帐户“minion”,您希望对在模式 A、B 和 C 下创建的任何对象(表/视图)拥有完全权限(更新/删除/插入/选择/更改)。
这可能吗?还是每次在这些模式下添加表/视图时都必须执行授权语句?(对我来说似乎有点傻)。
您可以GRANT架构权限,该权限对现有的所有内容以及该架构中将存在的所有内容都有效。
GRANT
授予架构权限
GRANT SELECT, INSERT, UPDATE, DELETE ON SCHEMA :: <schema> TO <user>;
此外,如果您想拒绝对该架构中某个对象的权限,您可以这样做。
拒绝对象权限
DENY INSERT ON OBJECT::<schema>.<object> TO <user>;