Exchange Online - eDiscovery - Export von Mailboxordnern

- 29.09.2021
von Thomas Windscheif / Microlinc



Exchange Online
Exchange Online Archiv
eDiscovery
Compliance
Export von Mailboxordnern

Man kann - leider etwas umständlich - einzelne Ordner mittels der Compliance-Suche in eine PST-Datei exportieren.
Hierzu muss man allerdings die "FolderId" des Mailboxordners ermitteln und (damit es nicht zu einfach wird ;) ) diese Id nochmals konvertieren. Anschließend kann man im Compliance-Portal eine entsprechende Suche auslösen und die Inhalte exportieren.
Das Verfahren wird auch hier beschrieben: https://docs.microsoft.com/de-de/microsoft-365/compliance/use-content-search-for-targeted-collections?view=o365-worldwide

In meinem Beispiel ging es um Ordner in einem Exchange Online Archive (Hybrid Identität mit OnPremise-Postfach).

Mit dem folgenden Skript erhält man die entsprechend konvertierten FolderIds für die eDiscovery-Suche:
Ich setze voraus, dass das Exchange Online Management Shell V2-Modul auf dem PC installiert ist (siehe https://docs.microsoft.com/en-us/powershell/exchange/connect-to-exchange-online-powershell?view=exchange-ps

Speichern Sie den nachfolgenden Code in eine Textdatei mit dem Namen "Search-MailboxFolderID.ps1"
Param(
$Mailbox,
$FolderName
)
Connect-ExchangeOnline
$SearchFolders = Get-MailboxFolderStatistics "$($Mailbox)" -Archive | ? {$_.FolderPath -match "$($FolderName)"}
#bei einer Suche innerhalb einer Mailbox und nicht dem Archiv wird der Parameter "Archive" entfernt
#$SearchFolders = Get-MailboxFolderStatistics "$($Mailbox)" | ? {$_.FolderPath -match "$($FolderName)"}
Foreach ($SearchFolder in $SearchFolders) {
$folderId = $SearchFolder.FolderId;
$encoding= [System.Text.Encoding]::GetEncoding("us-ascii")
$nibbler= $encoding.GetBytes("0123456789ABCDEF");
$folderIdBytes = [Convert]::FromBase64String($folderId);
$indexIdBytes = New-Object byte[] 48;
$indexIdIdx=0;
$folderIdBytes | select -skip 23 -First 24 | %{$indexIdBytes[$indexIdIdx++]=$nibbler[$_ -shr 4];
$indexIdBytes[$indexIdIdx++]=$nibbler[$_ -band 0xF]}
$folderQuery = "folderid:$($encoding.GetString($indexIdBytes))";
Write-Host "$(($SearchFolder).FolderPath)"
Write-Host "$($folderQuery)"

}


Öffnen Sie eine PowerShell-Sitzung und starten Sie das Skript wie folgt:
.\Search-MailboxFolderID.ps1 -Mailbox "E-Mail-Adresse des zu durchsuchenden Postfachs" -FolderName "Name des zu suchenden Ordners"




Als Rückgabe vom Skript erhalten Sie den gefunden Ordnerpfad und die für die eDiscovery-Suche bereits passend konvertierte FolderId.

Für die eDiscovery-Suche muss man Mitglied der RBAC-Rolle "Discovery Management" sein.
Über die Exchange Online Management Shell kann sich das Recht (als Globaler Administrator) wie folgt verschaffen:

Add-RoleGroupMember "Discovery Management" -User "Ihr Administrator-Account"

Alternativ kann man dies auch über das Exchange Admin Center erreichen:



Zusätzlich benötigt man für den Export-Auftrag noch die Rolle "eDiscovery Manager".
Diese Berechtigung kann man sich im Microsoft 365 Compliance-Portal über "Berechtigungen" zuteilen.












Bis die neuen Rechte greifen, kann es eine Weile dauern. Ein erneutes Anmelden im M365 Admin Center kann auch nicht schaden ;).

Für die eDiscovery-Suche wechselt man im Microsoft 365 Admin Center zu "Microsoft 365 Compliance" und wählt die "Inhaltssuche".



Dort erstellt man einen neuen Suchauftrag via "Neue Suche".

Im Wizard vergibt man einen Namen für die Suche (in diesem Beispiel "MailboxFolderExport").




Im nächsten Schritt definiert man den Suchbereich. Da wir hier lediglich Exchange-Inhalte durchsuchen wollen, wählen wir diesen Suchbereich aus.




Bei den Suchbedingungen trägt man den über das Script ermittelten Suchausdruck ein. (Es lassen sich mittel OR auch mehrere Ordner mit einer Suche ermitteln).




Zuletzt wird nochmal der Suchauftrag zusammengefasst und der Suchauftrag kann ausgelöst werden.




Der Status der Suche kann im Compliance-Center ebenfalls geprüft werden:



Sobald die Suche abschließt kann man die Ergebnisse exportieren.

Hierzu öffnen man den Suchauftrag und wählt und wählt unter "Aktionen" > "Ergebnisse exportieren".




Im nächsten Dialog definiert man die Exportoptionen und wählt dann "Exportieren".



Der Export wird im Reiter "Export" aufgeführt. Sobald die Daten zusammengetragen wurden, kann man den Inhalt herunterladen:



Hierzu benötigt man zunächst den Exportschlüssel. Welchen man weiter unten in den Zwischenspeicher kopieren kann.
Dieser ist notwendig um mittels des Download-Tools Zugriff auf die Daten zu erhalten.



Nun wählt man den Download der Ergebnisse aus:



Je nach Browser (hier Edge Chromium) erscheint eine Warnmeldung beim Download des notwendigen Export-Tools.
Die Warnung muss bestätigt werden.



Im Export-Tool fügt man im ersten Feld den zuvor im Zwischenspeicher kopierten Exportschlüssel ein.
Im zweiten Feld wird der Pfad angegeben in welchem der Download ablegt werden soll.



Nach dem Klick auf "Starten" wird der Download durchgeführt und die PST-Datei in einer Ordnerstruktur im angegeben Pfad abgelegt.
MICROL!NC - URL zum Artikel: http://microlinc.homeip.net/index.php?lev1=25&lev2=30&id=436 - Ausdruck vom 24.04.2024