Assegnare le licenze agli account utente con Office 365 PowerShellAssign licenses to user accounts with Office 365 PowerShell

Riepilogo: Informazioni su come utilizzare Office 365 PowerShell per assegnare una licenza di Office 365 a utenti senza licenza.Summary: How to use Office 365 PowerShell to assign an Office 365 license to unlicensed users.

Gli utenti non possono utilizzare i servizi di Office 365 finché all'account non è stata assegnata una licenza da un piano di gestione delle licenze.Users can't use any Office 365 services until their account has been assigned a license from a licensing plan. È possibile utilizzare Office 365 PowerShell per assegnare rapidamente le licenze agli account senza licenza.You can use Office 365 PowerShell to quickly assign licenses to unlicensed accounts.

Nota

Gli account utente devono essere assegnati a un percorso.User accounts must be assigned a location. È possibile eseguire questa operazione dalle proprietà di un account utente nell'interfaccia di amministrazione di Microsoft 365 o da PowerShell.You can do this from the properties of a user account in the Microsoft 365 admin center or from PowerShell.

Usare il modulo di Azure Active Directory PowerShell per GraphUse the Azure Active Directory PowerShell for Graph module

Prima di tutto, connettersi al tenant di Office 365.First, connect to your Office 365 tenant.

Successivamente, elencare i piani di licenza per il tenant con questo comando.Next, list the license plans for your tenant with this command.

Get-AzureADSubscribedSku | Select SkuPartNumber

Successivamente, ottenere il nome di accesso dell'account a cui si desidera aggiungere una licenza, noto anche come nome dell'entità utente (UPN).Next, get the sign-in name of the account to which you want add a license, also known as the user principal name (UPN).

Successivamente, verificare che l'account utente disponga di una posizione di utilizzo assegnata.Next, ensure that the user account has a usage location assigned.

Get-AzureADUser -ObjectID <user sign-in name (UPN)> | Select DisplayName, UsageLocation

Se non è stata assegnata alcuna posizione di utilizzo, è possibile assegnarne una con questi comandi:If there is no usage location assigned, you can assign one with these commands:

$userUPN="<user sign-in name (UPN)>"
$userLoc="<ISO 3166-1 alpha-2 country code>"
Set-AzureADUser -ObjectID $userUPN -UsageLocation $userLoc

Infine, specificare il nome di accesso dell'utente e il nome del piano di licenza ed eseguire questi comandi.Finally, specify the user sign-in name and license plan name and run these commands.

$userUPN="<user sign-in name (UPN)>"
$planName="<license plan name from the list of license plans>"
$License = New-Object -TypeName Microsoft.Open.AzureAD.Model.AssignedLicense
$License.SkuId = (Get-AzureADSubscribedSku | Where-Object -Property SkuPartNumber -Value $planName -EQ).SkuID
$LicensesToAssign = New-Object -TypeName Microsoft.Open.AzureAD.Model.AssignedLicenses
$LicensesToAssign.AddLicenses = $License
Set-AzureADUserLicense -ObjectId $userUPN -AssignedLicenses $LicensesToAssign

Usare il modulo di Microsoft Azure Active Directory per Windows PowerShellUse the Microsoft Azure Active Directory Module for Windows PowerShell

Prima di tutto, connettersi al tenant di Office 365.First, connect to your Office 365 tenant.

Eseguire il comando Get-MsolAccountSku per visualizzare i piani di gestione delle licenze disponibili e il numero di licenze disponibili in ogni piano dell'organizzazione.Run the Get-MsolAccountSku command to view the available licensing plans and the number of available licenses in each plan in your organization. Il numero di licenze disponibili in ogni piano è ActiveUnits - WarningUnits - ConsumedUnits.The number of available licenses in each plan is ActiveUnits - WarningUnits - ConsumedUnits. Per ulteriori informazioni sui piani di licenza, le licenze e i servizi, vedere View licences and Services with Office 365 PowerShell.For more information about licensing plans, licenses, and services, see View licenses and services with Office 365 PowerShell.

Per trovare gli account senza licenza nell'organizzazione, eseguire questo comando.To find the unlicensed accounts in your organization, run this command.

Get-MsolUser -All -UnlicensedUsersOnly

È possibile assegnare licenze solo agli account utente con la proprietà UsageLocation impostata su un codice paese ISO 3166-1 Alpha-2 valido.You can only assign licenses to user accounts that have the UsageLocation property set to a valid ISO 3166-1 alpha-2 country code. Ad esempio, US per gli Stati Uniti e FR per la Francia.For example, US for the United States, and FR for France. Alcuni servizi di Office 365 non sono disponibili in alcuni paesi.Some Office 365 services aren't available in certain countries. Per ulteriori informazioni, vedere informazioni sulle restrizioni di licenza.For more information, see About license restrictions.

Per trovare account che non dispongono di un valore UsageLocation , eseguire il comando seguente.To find accounts that don't have a UsageLocation value, run this command.

Get-MsolUser -All | where {$_.UsageLocation -eq $null}

Per impostare il valore UsageLocation su un account, eseguire questo comando.To set the UsageLocation value on an account, run this command.

Set-MsolUser -UserPrincipalName "<Account>" -UsageLocation <CountryCode>

Ad esempio:For example:

Set-MsolUser -UserPrincipalName "belindan@litwareinc.com" -UsageLocation US

Se si usa il cmdlet Get-MsolUser senza utilizzare il parametro -All, vengono restituiti solo i primi 500 account.If you use the Get-MsolUser cmdlet without using the -All parameter, only the first 500 accounts are returned.

Assegnazione di licenze agli account utenteAssigning licenses to user accounts

Per assegnare una licenza a un utente, utilizzare il seguente comando in Office 365 PowerShell.To assign a license to a user, use the following command in Office 365 PowerShell.

Set-MsolUserLicense -UserPrincipalName "<Account>" -AddLicenses "<AccountSkuId>"

In questo esempio viene assegnata una licenza dal piano di gestione delle licenze litwareinc: ENTERPRISEPACK (Office 365 Enterprise E3) all'utente senza licenza **Belindan@litwareinc.com**:This example assigns a license from the litwareinc:ENTERPRISEPACK (Office 365 Enterprise E3) licensing plan to the unlicensed user **belindan@litwareinc.com**:

Set-MsolUserLicense -UserPrincipalName "belindan@litwareinc.com" -AddLicenses "litwareinc:ENTERPRISEPACK"

Per assegnare una licenza a molti utenti senza licenza, eseguire questo comando.To assign a license to many unlicensed users, run this command.

Get-MsolUser -All -UnlicensedUsersOnly [<FilterableAttributes>] | Set-MsolUserLicense -AddLicenses "<AccountSkuId>"

Nota

Non è possibile assegnare più licenze a un utente dallo stesso piano di gestione delle licenze.You can't assign multiple licenses to a user from the same licensing plan. Se non si dispone di una quantità sufficiente di licenze disponibili, le licenze vengono assegnate agli utenti nell'ordine in cui vengono restituiti dal cmdlet Get-MsolUser finché non vengono esaurite le licenze disponibili.If you don't have enough available licenses, the licenses are assigned to users in the order that they're returned by the Get-MsolUser cmdlet until the available licenses run out.

In questo esempio vengono assegnate le licenze dal piano di gestione delle licenze litwareinc: ENTERPRISEPACK (Office 365 Enterprise E3) a tutti gli utenti senza licenza:This example assigns licenses from the litwareinc:ENTERPRISEPACK (Office 365 Enterprise E3) licensing plan to all unlicensed users:

Get-MsolUser -All -UnlicensedUsersOnly | Set-MsolUserLicense -AddLicenses "litwareinc:ENTERPRISEPACK"

In questo esempio vengono assegnate le stesse licenze agli utenti senza licenza del reparto vendite negli Stati Uniti:This example assigns those same licenses to unlicensed users in the Sales department in the United States:

Get-MsolUser -All -Department "Sales" -UsageLocation "US" -UnlicensedUsersOnly | Set-MsolUserLicense -AddLicenses "litwareinc:ENTERPRISEPACK"

Nuovo utente di Office 365?New to Office 365?

Suggerimento

Logo LinkedIn Nuovi utenti di Office 365LinkedIn logo New to Office 365?

Sono disponibili esercitazioni video gratuite per amministratori di Office 365 e tecnici IT grazie a LinkedIn Learning.Discover free video courses for Office 365 admins and IT pros, brought to you by LinkedIn Learning.

Vedere ancheSee also

Gestire gli account utente e le licenze con Office 365 PowerShellManage user accounts and licenses with Office 365 PowerShell

Gestire Office 365 con PowerShell di Office 365Manage Office 365 with Office 365 PowerShell

Guida introduttiva a PowerShell di Office 365Getting started with Office 365 PowerShell