我正在Windows 2008 R2标准SP1框上运行2012 SP。Server服务是作为一个简单的windows域用户运行的(没有什么特殊的,没有管理权限,等等)
在使用Windows身份验证时,当数据文件位于网络共享上时,我在使用Bulk Insert时遇到了一些问题。已知的情况是,Server服务帐户可以访问网络资源,这可以通过使用SQL帐户登录到Server并执行大容量插入来显示。我对共享上的文件也有权利,就像我把文件放在那里一样。
现在,当使用Windows身份验证连接到Server并运行大容量插入时,我得到以下错误(强调我的错误):
Msg 4861、级别16、状态1、第2行无法大容量加载,因为文件"\服务器[share][filename]“无法打开。操作系统错误代码5(访问被拒绝)。
我在大容量插入(Transact-SQL)\安全帐户委托(模拟)大容量插入(Transact-SQL)\安全帐户委托(模拟)找到了这个片段,它的部分内容是:
若要解决此错误,请使用Server身份验证并指定使用Server进程帐户的安全配置文件的Server登录名,或配置四八六一以启用安全帐户委派。有关如何为委托启用用户帐户的信息,请参阅Windows帮助。
最后,经过大量搜索,我找到了这篇TechNet文章,如何为委托配置受信任的服务器,我们尝试了不受约束的委托,我重新启动了server,但它仍然无法工作。
我错过了什么?
发布于 2015-12-04 22:18:14
好的,这是我的问题的答案。虽然上面的评论很有帮助,并且有一些好的建议,比如手动添加SPN,但是最后一个部分缺失了。你知道,其中一个必须在这个月的第三个星期四的黑暗风暴中完成,只有当月亮在半路上打蜡时.
在发布这篇文章几天后,我基本上在Microsoft论坛上发布了同样的问题,以获得一个新的前景。长话短说,我不得不让我的网络管理员运行adsiedit.msc并让他编辑服务的域帐户用户。userAccountControl属性(表示位图字段的数字)必须更新。我必须取一个现有的号码,0x10200 (NORMAL_ACCOUNT \ DONT_EXPIRE_PASSWORD)和OR in 0x80000 (TRUSTED_FOR_DELEGATION)和OR in 0x1000000 (TRUSTED_TO_AUTH_FOR_DELEGATION),总计0x1090200!
现在,那不是用户友好吗!老实说,我不知道为什么当我们在GUI中为委托设置帐户时,它也没有设置这些位,但它没有。
我现在已为可信连接(Windows身份验证)正确运行大容量插入,并在我的三台SQL服务器中的两台服务器上正确模拟。不知道为什么不是一个人,但那是不同的一天.
https://dba.stackexchange.com/questions/121991
复制相似问题