從 PowerShell 中的組中刪除使用者

Marion Paul Kenneth Mendoza 2023年1月30日 2022年5月16日
  1. 從 PowerShell 中的組中刪除使用者
  2. PowerShell 中 Remove-ADGroupMember 的命令引數
從 PowerShell 中的組中刪除使用者

本文將討論從活動目錄組中刪除使用者並使用 PowerShell 討論命令的引數。

從 PowerShell 中的組中刪除使用者

一旦使用者離開組或組織,從本地或活動目錄組中刪除使用者是一項常見要求。然而,手動移除它們可能很耗時,而且在批量移除的情況下,它非常困難並且需要高度集中。

儘管如此,PowerShell 中有一些命令可以從本地和 AD 組中刪除使用者。

在 PowerShell 中,特定的本機命令會從組中刪除使用者。該 cmdlet 稱為 Remove-ADGroupMember

該命令的基本語法如下。

Remove-ADGroupMember [-WhatIf] [-Confirm] [-AuthType] [-Credential <PSCredential>] [-Identity] <ADGroup> [-Members] <ADPrincipal[]> [-Partition <String>] [-PassThru] [-Server <String>] [-DisablePermissiveModify] [<CommonParameters>]

Remove-ADGroupMember 使用 rlgm 別名。如你所見,該命令包含並接受許多引數,因此讓我們一一討論。

PowerShell 中 Remove-ADGroupMember 的命令引數

  1. -Confirm

    此引數在繼續執行之前詢問客戶端確認。引數的資料型別是 switch

    它的別名是 cfFalse 是預設值。該引數不承認管道輸入,並且不允許使用萬用字元。

  2. -WhatIf

    此引數讓使用者知道此 cmdlet 是否執行。引數的資料型別為 switch,引數別名為 wi,該引數的預設值為 False,不接受管道輸入,不允許使用萬用字元。

  1. -Authtype

    此引數暗示從 AD 組中刪除專案的身份驗證。可以協商(0)或基本(1)。

    預設情況下,使用協商。基本策略需要設定 SSL 關聯。

    該引數的預設資訊型別為 ADAuthType。預設值為

    此引數不確認管道輸入,並且不允許使用萬用字元。

  2. -Credential

    此引數指示指令碼將在其下執行 cmdlet 的憑據。預設情況下,首先考慮當前使用者的個人資料。

    如果從驅動器執行命令,則使用驅動器的帳戶。此引數的預設資料型別是 PSCredential

    None 是預設值。該引數不承認管道輸入,並且不允許使用萬用字元。

  3. -DisablePermissiveModify

    此引數可防止系統在將現有使用者新增到組時引發錯誤。該引數的預設資料型別是 switch

    預設值為 false。該引數不接受管道輸入,也不允許使用萬用字元。

  4. -Members

    此引數可以是需要從 Active Directory 組中刪除的一組使用者、組或物件。引數可以取以下值; DN、安全識別符號、SAM 帳戶名稱和 GUID。

    該引數的資料型別是 ADPrincipal[]None 是引數的預設值。

該引數不接受管道輸入,也不允許使用萬用字元。

  1. -Partition

    此參數列示 Active Directory 分割槽的可分辨名稱。在 Active Directory 中,在下列情況之一下設定預設值。

    在標識的情況下,為引數分配一個 DN,然後直接從 DN 生成分割槽名稱。假設 cmdlet 從 AD 驅動器執行。

    分割槽的值來自驅動器的當前路徑。如果以上兩種情況中的任何一種都不匹配,則將目標域值用作分割槽值。

    資料型別是字串 是預設值。該引數不接受管道輸入,也不允許使用萬用字元。

  2. -Passthru

    此引數不會生成任何輸出。它通常返回我們試圖刪除的專案的物件。

    資料型別是 switch 是預設值。該引數不接受管道輸入,也不允許使用萬用字元。

    下面是 Removed-ADGroupMember 的示例程式碼。

    Write-Host "Removing users from an AD group."
    Import-Csv "C:\temp\test_users.csv" | ForEach-Object {
    	$identity = $_.Identity
    	$user = $_.Member
    	Remove-ADGroupMember -Identity $identity -Members $user
    	Write-Host "User $user successfully removed from the AD group"
    }
    
Marion Paul Kenneth Mendoza avatar Marion Paul Kenneth Mendoza avatar

Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.

LinkedIn