拒绝了对对象 'sp_OACreate' (数据库 'mssqlsystemresource',架构 'sys')的 EXECUTE 权限。
有个接口,我采用了MSSQL的存储过程执行时使用ServerXMLHTTP直接访问WebService接口的WSDL,直接在MSSQL里就可以使用SOAP协议访问接口,何必要去炫耀自己有多牛多厉害如何如何懂用python/java/c#这些东西呢,是吧?
当初部署时也应该是出现了这个错误提示,自己当初是怎么解决的都忘了,也没记下来。这几天需要迁移服务器,结果在新服务器上出现了这个提示,上百度去查了半天。。。现在都不知道百度有多么的垃圾。。。找出来的内容全部都是同一篇,而且还都是说的不清不楚的。只好是自己再折腾了。。。
按百度出来的那垃圾文章的方法:

没鸟用。然后自己在查询分析器里用sa来执行那段代码,确定是可以执行的,说明服务器是有这个组件,并且是可以正常执行的,只是给用户授权的方式不对。
还好,迁移之前的旧服务器还在,然后打开旧服务器上看用户权限,结果自己看眼花了吧可能,按着试了一下,还是不行。。。懵逼了。。。
再仔细核对,发现自己确实是没设对。。。
折腾了半天,原来早之前我是以把用户权限设成管理员的方式来实现的。
刚又折腾了一下,至少是发现了一个办法:
要成功的执行上面那条grant命令的前提是,必须要先把用户映射到master库中,才能在master库中给它进行授权。
然后还得要一个一个的功能模块的授权:
![]()

。。。
还是先把它给弄成管理员方式来跑程序先吧。
完成后,再执行下面这段代码就不会有错误的提示了:
declare @object int exec sp_oacreate 'MSXML2.ServerXMLHTTP',@object out; print @object exec sp_oadestroy @object
转载请注明 : 文章转载自不了阁-飞哥 blog.forbs.cn
本站文章除注明转载/出处外,均为本站原创或翻译。转载务必注明出处,尊重他人劳动成果共创和谐网络环境。





