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?
I had the problem and had to ask Microsoft directly. Since February 2019, CompanyName is writable.
Command is
Check my blogpost on the matter for the whole explanation: http://www.yasab.net/azure-ad-update-companyname/
For now, customer can use Azure AD connect to sync on-prem AD user's attribute
company
to Azure AD, but can't setcompany
for cloud user, the attributecompany
is read only.Here a similar case about you:
As a workaround, you can create users to your on-prem AD, then sync to Azure AD.
About attribute
extension_0000000000000000000000000000000_company
, used for mapping attribute.I was able to get the value set by using the set-user cmdlet
It also populates Get-AzureADUser CompanyName attribute.