Set-MsolUserLicense
Updates the license assignment for a user.
Note
The Set-MsolUserLicense cmdlet is deprecated. Learn how to assign licenses with Microsoft Graph PowerShell. For more info, see the Assign License Microsoft Graph API.
Syntax
Set-MsolUserLicense
-ObjectId <Guid>
[-LicenseOptions <LicenseOption[]>]
[-AddLicenses <String[]>]
[-RemoveLicenses <String[]>]
[-TenantId <Guid>]
[<CommonParameters>]
Set-MsolUserLicense
[-LicenseOptions <LicenseOption[]>]
-UserPrincipalName <String>
[-AddLicenses <String[]>]
[-RemoveLicenses <String[]>]
[-TenantId <Guid>]
[<CommonParameters>]
Description
The Set-MsolUserLicense cmdlet updates the license assignment for a user. This can include adding a new license, removing a license, updating the license options, or any combination of these actions.
Examples
Example 1: Add a license to a user
PS C:\> Set-MsolUserLicense -UserPrincipalName "davidchew@contoso.com" -AddLicenses "Contoso:ENTERPRISEPACK"
This command adds the Office 365 for Enterprises license to the user.
Example 2: Remove a license from a user
PS C:\> Set-MsolUserLicense -UserPrincipalName "davidchew@contoso.com" -RemoveLicenses "contoso:ENTERPRISEPACK"
This command removes the Office 365 for Enterprises license from the user. This may result in the user's data being removed from each service.
Example 3: Replace one license with another
PS C:\> Set-MsolUserLicense -UserPrincipalName "davidchew@contoso.com" -AddLicenses "contoso:DESKLESS" -RemoveLicenses "contoso:ENTERPRISEPACK"
This command replaces the Office 365 for Enterprises license with an Office 365 Deskless license. These changes are made in one single operation. Therefore, the user does not end up in an intermediate state where the Office 365 for Enterprises license is removed without Office 365 Deskless being added.
Parameters
-AddLicenses
Specifies an array of licenses to assign to the user.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-LicenseOptions
Specifies an array of license- or SKU-specific settings. Used to disable individual services when assigning a license.
Type: | LicenseOption[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ObjectId
Specifies the unique object ID of the user for which to update licenses.
Type: | Guid |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-RemoveLicenses
Specifies an array of licenses to remove from the user.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-TenantId
Specifies the unique ID of the tenant on which to perform the operation. The default value is the tenant of the current user. This parameter applies only to partner users.
Type: | Guid |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-UserPrincipalName
Specifies the user principal name of the user to update.
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |