所以要彻底,如果您要这样做,有多个地方可以清除移动设备。在 Active Directory 中建立合作伙伴关系。
Get-MobileDevice -Mailbox UserID | ft FriendlyName,DeviceAccessState,DeviceAccessStateReason,DeviceId
您可以将其通过管道传输到 FL 以获取更多详细信息,但这是一个好的开始。注意设备状态和设备状态原因:
-
Blocked - Individual = 设备 ID 已放置在用户的 ActiveSyncBlockedDeviceID 上(通过 PowerShell 或使用 PowerShell 的 MDM)
-
Allowed - Individual = 设备 ID 已放在用户的 ActiveSyncAllowedDeviceIDs 上
还有其他组合,但这两种很常见。
您还应该检查您的全局配置。
Get-ActiveSyncOrganizationSettings
与此对话有关的一些设置是DefaultAccessLevel 和DeviceFiltering。
现在,如果您要清除 ActiveSyncAllowedDeviceIDs,清除 ActiveSyncBlockedDeviceIDs 也可能很有用。如果您在导入后两个属性中都有设备 ID,则会导致冲突并可能产生调用。
要清除您环境中的所有设备 ID - 这意味着 全部 - 您无需指定邮箱:
get-casmailbox | set-casmailbox -ActiveSyncAllowedDeviceIDs $null -ActiveSyncBlockedDeviceIDs $null
但是,您可能需要将某些 ID 保留在个人黑名单中,例如被盗电话或类似的东西。您的来电。
您问题的下一部分需要源文件。
获取您的用户列表并将他们的PrimarySMTPAddress 和设备 ID 放入文件中。我没有对此进行测试,但我假设,如果用户有多个设备,则此逻辑中的每个配对都需要单独的一行。可能还有其他方法可以做到这一点。
- 文件名 = Users.CSV
- 标题行 = 电子邮件、设备
- 数据格式 = user@domain.com,deviceID
将其保存到已知位置(例如 C:\temp\Users.CSV)并将其导入脚本中的变量中。
$users = Import-Csv -Path .\Users.csv
验证变量中的日期(我这样做是为了一直避免语法错误);您想要进行 3 次快速检查:一项针对所有对象,一项仅针对电子邮件地址,一项仅针对设备。
$users
$users.email
$users.Device
接下来,我们循环遍历列表以将设备 ID 添加到 AllowedDeviceIDs 属性。
Foreach ($User in $Users) {Set-CASMailbox -Identity $User.Email -activeSyncAllowedDeviceIDs @{add=$user.Device}}
最后一句话,先用一小部分试点用户进行测试。