У меня есть арендатор Office 365 с несколькими планами лицензирования, и я пытаюсь массово отключить определенные функции плана E3 с помощью Powershell.
Вот что у меня есть:
$ENTERPRISEPACK=New-MsolLicenseOptions -AccountSkuId companyname:ENTERPRISEPACK -DisabledPlans "FLOW_0365_P2", "POWERAPPS_0365_P2"
Import-CSV c:\scripts\inputfiles\e3users.csv | foreach-object -process { Set-MsolUserLicense -UserPrincipalName $_.upn -LicenseOptions $ENTERPRISEPACK -Verbose}
Проблема, с которой я сталкиваюсь, заключается в том, что я могу проверить существование пользователей и импортировать CSV как действительный, но я получаю сообщение об ошибке для каждого пользователя в моем CSV:
Set-MsolUserLicense : User Not Found. User: .
Это довольно неприятно, так как я хочу отключить функции только для всех пользователей E3 (которые будут в моем CSV), и эта команда работает, когда вы запускаете ее как:
$ENTERPRISEPACK=New-MsolLicenseOptions -AccountSkuId companyname:ENTERPRISEPACK -DisabledPlans "FLOW_0365_P2", "POWERAPPS_0365_P2"
Set-MsolUserLicense -UserPrincipalName [email protected] -LicenseOptions $ENTERPRISEPACK -Verbose
Как видите, разница здесь в том, что я запускаю его с одним введенным именем пользователя.
Для меня просто имеет смысл, что я смогу передать его ввод и запустить цикл, но я что-то упускаю.
Пожалуйста помоги?