我正在使用SSIS更新活动目录条目。起初我使用了一个罚款的脚本组件。然后,我试图通过将更新放入脚本组件来优化控制流,并且当它开始出现“拒绝访问”异常时。经过测试,我放弃了这个想法,并试图回到原来的脚本任务,但现在我也得到了相同的例外。SSIS - >更新Active Directory访问被拒绝异常
经过与系统管理者会谈中,我发现了以下工作:
- 我的广告用户有相应权限的全部时间和权利不是从它的工作
- 在一个时间改变与他们给我管理员权限的原始代码失败的测试,但对异常没有影响
只要调用CommitChanges,就会发生异常。代码本身是我在PC上从Visual Studio运行的SSIS包的一部分,所以它应该使用我的用户,据我所知。
源码例如:
DirectoryEntry searchroot = new DirectoryEntry("LDAP://XXXXXX.com");
using (DirectorySearcher searcher = new DirectorySearcher(searchroot,
"(&(objectClass=user)(sn=MySN))", new string[] {"info"}, SearchScope.Subtree))
{
var result = searcher.FindOne();
DirectoryEntry upd = new DirectoryEntry(result.Path);
upd.Properties["info"].Value = "myTest";
upd.CommitChanges();
upd.Close();
}
与MySN的SN仅产生一个结果。也作为信息:我正在使用SQL数据工具2014和视觉工作室2013
就像我说的我的用户的权利没有改变,甚至给我的用户管理员权利没有照顾异常(尽管相同代码早些时候工作)。所以我的问题是:由于我真的没有想法,可能会导致问题的原因是什么(或者可能是因为使用我的用户在SSIS中弄错了?)。
更新: 今天代码没有任何改变的代码或广告再次运作o我真的很想知道什么可能导致的问题,因为我绝对没有得到它,它只是似乎不稳定,我的原因迄今未知。
表示某些东西可能改变了AD从AD到SQL服务器的信任。 – 2014-11-28 16:18:45
嗯,你是什么意思? (根据管理员,他们从第一次工作到停止工作的时间所做的唯一一件事就是他们已经添加了一个用户) – Thomas 2014-11-28 21:41:08
我的意思是改变了一些东西,使它停止工作,并再次改变以使它再次工作。事情并不奏效,随机停止工作。这两个主要更改可以是SSIS用户的权限更改或SSIS运行所在的SQL框未设置为受信任的机器。 – 2014-12-01 11:49:58