我的目标是: 我必须直接从AD服务器获取有关所有活动目录非空组(邮件,帐户名,全名)中的所有用户的信息。我必须将它放入为其准备的Active Directory数据库中。我希望每晚运行一个SSIS包,并刷新有关所有组和用户的数据。
到目前为止我尝试了什么:
1)首先,我尝试过这样的开放式查询:http://www.ryanjadams.com/2016/03/query-active-directory-sql-server/#axzz4FanSmp3J
我失败了,因为它受到如此多的限制。我只能获取901行而且它不起作用,因为我希望它能够工作。
也许这是一个很好的解决方案,但我现在不知道如何通过链接服务器和打开查询来获取我的目标?
2)我的第二步是电源外壳: 我得到了这样的power shell脚本:
Get-ADGroup -filter "Groupcategory -eq 'Security' -AND Member -like '*'" |
foreach {
Write-Host "Exporting $($_.name)" -ForegroundColor Cyan
$name = $_.name -replace " ","-"
$file = Join-Path -path "C:\MyPath\GroupFiles" -ChildPath "$name.csv"
Get-ADGroupMember -Identity $_.distinguishedname -Recursive |
Get-ADObject -Properties SamAccountname,Title,Department |
Select Name,SamAccountName,Title,Department,DistinguishedName,ObjectClass |
Export-Csv -Path $file -NoTypeInformation
}
enter code here
上面的代码为我创建了名为Group的csv以及其中的所有用户但不幸的是它只创建了256个组,并且它的停止停止工作。
3)我知道第三步应该是SSIS中的C#脚本,但我在C#中是全新的,也许我将来会这样做,但我有限的时间来实现我的目标,我不想要从一开始就浪费我的时间学习C#。所以我的问题是我应该考虑解决问题的第四种方法吗?如果不是,完成我的工作的最佳解决方案是什么:1,2,3?
也许有人在过去遇到同样的问题并得到解决方案?
也许有人可以改进以下任何一项:1或2来帮助我解决它?
感谢您的帮助, BR