Ola pessoal! vejo muitos administradores com acesso ao Office 365 mas possuindo apenas a versão basico do Azure Active Directory, o que isso significa? muito trabalho! principalmente para poder licenciar os usuários!
O Azure Basico (gratuito) não possui grupos dinamicos, ou seja, você não consegue licenciar usuários por grupos, isso pode ser um problema! neste caso, podemos licenciar os usuários por powershell!
- Exibir as licenças
Get-AzureADSubscribedSku | Select -Property Sku*,ConsumedUnits -ExpandProperty PrepaidUnits
Os resultados contêm:
- SkuPartNumber: Mostra os planos de licenciamento disponíveis para sua organização. Por exemplo,
ENTERPRISEPACK
é o nome do plano de licença para o Office 365 Enterprise E3. - Habilitado: Número de licenças que você comprou para um plano de licenciamento específico.
- ConsumedUnits: número de licenças que você atribuiu aos usuários de um plano de licenciamento específico.
2. Você precisa do SkuPartNumber para exibir as licenças
Get-AzureADSubscribedSku | Select SkuPartNumber
Neste exemplo eu usei algumas variaveis:
AccountSkuId: Recebe o plano de licenciamento
X: Recebe o que vai ser licenciado para os usuários, nesta variável se os usuáros não forem receber o Exchange Online eu posso colocar o parametro -DisabledPlans EXCHANGE_S_STANDARD, ou outra feature! neste exemplo os usuários receberão todo licenciamento
3. Execução dos Scripts
$AccountSkuId = “chesley:STANDARDPACK”
$x= New-MsolLicenseOptions -AccountSkuId chesley:STANDARDPACK
// Aqui eu aplico o MsolUser para que todos os usuários recebam o Plano de licenciamento vigente.
get-MsolUser | ForEach-Object {Set-MsolUserLicense -UserPrincipalName $_.UserPrincipalName -AddLicenses $AccountSkuId }
// Aqui eu Aplico nos usuários as features definidas na variavel X com o opção LicenseOptions
get-MsolUser | ForEach-Object {Set-MsolUserLicense -UserPrincipalName $_.UserPrincipalName -LicenseOptions $x }
//dependendo da quantidade de usuários você vai precisar utilizar o parametro -MaxResults
Get-MsolUser -MaxResults 4000 | ForEach-Object {Set-MsolUserLicense -UserPrincipalName $_.UserPrincipalName -LicenseOptions $x }
Você também pode utilizar uma lista .CSV!
Basta declarar uma variavel e importar a lista CSV, como no exemplo: $Users = Import-Csv c:\Temp\Users.csv
Depois disso, onde tiver Get-Msoluser você substitui pela variavel criada acima, a lista CSV precisa ter o UPN completo do usuário