加入收藏 | 设为首页 | 会员中心 | 我要投稿 辽源站长网 (https://www.0437zz.com/)- 云专线、云连接、智能数据、边缘计算、数据安全!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql-server – 授予运行SQL Server作业的权限

发布时间:2021-03-18 07:29:06 所属栏目:MsSql教程 来源:网络整理
导读:我在我的MSSQL服务器2005上有一份工作,我希望允许任何数据库用户运行. 我并不担心安全性,因为作业的实际工作输入来自数据库表.只运行该作业,而不向该表添加记录将不起作用. 我只是找不到如何授予作业的公共权限. 有没有办法做到这一点?在这一点上我唯一能想

我在我的MSSQL服务器2005上有一份工作,我希望允许任何数据库用户运行.

我并不担心安全性,因为作业的实际工作输入来自数据库表.只运行该作业,而不向该表添加记录将不起作用.

我只是找不到如何授予作业的公共权限.

有没有办法做到这一点?在这一点上我唯一能想到的就是让工作不断运行(或按计划进行),但因为它只需要做很少的实际工作(也许每隔几个月),我确实希望工作成为现实.一旦它存在就完成,这似乎不是一个最佳的解决方案.

解决方法

您可以创建运行该作业的存储过程.您可以使用execute as owner将存储过程作为数据库所有者运行.这样,用户自己就不需要sp_start_job上的权限.
create procedure dbo.DoYourJob
with execute as owner
as
exec sp_start_job @job_name = 'YourJob'

授予DoYourJob执行权限以允许人们开始工作.

当然,您也可以将作业的内容放在一个过程中,并授予运行该过程的权限.这将允许更多的交互,比如显示结果文本.

(编辑:辽源站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读