为用户分配对象权限

在生产中,保护数据的良好做法只允许通过存储过程对其进行操作。这意味着你的应用程序无法直接对你的数据运行 CRUD 操作,并可能导致问题。分配权限是一项耗时,繁琐且通常繁重的任务。因此,通常更容易利用每个 SQL Server 数据库中包含的 INFORMATION_SCHEMA 模式中包含的一些(相当大的)功能。

而是单独为用户分配权限,只需运行下面的脚本,复制输出,然后在查询窗口中运行它。

SELECT 'GRANT EXEC ON core.' + r.ROUTINE_NAME + ' TO ' + <MyDatabaseUsername>
FROM INFORMATION_SCHEMA.ROUTINES r 
WHERE r.ROUTINE_CATALOG = '<MyDataBaseName>'