加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

通过powershell查询OU中被禁用的AD账号,并删除他们的所属组

发布时间:2020-12-15 23:20:22 所属栏目:安全 来源:网络整理
导读:这个需求可以通过两个方向来实现 1、找到禁用的账号,删除除domain users外的所有组,脚本内容如下 #导入AD模块 import-module ActiveDirectory #被禁用户 $users = get-aduser -Filter * -SearchBase "OU=xxx,DC=xxx,DC=com" | foreach {if ($ .enabled -eq
这个需求可以通过两个方向来实现
1、找到禁用的账号,删除除domain users外的所有组,脚本内容如下

#导入AD模块
import-module ActiveDirectory

#被禁用户
$users = get-aduser -Filter * -SearchBase "OU=xxx,DC=xxx,DC=com" | foreach {if ($.enabled -eq $false){echo $.Name} }

#删除用户所有组
foreach($user in $users){
$Membership = Get-ADPrincipalGroupMembership $User
$group = $Membership.distinguishedName -ne "CN=Domain Users,CN=Users,DC=com"
Remove-ADPrincipalGroupMembership -identity $User -MemberOf $group -confirm:$False
}

2、找到禁用账号的samaccountname跟组,将domain users外的组通过samaccountname删除成员,内容如下

import-module ActiveDirectory

$users = get-aduser -filter ‘enabled -eq $false‘ -Properties samaccountname,memberof -SearchBase "OU=xxx,dc=com" | select samaccountname,
@{ n = ‘MemberOf‘; e = { ($.memberof | % { (Get-ADObject $).Name }) -join "," } }

Foreach ($user in $users)
{
Get-ADGroup -Filter { name -notlike "domain users" } | Remove-ADGroupMember -Members $user.samaccountname -Confirm:$False }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读