拒绝只读用户查看存储过程 MS 的 DDL SQL

Deny Read-Only Users to see DDL of a Stored Procedure MS SQL

几个只读用户有 Management Studio 和 运行 他们自己的查询,这不是问题。但是,我想保护存储过程和视图的代码,以便人们无法通过右键单击对象并选择 Script Procedure As>Create to>New Query Window 来查看它们背后的代码。

我尝试添加 WITH ENCRYPTION,但这甚至会阻止 DBO 看到代码。所以这不是一个好的解决方案。

还有其他方法可以实现吗?

另一种选择是拒绝 VIEW DEFINITION 权限。以下 post 详细介绍了此功能。

https://www.mssqltips.com/sqlservertip/1828/options-for-hiding-sql-server-code/

请参阅第 "ALTERNATE TO USING WITH ENCRYPTION CLAUSE"。