Verwenden der Inhaltssuche für gezielte Sammlungen
Hinweis
Microsoft 365 Compliance heißt jetzt Microsoft Purview, und die Lösungen im Compliancebereich wurden umbenannt. Weitere Informationen zu Microsoft Purview finden Sie in der Blogankündigung.
Das Tool für die Inhaltssuche im Microsoft Purview Compliance-Portal bietet keine direkte Möglichkeit in der Benutzeroberfläche, bestimmte Ordner in Exchange Postfächern oder SharePoint und OneDrive for Business Websites zu durchsuchen. Es ist jedoch möglich, bestimmte Ordner (als gezielte Sammlung bezeichnet) zu durchsuchen, indem Sie die Ordner-ID-Eigenschaft für E-Mail oder die Pfadeigenschaft (DocumentLink) für Websites in der tatsächlichen Suchabfragesyntax angeben. Die Verwendung der Inhaltssuche zum Ausführen einer gezielten Sammlung ist nützlich, wenn Sie sicher sind, dass sich Elemente, die auf einen Fall reagieren, oder privilegierte Elemente in einem bestimmten Postfach oder Websiteordner befinden. Sie können das Skript in diesem Artikel verwenden, um die Ordner-ID für Postfachordner oder den Pfad (DocumentLink) für Ordner auf einer SharePoint- und OneDrive for Business-Website abzurufen. Anschließend können Sie die Ordner-ID oder den Pfad in einer Suchabfrage verwenden, um Elemente zurückzugeben, die sich im Ordner befinden.
Hinweis
Um Inhalte zurückzugeben, die sich in einem Ordner in einer SharePoint oder OneDrive for Business Website befinden, verwendet das Skript in diesem Thema die verwaltete DocumentLink-Eigenschaft anstelle der Path-Eigenschaft. Die DocumentLink-Eigenschaft ist robuster als die Path-Eigenschaft, da sie alle Inhalte in einem Ordner zurückgibt, während die Path-Eigenschaft einige Mediendateien nicht zurückgibt.
Vor dem Ausführen einer gezielten Sammlung
Sie müssen Mitglied der Rollengruppe "eDiscovery-Manager" im Complianceportal sein, um das Skript in Schritt 1 ausführen zu können. Weitere Informationen finden Sie unter Zuweisen von eDiscovery-Berechtigungen.
Außerdem muss Ihnen die Rolle "E-Mail-Empfänger" in Ihrer Exchange Online Organisation zugewiesen werden. Dies ist erforderlich, um das Cmdlet "Get-MailboxFolderStatistics " auszuführen, das im Skript enthalten ist. Standardmäßig wird die Rolle "E-Mail-Empfänger" den Rollengruppen "Organisationsverwaltung" und "Empfängerverwaltung" in Exchange Online zugewiesen. Weitere Informationen zum Zuweisen von Berechtigungen in Exchange Online finden Sie unter Verwalten von Rollengruppenmitgliedern. Sie können auch eine benutzerdefinierte Rollengruppe erstellen, ihr die Rolle "E-Mail-Empfänger" zuweisen und dann die Mitglieder hinzufügen, die das Skript in Schritt 1 ausführen müssen. Weitere Informationen finden Sie unter Verwalten von Rollengruppen.
Das Skript in diesem Artikel unterstützt die moderne Authentifizierung. Sie können das Skript wie folgt verwenden, wenn Sie ein Microsoft 365 oder eine Microsoft 365 GCC Organisation sind. Wenn Sie eine Office 365 Deutschland-Organisation, eine Microsoft 365 GCC High-Organisation oder eine Microsoft 365 DoD-Organisation sind, müssen Sie das Skript bearbeiten, um es erfolgreich auszuführen. Insbesondere müssen Sie die Zeile
Connect-ExchangeOnline
bearbeiten und den ExchangeEnvironmentName-Parameter (und den entsprechenden Wert für Ihren Organisationstyp) verwenden, um eine Verbindung mit Exchange Online PowerShell herzustellen. Außerdem müssen Sie die ZeileConnect-IPPSSession
bearbeiten und die Parameter ConnectionUri und AzureADAuthorizationEndpointUri (und die entsprechenden Werte für Ihren Organisationstyp) verwenden, um eine Verbindung mit Security & Compliance Center PowerShell herzustellen. Weitere Informationen finden Sie in den Beispielen in Verbinden zum Exchange Online von PowerShell und Verbinden zu Security & Compliance Center PowerShell.Jedes Mal, wenn Sie das Skript ausführen, wird eine neue Remote-PowerShell-Sitzung erstellt. Dies bedeutet, dass Sie alle remote verfügbaren PowerShell-Sitzungen verwenden können. Um dies zu verhindern, führen Sie den folgenden Befehl aus, um ihre aktiven Remote-PowerShell-Sitzungen zu trennen.
Get-PSSession | Remove-PSSession
Weitere Informationen finden Sie unter Herstellen einer Verbindung mit Exchange Online PowerShell.
Das Skript enthält eine minimale Fehlerbehandlung. Der Hauptzweck des Skripts besteht darin, schnell eine Liste der Postfachordner-IDs oder Websitepfade anzuzeigen, die in der Suchabfragesyntax einer Inhaltssuche verwendet werden können, um eine gezielte Sammlung auszuführen.
Das in diesem Thema bereitgestellte Beispielskript wird unter keinem Microsoft-Standardsupportprogramm oder -dienst unterstützt. Das Beispielskript wird wie besehen ohne jegliche Gewährleistung zur Verfügung gestellt. Microsoft schließt ferner alle konkludenten Gewährleistungen, einschließlich, aber nicht beschränkt auf konkludente Gewährleistungen der Marktgängigkeit oder Eignung für einen bestimmten Zweck aus. Das gesamte Risiko, das mit der Verwendung oder Leistung des Beispielskripts und der Dokumentation einhergeht, liegt bei Ihnen. In keinem Fall sind Microsoft, seine Autoren oder an der Erstellung, Produktion oder Übermittlung der Skripts beteiligte Personen für Schäden jeglicher Art (einschließlich und ohne Einschränkung Schäden durch Verlust entgangener Gewinne, Geschäftsunterbrechungen, Verlust von Geschäftsinformationen oder andere geldliche Verluste) haftbar, die aus der Nutzung bzw. Unfähigkeit zur Nutzung der Beispielskripts oder Dokumentation entstehen, auch wenn Microsoft auf die Möglichkeit solcher Schäden hingewiesen wurde.
Schritt 1: Ausführen des Skripts zum Abrufen einer Liste von Ordnern für ein Postfach oder eine Website
Das Skript, das Sie in diesem ersten Schritt ausführen, gibt eine Liste der Postfachordner oder SharePoint und OneDrive for Business Ordner sowie die entsprechende Ordner-ID oder den entsprechenden Pfad für jeden Ordner zurück. Wenn Sie dieses Skript ausführen, werden Sie zur Eingabe der folgenden Informationen aufgefordert.
E-Mail-Adresse oder Website-URL: Geben Sie eine E-Mail-Adresse des Verwahrers ein, um eine Liste mit Exchange Postfachordnern und Ordner-IDs zurückzugeben. Oder geben Sie die URL für eine SharePoint Website oder eine OneDrive for Business Website ein, um eine Liste der Pfade für die angegebene Website zurückzugeben. Hier sind einige Beispiele:
Exchange:
stacig@contoso.onmicrosoft.com
SharePoint:
https://contoso.sharepoint.com/sites/marketing
OneDrive for Business:
https://contoso-my.sharepoint.com/personal/stacig_contoso_onmicrosoft_com
Ihre Benutzeranmeldeinformationen: Das Skript verwendet Ihre Anmeldeinformationen, um mithilfe der modernen Authentifizierung eine Verbindung mit Exchange Online PowerShell oder Security & Compliance Center PowerShell herzustellen. Wie zuvor erläutert, müssen Ihnen die entsprechenden Berechtigungen zugewiesen werden, um dieses Skript erfolgreich ausführen zu können.
So zeigen Sie eine Liste von Postfachordnern oder Websitedokumentlinknamen (Pfadnamen) an:
Speichern Sie den folgenden Text in einer Windows PowerShell Skriptdatei, indem Sie das Dateinamensuffix .ps1 verwenden,
GetFolderSearchParameters.ps1
z. B. .######################################################################################################### # This PowerShell script will prompt you for: # # * Admin credentials for a user who can run the Get-MailboxFolderStatistics cmdlet in Exchange # # Online and who is an eDiscovery Manager in the compliance portal. # # The script will then: # # * If an email address is supplied: list the folders for the target mailbox. # # * If a SharePoint or OneDrive for Business site is supplied: list the documentlinks (folder paths) # # * for the site. # # * In both cases, the script supplies the correct search properties (folderid: or documentlink:) # # appended to the folder ID or documentlink to use in a Content Search. # # Notes: # # * For SharePoint and OneDrive for Business, the paths are searched recursively; this means the # # the current folder and all sub-folders are searched. # # * For Exchange, only the specified folder will be searched; this means sub-folders in the folder # # will not be searched. To search sub-folders, you need to use the specify the folder ID for # # each sub-folder that you want to search. # # * For Exchange, only folders in the user's primary mailbox will be returned by the script. # ######################################################################################################### # Collect the target email address or SharePoint Url $addressOrSite = Read-Host "Enter an email address or a URL for a SharePoint or OneDrive for Business site" # Authenticate with Exchange Online and the compliance portal (Exchange Online Protection - EOP) if ($addressOrSite.IndexOf("@") -ige 0) { # List the folder Ids for the target mailbox $emailAddress = $addressOrSite # Connect to Exchange Online PowerShell if (!$ExoSession) { Import-Module ExchangeOnlineManagement Connect-ExchangeOnline -ShowBanner:$false -CommandName Get-MailboxFolderStatistics } $folderQueries = @() $folderStatistics = Get-MailboxFolderStatistics $emailAddress foreach ($folderStatistic in $folderStatistics) { $folderId = $folderStatistic.FolderId; $folderPath = $folderStatistic.FolderPath; $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))"; $folderStat = New-Object PSObject Add-Member -InputObject $folderStat -MemberType NoteProperty -Name FolderPath -Value $folderPath Add-Member -InputObject $folderStat -MemberType NoteProperty -Name FolderQuery -Value $folderQuery $folderQueries += $folderStat } Write-Host "-----Exchange Folders-----" $folderQueries |ft } elseif ($addressOrSite.IndexOf("http") -ige 0) { $searchName = "SPFoldersSearch" $searchActionName = "SPFoldersSearch_Preview" # List the folders for the SharePoint or OneDrive for Business Site $siteUrl = $addressOrSite # Connect to Security & Compliance Center PowerShell if (!$SccSession) { Import-Module ExchangeOnlineManagement Connect-IPPSSession } # Clean-up, if the script was aborted, the search we created might not have been deleted. Try to do so now. Remove-ComplianceSearch $searchName -Confirm:$false -ErrorAction 'SilentlyContinue' # Create a Content Search against the SharePoint Site or OneDrive for Business site and only search for folders; wait for the search to complete $complianceSearch = New-ComplianceSearch -Name $searchName -ContentMatchQuery "contenttype:folder" -SharePointLocation $siteUrl Start-ComplianceSearch $searchName do{ Write-host "Waiting for search to complete..." Start-Sleep -s 5 $complianceSearch = Get-ComplianceSearch $searchName }while ($complianceSearch.Status -ne 'Completed') if ($complianceSearch.Items -gt 0) { # Create a Compliance Search Action and wait for it to complete. The folders will be listed in the .Results parameter $complianceSearchAction = New-ComplianceSearchAction -SearchName $searchName -Preview do { Write-host "Waiting for search action to complete..." Start-Sleep -s 5 $complianceSearchAction = Get-ComplianceSearchAction $searchActionName }while ($complianceSearchAction.Status -ne 'Completed') # Get the results and print out the folders $results = $complianceSearchAction.Results $matches = Select-String "Data Link:.+[,}]" -Input $results -AllMatches foreach ($match in $matches.Matches) { $rawUrl = $match.Value $rawUrl = $rawUrl -replace "Data Link: " -replace "," -replace "}" Write-Host "DocumentLink:""$rawUrl""" } } else { Write-Host "No folders were found for $siteUrl" } Remove-ComplianceSearch $searchName -Confirm:$false -ErrorAction 'SilentlyContinue' } else { Write-Error "Couldn't recognize $addressOrSite as an email address or a site URL" }
Öffnen Sie auf Ihrem lokalen Computer Windows PowerShell, und wechseln Sie zu dem Ordner, in dem Sie das Skript gespeichert haben.
Führen Sie das Skript aus. Zum Beispiel:
.\GetFolderSearchParameters.ps1
Geben Sie die Informationen ein, zu denen Das Skript Sie auffordert.
Das Skript zeigt eine Liste der Postfachordner oder Websiteordner für den angegebenen Benutzer an. Lassen Sie dieses Fenster geöffnet, damit Sie eine Ordner-ID oder einen Dokumentlinknamen kopieren und in eine Suchabfrage in Schritt 2 einfügen können.
Tipp
Anstatt eine Liste von Ordnern auf dem Computerbildschirm anzuzeigen, können Sie die Ausgabe des Skripts erneut an eine Textdatei weiterleiten. Diese Datei wird in dem Ordner gespeichert, in dem sich das Skript befindet. Um beispielsweise die Skriptausgabe an eine Textdatei umzuleiten, führen Sie in Schritt 3 den folgenden Befehl aus:
.\GetFolderSearchParameters.ps1 > StacigFolderIds.txt
Anschließend können Sie eine Ordner-ID oder einen Dokumentlink aus der Datei kopieren, die in einer Suchabfrage verwendet werden soll.
Skriptausgabe für Postfachordner
Wenn Sie Postfachordner-IDs abrufen, stellt das Skript eine Verbindung mit Exchange Online PowerShell her, führt das Cmdlet "Get-MailboxFolderStatisics" aus und zeigt dann die Liste der Ordner aus dem angegebenen Postfach an. Für jeden Ordner im Postfach zeigt das Skript den Namen des Ordners in der Spalte "FolderPath " und die Ordner-ID in der Spalte "FolderQuery" an. Darüber hinaus fügt das Skript der Ordner-ID das Präfix folderId (der Name der Postfacheigenschaft) hinzu. Da die folderid-Eigenschaft eine durchsuchbare Eigenschaft ist, verwenden folderid:<folderid>
Sie in einer Suchabfrage in Schritt 2, um diesen Ordner zu durchsuchen.
Wichtig
Das Skript in diesem Artikel enthält Codierungslogik, die die 64-stelligen Ordner-ID-Werte, die von Get-MailboxFolderStatistics zurückgegeben werden, in das gleiche 48-Zeichen-Format konvertiert, das für die Suche indiziert wird. Wenn Sie einfach das Cmdlet "Get-MailboxFolderStatistics " in PowerShell ausführen, um eine Ordner-ID abzurufen (anstatt das Skript in diesem Artikel auszuführen), schlägt eine Suchabfrage fehl, die diesen Ordner-ID-Wert verwendet. Sie müssen das Skript ausführen, um die korrekt formatierten Ordner-IDs abzurufen, die in einer Inhaltssuche verwendet werden können.
Hier ist ein Beispiel für die Ausgabe, die vom Skript für Postfachordner zurückgegeben wird.
Das Beispiel in Schritt 2 zeigt die Abfrage, die zum Durchsuchen des Unterordners "Löschvorgänge" im Ordner "Wiederherstellbare Elemente" des Benutzers verwendet wird.
Skriptausgabe für Websiteordner
Wenn Sie den Pfad der documentlink-Eigenschaft von SharePoint oder OneDrive for Business Websites abrufen, stellt das Skript eine Verbindung mit Security & Compliance PowerShell her, erstellt eine neue Inhaltssuche, die die Website nach Ordnern durchsucht, und zeigt dann eine Liste der Ordner an, die sich auf der angegebenen Website befinden. Das Skript zeigt den Namen der einzelnen Ordner an und fügt der Ordner-URL das Präfix "documentlink" hinzu. Da die documentlink-Eigenschaft eine durchsuchbare Eigenschaft ist, verwenden documentlink:<path>
Sie property:value pair in einer Suchabfrage in Schritt 2, um diesen Ordner zu durchsuchen. Das Skript zeigt maximal 100 Websiteordner an. Wenn mehr als 100 Websiteordner vorhanden sind, werden die neuesten angezeigt.
Hier ist ein Beispiel für die Ausgabe, die vom Skript für Websiteordner zurückgegeben wird.
Schritt 2: Verwenden einer Ordner-ID oder eines Dokumentlinks zum Ausführen einer gezielten Sammlung
Nachdem Sie das Skript zum Sammeln einer Liste von Ordner-IDs oder Dokumentlinks für einen bestimmten Benutzer ausgeführt haben, führen Sie den nächsten Schritt aus, um zum Complianceportal zu wechseln und eine neue Inhaltssuche zu erstellen, um einen bestimmten Ordner zu durchsuchen. Sie verwenden das folderid:<folderid>
Paar "or documentlink:<path>
property:value" in der Suchabfrage, die Sie im Schlüsselwortfeld "Inhaltssuche" konfigurieren (oder als Wert für den Parameter "ContentMatchQuery ", wenn Sie das Cmdlet "New-ComplianceSearch " verwenden). Sie können die folderid
Oder-Eigenschaft documentlink
mit anderen Suchparametern oder Suchbedingungen kombinieren. Wenn Sie nur die folderid
Oder-Eigenschaft documentlink
in die Abfrage einschließen, gibt die Suche alle Elemente zurück, die sich im angegebenen Ordner befinden.
Wechseln Sie mit dem Konto und den Anmeldeinformationen, https://compliance.microsoft.com mit denen Sie das Skript in Schritt 1 ausgeführt haben, und melden Sie sich an.
Klicken Sie im linken Bereich des Compliance Centers auf "AllContent-Suche > anzeigen" und dann auf "Neue Suche".
Fügen Sie im Feld "Schlüsselwörter " den
folderid:<folderid>
wertdocumentlink:<path>/*
ein, der vom Skript in Schritt 1 zurückgegeben wurde.Die Abfrage im folgenden Screenshot sucht beispielsweise nach einem beliebigen Element im Unterordner "Löschvorgänge" im Ordner "Wiederherstellbare Elemente" des Benutzers (der Wert der
folderid
Eigenschaft für den Unterordner "Löschvorgänge" wird im Screenshot in Schritt 1 angezeigt):Wichtig
Dokumentlinksuchen erfordern die Verwendung eines nachfolgenden
asterisk '/*'
.Wählen Sie unter "Speicherorte" "Bestimmte Speicherorte" aus , und klicken Sie dann auf "Ändern".
Führen Sie eine der folgenden Aktionen aus, je nachdem, ob Sie einen Postfachordner oder einen Websiteordner durchsuchen:
Klicken Sie neben Exchange E-Mail auf "Benutzer, Gruppen oder Teams auswählen", und fügen Sie dann dasselbe Postfach hinzu, das Sie beim Ausführen des Skripts in Schritt 1 angegeben haben.
Oder
Klicken Sie neben SharePoint Websites auf "Websites auswählen", und fügen Sie dann dieselbe Website-URL hinzu, die Sie beim Ausführen des Skripts in Schritt 1 angegeben haben.
Nachdem Sie den zu durchsuchenden Inhaltsspeicherort gespeichert haben, klicken Sie auf "Speichern & ausführen", geben Sie einen Namen für die Inhaltssuche ein, und klicken Sie dann auf "Speichern" , um die gezielte Sammlungssuche zu starten.
Beispiele für Suchabfragen für gezielte Sammlungen
Hier sind einige Beispiele für die Verwendung von und folderid
documentlink
eigenschaften in einer Suchabfrage zum Ausführen einer gezielten Sammlung. Platzhalter werden verwendet, folderid:<folderid>
um Platz zu sparen und documentlink:<path>
zu sparen.
In diesem Beispiel werden drei verschiedene Postfachordner durchsucht. Sie können eine ähnliche Abfragesyntax verwenden, um die ausgeblendeten Ordner im Ordner "Wiederherstellbare Elemente" eines Benutzers zu durchsuchen.
folderid:<folderid> OR folderid:<folderid> OR folderid:<folderid>
In diesem Beispiel wird in einem Postfachordner nach Elementen gesucht, die einen exakten Ausdruck enthalten.
folderid:<folderid> AND "Contoso financial results"
In diesem Beispiel wird in einem Websiteordner (und allen Unterordnern) nach Dokumenten gesucht, die die Buchstaben "NDA" im Titel enthalten.
documentlink:"<path>/*" AND filename:nda
In diesem Beispiel wird in einem Websiteordner (und einem beliebigen Unterordner) nach Dokumenten gesucht, die innerhalb eines Datumsbereichs geändert wurden.
documentlink:"<path>/*" AND (lastmodifiedtime>=01/01/2017 AND lastmodifiedtime<=01/21/2017)
Weitere Informationen
Beachten Sie die folgenden Punkte, wenn Sie das Skript in diesem Artikel verwenden, um gezielte Sammlungen auszuführen.
Das Skript entfernt keine Ordner aus den Ergebnissen. Einige ordner, die in den Ergebnissen aufgeführt sind, sind möglicherweise nicht durchsuchbar (oder geben keine Elemente zurück), da sie vom System generierte Inhalte enthalten oder weil sie nur Unterordner und keine Postfachelemente enthalten.
Dieses Skript gibt nur Ordnerinformationen für das primäre Postfach des Benutzers zurück. Es werden keine Informationen zu Ordnern im Archivpostfach des Benutzers zurückgegeben. Um Informationen zu Ordnern im Archivpostfach des Benutzers zurückzugeben, können Sie das Skript bearbeiten. Ändern Sie dazu die Zeile
$folderStatistics = Get-MailboxFolderStatistics $emailAddress
in$folderStatistics = Get-MailboxFolderStatistics $emailAddress -Archive
das bearbeitete Skript, speichern Sie es, und führen Sie es aus. Diese Änderung gibt die Ordner-IDs für Ordner und Unterordner im Archivpostfach des Benutzers zurück. Zum Durchsuchen des gesamten Archivpostfachs können Sie alle Ordner-ID-Eigenschaft:Wert-Paare mit einemOR
Operator in einer Suchabfrage verbinden.Beim Durchsuchen von Postfachordnern wird nur der angegebene Ordner (durch seine
folderid
Eigenschaft identifiziert) durchsucht. Unterordner werden nicht durchsucht. Zum Durchsuchen von Unterordnern müssen Sie die Ordner-ID für den Unterordner verwenden, den Sie durchsuchen möchten.Beim Durchsuchen von Websiteordnern werden der Ordner (durch seine
documentlink
Eigenschaft identifiziert) und alle Unterordner durchsucht.Beim Exportieren der Ergebnisse einer Suche, bei der Sie nur die
folderid
Eigenschaft in der Suchabfrage angegeben haben, können Sie die erste Exportoption auswählen: "Alle Elemente, mit Ausnahme von Elementen, die ein unbekanntes Format aufweisen, werden verschlüsselt oder wurden aus anderen Gründen nicht indiziert." Alle Elemente im Ordner werden unabhängig von ihrem Indizierungsstatus immer exportiert, da die Ordner-ID immer indiziert ist.