Adds a member to one or more Active Directory groups.
The Add-ADPrincipalGroupMembership cmdlet adds a user, group, service account, or computer as a new member to one or more Active Directory groups.
The Identity parameter specifies the new user, computer, or group to add. You can identify the user, group, or computer by its distinguished name (DN), GUID, security identifier (SID), or SAM account name. You can also specify a user, group, or computer object variable, such as $, or pass an object through the pipeline to the Identity parameter. For example, you can use the Get-ADGroup cmdlet to get a group object and then pass the object through the pipeline to the Add-ADPrincipalGroupMembership cmdlet. Similarly, you can use Get-ADUser or Get-ADComputer to get user and computer objects to pass through the pipeline.
The MemberOf parameter specifies the groups that receive the new member. You can identify a group by its distinguished name (DN), GUID, security identifier (SID), or Security Accounts Manager (SAM) account name. You can also specify group object variable, such as $. To specify more than one group, use a comma-separated list. You cannot pass group objects through the pipeline to the MemberOf parameter. To add to a group by passing the group through the pipeline, use the Add-ADGroupMember cmdlet.
-The cmdlet is run from an Active Directory provider drive.
-A default naming context or partition is defined for the AD LDS environment. To specify a default naming context for an AD LDS environment, set the msDS-defaultNamingContext property of the Active Directory directory service agent (DSA) object (nTDSDSA) for the AD LDS instance.
Parameters
-AuthType
Specifies the authentication method to use. Possible values for this parameter include:
Required? false
Position? named
Default value Microsoft.ActiveDirectory.Management.AuthType.Negotiate
Accept pipeline input? false
Accept wildcard characters? false
-Credential <PSCredential>
Specifies the user account credentials to use to perform this task. The default credentials are the credentials of the currently logged on user unless the cmdlet is run from an Active Directory PowerShell provider drive. If the cmdlet is run from such a provider drive, the account associated with the drive is the default.
Required? false
Position? named
Default value
Accept pipeline input? false
Accept wildcard characters? false
-Identity <ADPrincipal>
Specifies an Active Directory principal object by providing one of the following property values. The identifier in parentheses is the LDAP display name for the attribute.
Required? true
Position? 1
Default value
Accept pipeline input? True (ByValue)
Accept wildcard characters? false
-MemberOf <ADGroup[]>
Specifies the Active Directory groups to add a user, computer, or group to as a member. You can identify a group by providing one of the following values. Note: The identifier in parentheses is the LDAP display name for the attribute.
Required? true
Position? 2
Default value
Accept pipeline input? false
Accept wildcard characters? false
-Partition <String>
Specifies the distinguished name of an Active Directory partition. The distinguished name must be one of the naming contexts on the current directory server. The cmdlet searches this partition to find the object defined by the Identity parameter.
Required? false
Position? named
Default value
Accept pipeline input? false
Accept wildcard characters? false
-PassThru <SwitchParameter>
Returns the new or modified object. By default (i.e. if -PassThru is not specified), this cmdlet does not generate any output.
Required? false
Position? named
Default value
Accept pipeline input? false
Accept wildcard characters? false
-Server <String>
Specifies the Active Directory Domain Services instance to connect to, by providing one of the following values for a corresponding domain name or directory server. The service may be any of the following: Active Directory Lightweight Domain Services, Active Directory Domain Services or Active Directory Snapshot instance.
Required? false
Position? named
Default value
Accept pipeline input? false
Accept wildcard characters? false
-Confirm <SwitchParameter>
Prompts you for confirmation before running the cmdlet.
Required? false
Position? named
Default value false
Accept pipeline input? false
Accept wildcard characters? false
-WhatIf <SwitchParameter>
Shows what would happen if the cmdlet runs. The cmdlet is not run.
Required? false
Position? named
Default value false
Accept pipeline input? false
Accept wildcard characters? false
Syntax
Add-ADPrincipalGroupMembership [-WhatIf] [-Confirm] [-AuthType <ADAuthType>] [-Credential <PSCredential>] [-Identity] <ADPrincipal> [-MemberOf] <ADGroup[]> [-Partition <String>] [-PassThru] [-Server <String>] [<CommonParameters>]
This cmdlet does not work with a read-only domain controller.
C:\PS>Add-ADPrincipalGroupMembership -Identity SQLAdmin1 -MemberOf DlgtdAdminsPSOGroup
Adds the user with SamAccountName “SQLAdmin1” to the group “DlgtdAdminsPSOGroup”.
C:\PS>Get-ADUser -Filter ‘Name -like “SvcAccount“‘ | Add-ADPrincipalGroupMembership -MemberOf SvcAccPSOGroup
Gets all users with “SvcAccount” in their name and adds it to the group “SvcAccPSOGroup”.
C:\PS>Add-ADPrincipalGroupMembership
cmdlet Add-ADPrincipalGroupMembership at command pipeline position 1
Supply values for the following parameters:
Identity: JeffPrice
MemberOf[0]: RodcAdmins
MemberOf[1]: Allowed RODC Password Replication Group
MemberOf[2]:
Demonstrates the default behavior of this cmdlet (no parameters specified).
C:\PS>Get-ADUser -Server localhost:60000 -SearchBase “DC=AppNC” -filter { Title -eq “Account Lead” -and Office -eq “Delhi” } | Add-ADPrincipalGroupMembership -MemberOf “CN=AccountLeads,OU=AccountDeptOU,DC=AppNC”
Adds all employees in “Delhi” in the AD LDS instance “localhost:60000” whose title is “Account Lead” to the group with the DistinguishedName “CN=AccountLeads,OU=AccountDeptOU,DC=AppNC”.
You can check the Version, CommandType and Source of this cmdlet by giving below command.
Get-Command Add-ADPrincipalGroupMembership
. Add-ADGroupMember
. Get-ADComputer
. Get-ADGroup
. Get-ADGroupMember
. Get-ADPrincipalGroupMembership
. Get-ADUser
. Remove-ADGroupMember
. Remove-ADPrincipalGroupMembership