Coming soon - Get a detailed view of why an account is flagged as spam!
view details

This post has been de-listed

It is no longer included in search results and normal feeds (front page, hot posts, subreddit posts, etc). It remains visible only via the author's post history.

4
[Veeam 365][PowerShell] CMDLets needs display name and not UPN?!?!?!
Author Summary
Hakkensha is in PowerShell
Post Body

Today I wasted 40 minutes on a script and I am simply frustrated.

Tl;Dr: why do the Veeam 365 PS CMDlets Get-VBOEntityData and Get-VBOLicensedUser need a user's "Display name" and do NOT accept a UPN? Is there a valid technical reason for this? Please document it!

There was some configurational mishap that I discovered today (case 05249403 if you are in to that kind of thing) that if you configure to backup ALL sites (not OneDrives) in an Office 365 org you MUST exclude "personal sites" otherwise it VBO will go out and give a license to anyone with an O365 license. This is due to technical ability of a user to have a "personal site" that is NOT OneDrive (I've never seen such a thing), hence trying to look for a "personal" SP site for a user with an O365 handing them a Veeam license in the process.

The mailbox job (different job) was configured with members of an Office 365 group. This meant that I had to go and compare that member list to what VBO licenses and get the difference. Any user not in the O365 group that is for backups must have their license removed (which involves deleting their data as well).

Hell, I am not doing this manually so Powershell it is. After writing a paranoid script (its data deletion after all) I test it and all looks good. It deleted the repo data for the user and removes the license (whilst logging everything). Then I run it and discover that it barely removed anyone's data and hence license. What I discovered is that the 2 CMDlets that are pre-requisites for data removal (Get-VBOEntityData) and license removal (Get-VBOLicensedUser) accept a "Display name" and not a UPN.

This is annoying. Now I have to go dig a "Display Name" list up from MSOL CMDlets and feed it to my script. That's mildly annoying. What pissed me right off is that this is not CLEARLY DOCUMENTED! The examples say nothing about not accepting UPNs and that is MUST be an actual "Name" (i.e. display name). Waste of 40 minutes trying to figure out why my script is not working...

Is there a technical reason these CMDLets cannot accept UPN? Can the documentation pleas at least specify this?

Author
Account Strength
100%
Account Age
10 years
Verified Email
Yes
Verified Flair
No
Total Karma
11,687
Link Karma
4,837
Comment Karma
6,509
Profile updated: 22 hours ago
Posts updated: 7 months ago

Subreddit

Post Details

Location
We try to extract some basic information from the post title. This is not always successful or accurate, please use your best judgement and compare these values to the post title and body for confirmation.
Posted
2 years ago