首页 > 解决方案 > 从 MSOL 组中删除用户

问题描述

我正在尝试从公司内的 MSOL 组中删除所有禁用用户。大约有 50 个用户,我已经从所有 DL 和共享邮箱中删除了他们,但我仍然需要将他们从 MSOL 组中删除。我写了一些相当简单的东西来做到这一点;

$import = Import-Csv "C:\Users\Person\Desktop\DisabledMSOL.csv"

foreach($user in $import) {

$DisabledUserParams = @{

PersonID = $user.GroupID
ObjectId = $user.ObjectId
}

Remove-MsolGroupMember -GroupObjectId $DisabledUserParams.ObjectId -GroupMemberType User -GroupmemberObjectId $DisabledUserParams.PersonID}

问题是当我运行它时,它给出了这个错误:

Remove-MsolGroupMember : Cannot bind parameter 'GroupMemberObjectId'. Cannot convert value "" to type "System.Guid"
Error: "Unrecognized Guid format."
At line:11 char:111
+ ... oupMemberType User -GroupmemberObjectId $DisabledUserParams.PersonID}
+                                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : InvalidArgument: (:) [Remove-MsolGroupMember], 
ParameterBindingException
+ FullyQualifiedErrorId :CannotConvertArgumentNoMessage,Microsoft.Online.Administration.Automation.RemoveGroupMember

请让我知道你的想法。

*另外,你如何在这个网站上制作黄色轮廓?我从来没有真正知道如何做到这一点。

谢谢你。

标签: powershell

解决方案


如果您在 csv 文件中有大约 50 条记录,并且在尝试运行脚本时遇到大约 50 个错误,我会仔细检查这些列/属性名称

如果您尝试访问不存在的属性,Powershell 将静默继续。

在此处输入图像描述

如果您获得部分成功(某些记录有效,其他记录无效),我会检查 csv 中的值是否存在故障。你可能认为你有一个ObjectId但可能没有。

最后,检查您的分隔符。如果 csv 文件是制表符或管道分隔的,则需要在Import-Csv调用中指定该分隔符。

祝你好运!


推荐阅读