标签:处理 bsp 需要 change 资源 数据 实验 账号 from
再来分享一些自己写的小脚本哈,有些时候经常会需要使用自己的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 资源
标签:处理 bsp 需要 change 资源 数据 实验 账号 from
原文地址:http://blog.51cto.com/mxyit/2070220