删除 old/redundant 个 activesync 合作伙伴关系
Remove old/redundant activesync partnerships
我使用脚本获取所有启用了 activesync 的用户并列出所有连接。许多用户有多个条目,他们使用 phone 并在擦除后升级或重新启用。
我希望删除超过 30 天的任何条目,仅针对特定 OU 中的用户或充满用户的文本文件。
我相信此代码将在整个域中通用:
$DevicesToRemove = Get-ActiveSyncDevice -result unlimited | Get-ActiveSyncDeviceStatistics | where {$_.LastSuccessSync -le (Get-Date).AddDays("-30")}
$DevicesToRemove | foreach-object {Remove-ActiveSyncDevice ([string]$_.Guid) -confirm:$false}
但我只想为 OU 或 txt 列表执行此操作。
我可以创建 UPN 或用户名的 .txt 列表,这可能比查找 OU 中的所有用户更容易。我将如何修改该代码(或完全更好的代码?)以删除该 txt 列表的 30 天以上的 activesync 连接?
文本文件选项是更好的目标。
我想我自己回答了,所以为其他人发帖。
“==============================================================”
“Start Mailbox Retrieve”
“==============================================================”
$mbx = get-casmailbox -resultsize unlimited | where {$_.activesyncenabled -eq $true} ;
“==============================================================”
“End Mailbox Retrieve”
“==============================================================”
$mbx | foreach {
“Processing: “+$_.name
$name = $_.name;
$device = get-activesyncdevicestatistics -mailbox $_.identity | where {$_.LastSuccessSync -le (Get-Date).AddDays(“-30”)};
if($device){
{
”
Device: “+$dev.DeviceType
$csvRows += $dev
}
}
}
“==============================================================”
“Start CSV Write”
“==============================================================”
$csvRows | Export-Csv “c:\ps\staledevices.csv” -NoType
“==============================================================”
“End CSV Write”
“==============================================================”
来自 http://techtalklive.org/ttlblog/removing-stale-activesync-devices/
然后删除:
Import-Csv c:\ps\staledevices.csv |foreach {remove-activesyncdevice -identity $_.guid -confirm:$false}
来自 http://techtalklive.org/ttlblog/removing-stale-activesync-devices/
我使用脚本获取所有启用了 activesync 的用户并列出所有连接。许多用户有多个条目,他们使用 phone 并在擦除后升级或重新启用。
我希望删除超过 30 天的任何条目,仅针对特定 OU 中的用户或充满用户的文本文件。
我相信此代码将在整个域中通用:
$DevicesToRemove = Get-ActiveSyncDevice -result unlimited | Get-ActiveSyncDeviceStatistics | where {$_.LastSuccessSync -le (Get-Date).AddDays("-30")}
$DevicesToRemove | foreach-object {Remove-ActiveSyncDevice ([string]$_.Guid) -confirm:$false}
但我只想为 OU 或 txt 列表执行此操作。
我可以创建 UPN 或用户名的 .txt 列表,这可能比查找 OU 中的所有用户更容易。我将如何修改该代码(或完全更好的代码?)以删除该 txt 列表的 30 天以上的 activesync 连接?
文本文件选项是更好的目标。
我想我自己回答了,所以为其他人发帖。
“==============================================================”
“Start Mailbox Retrieve”
“==============================================================”
$mbx = get-casmailbox -resultsize unlimited | where {$_.activesyncenabled -eq $true} ;
“==============================================================”
“End Mailbox Retrieve”
“==============================================================”
$mbx | foreach {
“Processing: “+$_.name
$name = $_.name;
$device = get-activesyncdevicestatistics -mailbox $_.identity | where {$_.LastSuccessSync -le (Get-Date).AddDays(“-30”)};
if($device){
{
”
Device: “+$dev.DeviceType
$csvRows += $dev
}
}
}
“==============================================================”
“Start CSV Write”
“==============================================================”
$csvRows | Export-Csv “c:\ps\staledevices.csv” -NoType
“==============================================================”
“End CSV Write”
“==============================================================”
来自 http://techtalklive.org/ttlblog/removing-stale-activesync-devices/
然后删除:
Import-Csv c:\ps\staledevices.csv |foreach {remove-activesyncdevice -identity $_.guid -confirm:$false}
来自 http://techtalklive.org/ttlblog/removing-stale-activesync-devices/