微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在视图上授予SELECT + ALTER或在Procedure上授予ALTER + EXECTUE会暴露整个数据库吗?

如何解决在视图上授予SELECT + ALTER或在Procedure上授予ALTER + EXECTUE会暴露整个数据库吗?

假设我的数据库有3个表,table1table2table3一个视图v 用户X仅对表1和表2具有SELECT权限。 我想授予用户X ALTERSELECT在视图v上的权限,以便他可以根据需要设置视图,但只能对{{ 1}}和table1。我在Azure sql SERVER实例上进行了尝试,发现用户table2可以运行

X

然后他可以看到table3的所有数据。 (如果他可以更改某些SP并执行该SP,则可能会发生这种情况)

我的问题是,如何防止这种情况发生?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。