我们已经创建了一个UDF,现在这个从一些受限制的数据库获取信息,并且还读取受限数据库的扩展属性。我们希望保留受限制的数据库,即不能直接访问这些数据库。
但是,我们希望每个人(我的意思是每个经过身份验证的SQL用户)能够像这样运行此缩放器UDF:
选择somedatabase.dbo.udf_getInfo()
换句话说,只有每个人都可以访问缩放器函数udf_getInfo,这个缩放器值函数将读取一些数据库信息,执行的用户无法直接访问。
答案 0 :(得分:0)
use YourDbName
GO
-- only one of these is correct
GRANT SELECT on dbo.udf_getinfo() TO public
GO
-- only one of these is correct
GRANT EXEC on dbo.udf_getinfo() TO public
GO
-- YOU MUST HAVE PERMISSION also - AND - you need to have the GRANT on it to give the permission.