我刚开始学习SQL的基础知识,当我在搜索数据操纵语言、数据控制语言、数据定义语言时,有些东西没有意义。
据我所知,数据控制语言有3个关键字: Grant,Deny,Revoke。
Grant允许指定的用户做某些事情。"Revoke“将销毁指定用户拥有的所有安全权限。
然而,我不明白的是“拒绝”。
如果用户没有安全许可(有专门的术语计算机科学吗?)对于一个特定的数据库,为什么设计数据库的程序员会“拒绝”该用户对该数据库的许可?这没有意义。
有人能告诉我为什么和在哪里用“拒绝”吗?
发布于 2013-07-19 22:13:22
拒绝-就像“拒绝访问”一样。
它意味着明确不允许某人做某事。这与赋予访问权限和取消访问权限不同,而授权和撤销分别做到了这一点。
考虑到您可以授予一个组对某个模式的访问权限,但是对于该组的一个子集,您希望拒绝对该模式中定义的表子集的访问。“拒绝”为你提供了这样做的方法。
发布于 2013-07-19 22:17:23
DENY命令可用于显式阻止用户接收特定权限。
当用户可能是被授予权限的角色或组的成员,并且您希望通过创建例外来阻止该用户继承权限时,这将非常有用。
https://stackoverflow.com/questions/17748240
复制相似问题