powershell - 通过 Azure AD v2 powershell 删除多个许可证

标签 powershell azure

我想使用 PowerShell 删除多个许可证。实际上我可以像下面这样删除单个许可证。但是如何删除多个许可证?

$AzureUser = Get-AzureAdUser -ObjectId $ADuser.UserPrincipalName

$License = New-Object -TypeName Microsoft.Open.AzureAD.Model.AssignedLicense

$License.SkuId = "6fd2c87f-b296-42f0-b197-1e91e994b900"   #6fd2c87f-b296-42f0-b197-1e91e994b900 Office 365 E3

$LicensesToAssign = New-Object -TypeName Microsoft.Open.AzureAD.Model.AssignedLicenses

$LicensesToAssign.AddLicenses = @()
$LicensesToAssign.RemoveLicenses = $License.SkuId

Set-AzureADUserLicense -ObjectId $AzureUser.ObjectId -AssignedLicenses $LicensesToAssign

最佳答案

But How do I remove multiple licenses?

有一个简单的方法可以实现这一点,我们可以使用 MSOL powershell (Azure AD v1) 来实现:

我们可以使用此脚本列出分配给该帐户的所有许可证:

$UPN = <a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="462c273529283223353277063223252e7777767e6825292b" rel="noreferrer noopener nofollow">[email protected]</a>
$a = Get-MsolUser -UserPrincipalName $UPN
$c = $a.Licenses.accountskuid

然后我们可以使用foreach删除所有许可证:

foreach ( $d in $c ){ Set-MsolUserLicense -UserPrincipalName $UPN -RemoveLicenses $d }

这里是-RemoveLicenses的信息,请引用这个link .

顺便说一句,如果您想在PC上安装MSOL powershell,我们可以使用以下命令来安装它:install-module msonline

<小时/>

更新:

我们可以使用此脚本从一个帐户(Azure AD PowerShell V2)中删除许可证。

$a = get-azureaduser -ObjectId "4xxxxxxx0"
$skuids = $a.AssignedLicenses.skuid
$License = New-Object -TypeName Microsoft.Open.AzureAD.Model.AssignedLicense
$LicensesToAssign = New-Object -TypeName Microsoft.Open.AzureAD.Model.AssignedLicenses
$LicensesToAssign.AddLicenses = @()
foreach($skuid in $skuids){$License.SkuId = $skuid; $LicensesToAssign.RemoveLicenses = $License.SkuId; Set-AzureADUserLicense -ObjectId "user-object-id" -AssignedLicenses $LicensesToAssign}

关于powershell - 通过 Azure AD v2 powershell 删除多个许可证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46844460/

相关文章:

c# - 邮件在创建后过早启用 AD 帐户

windows - Azure 通过 XML 文件实现的可扩展性

sql - AWS Schema Conversion Tool可以连接到Azure吗

azure - 是否可以在保持 Azure 虚拟机完好无损的情况下降级高级存储订阅?

c# - 异步任务如何有条件返回

azure - 应用程序和用户的 AAD AppRoles allowedMemberTypes

powershell - 列出所有源安全链接文件的工具

powershell - 在PowerShell中按名称设置嵌套对象属性的值

powershell - 导出在列中找到重复值的csv行

windows - 如何使用 powershell 4.0 set-acl 允许用户在新创建的子目录中具有相同的安全设置?