2016-09-09 28 views
0

@記号で始まるすべてのActive Directoryグループからユーザーを削除するために、PowerShellファイルに次のコード行があります。PowerShell - Remove-ADGroupMember - 管理者アカウントのロック

Get-ADGroup -Filter 'name -like "@*"' | Remove-ADGroupMember -Members $UserID 

実際に正常に動作し、正常なグループから削除されますが、スクリプトは実行するたびに管理者アカウントをロックします。奇妙な!

インターネットをしばらくトロールしていると、Kerberos認証トークンを使用していると思われます(@で始まるすべての単一のADグループで実行されるので、あまりに多くを使用します)短期間に大量のコマンドを送信しているので、何か悪意のある行為をしようとしていますか?

このコード行を修正する方法はありますか?Active Directory内の@groupごとにRemove-ADGroupMemberを実行するのではなく、ユーザーが所属するグループに対してのみ実行されます。または他のアイデア?

ありがとうございます。

答えて

0

これを試してみてください:それはたったの$のユーザーはあなたが賢明罰金のトークンであるべきではメンバーであるグループを探しています

$groups = Get-ADPrincipalGroupMembership $user | where {$_.name -like "@*"} | select -expandproperty name 
foreach($group in $groups){ 
Remove-ADGroupMember -identity $group -Members $user 
} 

$ userをユーザー名で変更するか、あらかじめ変数に入力してください。

0

ええと、私は自宅にADインフラストラクチャを持っていませんが、例には何も定義されていないようです。$UserID

+0

こんにちはBurt_harris。 $ UserIDはすでにスクリプトでさらに定義されています。私はそれを問題なくエコーすることができるので、変数は正しく設定されています。 – haze1434

関連する問題