Adding and Removing Extensionattribute to Ad Object
I'm Using Powershell to Modify Some Ad Extensionattribute. This Is My Code to Add an Extensionattribute Set-Aduser -Identity "Anyuser" -Add...
I'm using powershell to modify some AD extensionattribute.
This is my code to add an extensionattribute
Set-ADUser -Identity "anyUser" -Add @{extensionAttribute4="myString"}
It works, but how can I remove the same extensionattribute? I can't find anything similar to -remove.
7 Answers
You could try using the -Clear parameter
Example:-Clear Attribute1LDAPDisplayName, Attribute2LDAPDisplayName
I used the following today - It works!
Add a value to an extensionAttribute
$ThisUser = Get-ADUser -Identity $User -Properties extensionAttribute1
Set-ADUser –Identity $ThisUser -add @{"extensionattribute1"="MyString"}
Remove a value from an extensionAttribute
$ThisUser = Get-ADUser -Identity $User -Properties extensionAttribute1
Set-ADUser –Identity $ThisUser -Clear "extensionattribute1"
I have struggled a long time to modify the extension attributes in our domain. Then I wrote a powershell script and created an editor with a GUI to set and remove extAttributes from an account.
If you like, you can take a look at it at
I'm sorry, that the description in the text is in German. The GUI itself is in English.
I use this script on a regular basis in our domain and it never deleted anything or did any other harm. I provide no guarantee, that this script works as expected in your domain. But as I provide the source, you can (and should) have a look at it, before you run it.
Extension attributes are added by Exchange. According to this Technet article something like this should work:
Set-Mailbox -Identity "anyUser" -ExtensionCustomAttribute4 @{Remove="myString"}
Set-ADUser -Identity anyUser -Replace @{extensionAttribute4="myString"}
This is also usefull
Or the -Remove parameter
Set-ADUser -Identity anyUser -Remove @{extensionAttribute4="myString"}
To clear the value you can always reset it to $Null. For example:
Set-Mailbox -Identity "username" -CustomAttribute1 $Null