使用PowerShell deprovision O365 资源
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用PowerShell deprovision O365 资源相关的知识,希望对你有一定的参考价值。
再来分享一些自己写的小脚本哈,有些时候经常会需要使用自己的O365的账号做一些测试,为了能让测试的环境更真实,更贴近生产环境,很多时候我会用脚本去创建一些用户,然后生成一些邮件,日历或者是其他的数据,测试完成后这些用户和数据都是需要处理掉的,如果不把使用了自定义域的用户和组等都删掉,那么域名就没办法清除掉,手动删除这些数据当然是可以的,但是为了方便起见,其实可以用一些脚本直接将O365里的用户和组全部清除掉。自己写个简单的脚本就可以完成了,当然对于Global admin来说,这个当然不能随便删了
以下是脚本的内容,运行之前需要先安装MS Online Module
try { $Error.clear() Write-Host "$(Get-Date) * Deprovision users.." $Users = Get-MsolUser -All -ErrorAction Stop $Users | %{ $Role = Get-MsolUserRole -UserPrincipalName $_.UserPrincipalName #排除Global Admin if (($Role -eq $null) -or ($Role.ObjectId -ne "62e90394-69f5-4237-9190-012177145e10")) { Remove-MsolUser -UserPrincipalName $_.UserPrincipalName -Force -ErrorAction Stop Write-Host "$(Get-Date) * $($_.UserPrincipalName) removed.." } } Start-Sleep 1 #从回收站删除用户 Get-MsolUser -ReturnDeletedUsers -ErrorAction Stop | Remove-MsolUser -RemoveFromRecycleBin -Force -ErrorAction Stop Write-Host "$(Get-Date) * Done. Users already deleted" Start-Sleep 1 Write-Host "$(Get-Date) * Deprovision Groups.." Get-MsolGroup -ErrorAction Stop | Remove-MsolGroup -Force -ErrorAction Stop Write-Host "$(Get-Date) * Done. Groups already deleted" } catch { Write-Warning $Error[0].Exception.Message }
脚本相当简单,基本上都能看懂,对于实验环境来说,还是比较好用的。当然如果说有一些exchange online里的联系人或者其他数据,想要自动清除掉,还需要使用exchange online的module,这个就不一一介绍了
以上是关于使用PowerShell deprovision O365 资源的主要内容,如果未能解决你的问题,请参考以下文章
powershell PowerShell使用PowerShell创建本地管理员帐户
windows powershell 怎么使用啊,是干啥用的