zettelkasten/OneNoteExport/Kommunikationstechnologie/EXchange-Scripte/12_EAS ActiveSync Report.md
Ralf Koop 5a108aa2b4 .
2023-08-25 23:29:11 +02:00

6.4 KiB

EAS ActiveSync Report

Mittwoch, 23. September 2015

12:10

 

 

 

Gibt alle registrieten AS Devices plus User Aus

In PS1 speichern und ausführen

 

$EASDevices = ""

$AllEASDevices = @()

 

$EASDevices = ""| select 'User','PrimarySMTPAddress','LastSyncAttemptTime','LastSuccessSync','FriendlyName','DeviceId','DeviceImei','DeviceMobileOperator','DeviceOS','DeviceOSLanguage','DeviceTelephoneNumber','DeviceType','DeviceUserAgent','DeviceModel','FirstSyncTime','UserDisplayName','DeviceAccessState','DeviceAccessStateReason','DeviceAccessControlRule','DeviceActiveSyncVersion'

 

$EasMailboxes = Get-Mailbox -ResultSize unlimited

foreach ($EASUser in $EasMailboxes) {

$EASDevices.user = $EASUser.displayname

$EASDevices.PrimarySMTPAddress = $EASUser.PrimarySMTPAddress.tostring()

foreach ($EASUserDevices in Get-ActiveSyncDevice -Mailbox $EasUser.alias) {

$EASDeviceStatistics = $EASUserDevices | Get-ActiveSyncDeviceStatistics

        $EASDevices.devicetype = $EASUserDevices.devicetype

        $EASDevices.devicemodel = $EASUserDevices.devicemodel

$EASDevices.DeviceOSLanguage = $EASDeviceStatistics.DeviceOSLanguage

$EASDevices.DeviceTelephoneNumber = $EASDeviceStatistics.DeviceTelephoneNumber

$EASDevices.FriendlyName = $EASDeviceStatistics.FriendlyName

$EASDevices.DeviceId = $EASDeviceStatistics.DeviceId

$EASDevices.DeviceImei = $EASDeviceStatistics.DeviceImei

$EASDevices.DeviceMobileOperator = $EASDeviceStatistics.DeviceMobileOperator

$EASDevices.DeviceOS = $EASDeviceStatistics.DeviceOS

$EASDevices.DeviceOSLanguage = $EASDeviceStatistics.DeviceOSLanguage

$EASDevices.DeviceType = $EASDeviceStatistics.DeviceType

$EASDevices.DeviceUserAgent = $EASDeviceStatistics.DeviceUserAgent

$EASDevices.DeviceModel = $EASDeviceStatistics.DeviceModel

$EASDevices.FirstSyncTime = $EASDeviceStatistics.FirstSyncTime

$EASDevices.UserDisplayName = $EASDeviceStatistics.UserDisplayName

$EASDevices.DeviceAccessState = $EASDeviceStatistics.DeviceAccessState

$EASDevices.DeviceAccessStateReason = $EASDeviceStatistics.DeviceAccessStateReason

$EASDevices.DeviceAccessControlRule = $EASDeviceStatistics.DeviceAccessControlRule

$EASDevices.DeviceActiveSyncVersion = $EASDeviceStatistics.DeviceActiveSyncVersion

$EASDevices.lastsyncattempttime = $EASDeviceStatistics.lastsyncattempttime

$EASDevices.lastsuccesssync = $EASDeviceStatistics.lastsuccesssync

$AllEASDevices += $EASDevices | select user,primarysmtpaddress,LastSyncAttemptTime,LastSuccessSync,FriendlyName,DeviceId,DeviceImei,DeviceMobileOperator,DeviceOS,DeviceOSLanguage,DeviceTelephoneNumber,DeviceType,DeviceUserAgent,DeviceModel,FirstSyncTime,UserDisplayName,DeviceAccessState,DeviceAccessStateReason,DeviceAccessControlRule,DeviceActiveSyncVersion

}

}

$AllEASDevices = $AllEASDevices | sort user

$AllEASDevices | Export-Csv c:\temp\ActiveSyncReport.csv

 

 

Noch einmal das selbe Script nur mit der Einschränkung das nur Devices mit Lastsyncstatus < 30 Tage ausgegeben werden:

$EASDevices = ""

$AllEASDevices = @()

 

$EASDevices = ""| select 'User','PrimarySMTPAddress','LastSyncAttemptTime','LastSuccessSync','FriendlyName','DeviceId','DeviceImei','DeviceMobileOperator','DeviceOS','DeviceOSLanguage','DeviceTelephoneNumber','DeviceType','DeviceUserAgent','DeviceModel','FirstSyncTime','UserDisplayName','DeviceAccessState','DeviceAccessStateReason','DeviceAccessControlRule','DeviceActiveSyncVersion'

 

$EasMailboxes = Get-Mailbox -ResultSize unlimited

foreach ($EASUser in $EasMailboxes) {

$EASDevices.user = $EASUser.displayname

$EASDevices.PrimarySMTPAddress = $EASUser.PrimarySMTPAddress.tostring()

foreach ($EASUserDevices in Get-ActiveSyncDevice -Mailbox $EasUser.alias) {

 

$EASDeviceStatistics = $EASUserDevices | Get-ActiveSyncDeviceStatistics

$EASDevices.devicetype = $EASUserDevices.devicetype

$EASDevices.devicemodel = $EASUserDevices.devicemodel

$EASDevices.DeviceOSLanguage = $EASDeviceStatistics.DeviceOSLanguage

$EASDevices.DeviceTelephoneNumber = $EASDeviceStatistics.DeviceTelephoneNumber

$EASDevices.FriendlyName = $EASDeviceStatistics.FriendlyName

$EASDevices.DeviceId = $EASDeviceStatistics.DeviceId

$EASDevices.DeviceImei = $EASDeviceStatistics.DeviceImei

$EASDevices.DeviceMobileOperator = $EASDeviceStatistics.DeviceMobileOperator

$EASDevices.DeviceOS = $EASDeviceStatistics.DeviceOS

$EASDevices.DeviceOSLanguage = $EASDeviceStatistics.DeviceOSLanguage

$EASDevices.DeviceType = $EASDeviceStatistics.DeviceType

$EASDevices.DeviceUserAgent = $EASDeviceStatistics.DeviceUserAgent

$EASDevices.DeviceModel = $EASDeviceStatistics.DeviceModel

$EASDevices.FirstSyncTime = $EASDeviceStatistics.FirstSyncTime

$EASDevices.UserDisplayName = $EASDeviceStatistics.UserDisplayName

$EASDevices.DeviceAccessState = $EASDeviceStatistics.DeviceAccessState

$EASDevices.DeviceAccessStateReason = $EASDeviceStatistics.DeviceAccessStateReason

$EASDevices.DeviceAccessControlRule = $EASDeviceStatistics.DeviceAccessControlRule

$EASDevices.DeviceActiveSyncVersion = $EASDeviceStatistics.DeviceActiveSyncVersion

$EASDevices.lastsyncattempttime = $EASDeviceStatistics.lastsyncattempttime

$EASDevices.lastsuccesssync = $EASDeviceStatistics.lastsuccesssync

$AllEASDevices += $EASDevices | select user,primarysmtpaddress,LastSyncAttemptTime,LastSuccessSync,FriendlyName,DeviceId,DeviceImei,DeviceMobileOperator,DeviceOS,DeviceOSLanguage,DeviceTelephoneNumber,DeviceType,DeviceUserAgent,DeviceModel,FirstSyncTime,UserDisplayName,DeviceAccessState,DeviceAccessStateReason,DeviceAccessControlRule,DeviceActiveSyncVersion

}

}

$ActualDevices=@()

foreach($A in $AllEasDevices){

$ActualDevices += $A| select user,primarysmtpaddress,LastSyncAttemptTime,LastSuccessSync,FriendlyName,DeviceId,DeviceImei,DeviceMobileOperator,DeviceOS,DeviceOSLanguage,DeviceTelephoneNumber,DeviceType,DeviceUserAgent,DeviceModel,FirstSyncTime,UserDisplayName,DeviceAccessState,DeviceAccessStateReason,DeviceAccessControlRule,DeviceActiveSyncVersion| where{$A.LastSuccessSync -ge (Get-Date).AddDays(-30)}

}

$ActualDevices=$ActualDevices |sort user

$ActualDevices|Export-Csv c:\temp\ActiveSyncReport.csv