Powershell – Update the companyName attribute for an Azure AD user via PowerShell

azure-active-directoryoffice365powershell

Background

I have an email system (CodeTwo) that creates signatures automatically using AD attributes for users. Many of my users are synchronised between an on-prem AD and Office 365 / AAD, however newer users are cloud only, that is, they are created in the Office 365 admin portal and are not synchronised with an on-prem user.

The problem

I am using the companyName attribute, which is easily set through the properties dialog of the Windows Admin Tool Active Directory Users & Computers. I have setup Azure AD Connect to include this attribute in synchronisation. For my synced users, this setup works as expected – using commands like Get-CsOnleUser and Get-AzureADUser I can see the Company or CompanyName properties are set correctly. For cloud-only users, however, this value is always blank.

I cannot find a way of setting this value – the property is either read-only, or changing the value of the attribute and using Set-CsUser or Set-AzureADUser has no effect.

I noticed that we had some AD Extension properties, in particular one called extension_0000000000000000000000000000000_company – I can set this for the cloud users, but it doesn't seem to affect the object returned from the queries above. Similarly it is not picked up by the signature stamping system.

The question

How does one set the companyName attribute for users in Azure AD / Office 365? Preferably using PowerShell, but open to any options at this stage?

Best Answer

I had the problem and had to ask Microsoft directly. Since February 2019, CompanyName is writable.

Command is

Set-AzureADUserExtension -ObjectId <UPN> -ExtensionName "CompanyName" -ExtensionValue "<VALUE>"

Check my blogpost on the matter for the whole explanation: http://www.yasab.net/azure-ad-update-companyname/

Related Topic