Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Using the Windows Azure Active Directory Module connect to
Azure AD using the following command.
Connect-MsolService
Enter your tenant credentials. (user@contoso.onmicrosoft.com)
1.Export to CSV all users that are licensed and have a specific UPN domain prefix.
Get-MsolUser -all |where {$_.isLicensed -And $_.UserPrincipalName.ToLower().EndsWith("contoso.com")} | Export-csv userTrue.csv
2.Export to CSV all users that are NOT licensed and have a specific UPN domain prefix.
Get-MsolUser -all |where {!$_.isLicensed -And $_.UserPrincipalName.ToLower().EndsWith("contoso.com")} | Export-csv userFalse.csv
3.Get the Account Skus associated with a tenant (e.g License Pack(s) used to assign a license to a user)
Get-MsolAccountSku | ft accountskuid
Returns
AccountSkuId
------------
Contoso:ENTERPRISEPACK_B_PILOT
4.Report the service names associated with a particular SKU (e,g Exchange, Lync, Sharepoint, Yammer, etc)
$a = get-MsolAccountSku | where{$_.AccountSkuID -eq "Contoso:ENTERPRISEPACK_B_PILOT"}
$a.servicestatus
Returns
ServicePlan
ProvisioningStatus
-----------------------------
RMS_S_ENTERPRISE_B_PILOT Success
OFFICE_PRO_PLUS_SUBSCRIPTION_B_PILOT Success
LYNC_S_ENTERPRISE_B_PILOT Success
SHAREPOINTWAC_B_PILOT Success
SHAREPOINT_S_ENTERPRISE_B_PILOT Success
EXCHANGE_S_ENTERPRISE_B_PILOT Success
5. Assign a License SKU to a particular user.
Set-MSOLUser -UserPrincipalName " user@contoso.com " -UsageLocation GB
Set-MsolUserLicense -UserPrincipalName " user@contoso.com " -AddLicenses Contoso:ENTERPRISEPACK_B_PILOT
6. Assign an element(s) of License SKU to a particular user (e.g Disable Lync).
$DisableComponents = New-MsolLicenseOptions -AccountSkuId Contoso:ENTERPRISEPACK_B_PILOT -DisabledPlans LYNC_S_ENTERPRISE_B_PILOT
Set-MSOLUser -UserPrincipalName " user@contoso.com " -UsageLocation GB
Set-MsolUserLicense -UserPrincipalName " user@contoso.com " -AddLicenses Contoso:ENTERPRISEPACK_B_PILOT -LicenseOptions $DisableComponents
7. Get the SKU Associated to a particular user (i.e. what license pack has been assigned)
$a = Get-MsolUser -UserPrincipalName " user@contoso.com "
$a.licenses.accountskuid
Returns
Contoso:ENTERPRISEPACK_B_PILOT
8.Get the provisioning status of each of the service names for a user. (i.e is Exchange enabled, Lync disabled etc)
$a = Get-MsolUser -UserPrincipalName " user@contoso.com "
$a.licenses.servicestatus
Returns
ServicePlan
ProvisioningStatus
-----------------------------
RMS_S_ENTERPRISE_B_PILOT Success
OFFICE_PRO_PLUS_SUBSCRIPTION_B_PILOT Success
LYNC_S_ENTERPRISE_B_PILOT Disabled
SHAREPOINTWAC_B_PILOT Success
SHAREPOINT_S_ENTERPRISE_B_PILOT Success
EXCHANGE_S_ENTERPRISE_B_PILOT Success
9. Delete a user from the tenant and the recycle bin (managed identities)
Remove-MsolUser -UserPrincipalName “ user@contoso.com ” -Force
Remove-MsolUser -UserPrincipalName “ user@contoso.com ” -RemoveFromRecycleBin
10. Convert the BASE64 GUID from a Azure AD user back to an AD GUID. (Example of usage would be a PS Script to write an attribute to AD for each user in Office365 – AD GUID provides the bind to user in AD)
$a = Get-MsolUser -UserPrincipalName " user@contoso.com "
$GUID = new-Object -TypeName System.Guid -ArgumentList(,( ([System.Convert]::FromBase64String($a.ImmutableId)) ) )
$getAD = Get-ADUser -Identity $GUID
Comments
Anonymous
March 20, 2015
Very useful indeed!!Anonymous
May 05, 2015
Excellent, great, help me a lotAnonymous
May 05, 2015
Glad its of use!Anonymous
June 23, 2017
Useful information.