如何解决在网络文件夹中找到AD安全组
我不是程序员,我必须走错了路!因此,这是不可能的,到底有没有一种简单的方法来获取一组网络文件夹并通过管道将适用于它的AD安全组列表发送出去呢?我用谷歌搜索了一下,但是有上百万个类似的问题,并且我已经测试了一些脚本,但无法准确获得我想要的东西或很多错误。我们有一个大约7个文件夹的顶级目录,并且安全性大约是3个级别。我们希望从AD TOOLS中清除未使用的或孤立的安全组,并尝试了解已使用的和未使用的。在我的组织尝试“网络驱动器清理”。 做到这一点的最佳方法是什么?我在PS中尝试过
Get-ChildItem "\\wfs.company.ca\adv\workgroups\adv services" -recurse | ForEach-Object {Get-Acl $_.FullName} | Export-CSV C:\"adv services".csv
它有效,但是给了我太多信息,但没有提供特定的组名。
而且我还尝试了类似的操作,但是会产生错误。
# Scope options are Universal,DomainLocal,Global
# Get-GroupMember -Scope DomainLocal
Function Get-GroupMember{
Param(
[parameter(Mandatory=$true)]
[string]
$scope
)
$Groups = Get-ADGroup -Filter {GroupScope -eq $scope -and Members -ne "NULL"} -Properties Name |
Select-Object Name,@{Name="GroupMembers";Expression={(Get-ADGroupMember -Identity "$_" |
Select-Object -ExpandProperty SamAccountName) -join "`n"}}
}
$Groups | Format-Table -AutoSize -Wrap
$Groups | Out-GridView
$Groups | Export-Csv C:\groups.csv -NoTypeInformation
我不介意进行工作和研究,我只是不知道从哪里开始。 任何指针,不胜感激。 谢谢!
解决方法
您可以使用它来获取应用身份(组和用户)的唯一列表:
(Get-ChildItem "\\wfs.company.ca\adv\workgroups\adv services" -Recurse | Get-Acl).Access.IdentityReference | select -Unique
此外,您可以使用Get-ADGroup
或其他方法来检查它是组还是用户。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。