Verwalten des Remote-PowerShell-Zugriffs in Exchange Online

Mit Remote-PowerShell können Sie Ihre Exchange Online-Organisation über die Befehlszeile verwalten. Standardmäßig dürfen alle Konten, die Sie in Microsoft 365 erstellen, Exchange Online PowerShell verwenden. Sie können die Funktion zum Herstellen einer Verbindung mit Ihrer Exchange Online-Organisation über die Remote-PowerShell für die Benutzer aktivieren und deaktivieren. Aufgrund des Remote-PowerShellzugriffs auf Ihre Exchange Online-Organisation erhalten Benutzer keine zusätzlichen administrativen Rechte. Welche Funktionen ein Benutzer ausführen kann, ist nach wie vor durch die rollenbasierte Zugriffssteuerung (Role Based Access Control, RBAC) und die ihm zugewiesenen Rollen definiert.

Was sollten Sie wissen, bevor Sie beginnen?

  • Geschätzte Zeit bis zum Abschließen der einzelnen Verfahren: Weniger als 5 Minuten

  • Microsoft 365 globale Administratoren zugriff auf Exchange Online PowerShell haben und die Verfahren in diesem Artikel verwenden können, um Exchange Online PowerShell-Zugriff für andere Benutzer zu konfigurieren. Weitere Informationen zu Berechtigungen in Exchange Online finden Sie unter Feature Permissions in Exchange Online.

  • Sie können dieses Verfahren nur mit Exchange Online PowerShell ausführen. Wie Sie eine Verbindung mit Exchange Online PowerShell herstellen, finden Sie unter Herstellen einer Verbindung mit Exchange Online PowerShell.

  • Ausführliche Informationen zur OPath-Filtersyntax in Exchange Online finden Sie unter Zusätzliche OPATH-Syntaxinformationen.

  • Sie können auch Clientzugriffsregeln verwenden, um den PowerShell-Zugriff auf Exchange Online zu blockieren. Ausführliche Informationen finden Sie unter Clientzugriffsregeln in Exchange Online.

Tipp

Sie haben Probleme? Bitten Sie in den Exchange-Foren um Hilfe. Sie finden die Foren unter folgenden Links: Exchange Online oder Exchange Online Protection.

Aktivieren oder Deaktivieren des Remote-PowerShellzugriffs für einen Benutzer

In diesem Beispiel wird der Remote-PowerShellzugriff für den Benutzer "david@contoso.com" aktiviert.

Set-User -Identity david@contoso.com -RemotePowerShellEnabled $false

In diesem Beispiel wird der Remote-PowerShellzugriff für den Benutzer "david@contoso.com" deaktiviert.

Set-User -Identity david@contoso.com -RemotePowerShellEnabled $true

Deaktivieren des Remote-PowerShellzugriff für viele Benutzer

Ihnen stehen folgende Optionen zur Verfügung, um den Remote-PowerShellzugriff für eine bestimmte Gruppe vorhandener Benutzer zu verhindern:

  • Filtern von Benutzern basierend auf einem vorhandenen Attribut: Bei dieser Methode wird davon ausgegangen, dass alle Zielbenutzerkonten ein eindeutiges filterbares Attribut gemeinsam haben. Einige Attribute wie Titel, Abteilung, Adressinformationen und Telefonnummer sind nur sichtbar, wenn Sie das Cmdlet Get-User verwenden. Andere Attribute, wie "CustomAttribute1-15", sind nur sichtbar, wenn Sie das Cmdlet Get-Mailbox verwenden.

  • Verwenden Sie eine Liste bestimmter Benutzer: Nachdem Sie die Liste bestimmter Benutzer generiert haben, können Sie diese Liste verwenden, um den Zugriff auf Exchange Online PowerShell zu deaktivieren.

Filtern der Benutzer auf Grundlage eines vorhandenen Attributs

Verwenden Sie die folgende Syntax, um den Zugriff auf Exchange Online PowerShell für eine beliebige Anzahl von Benutzern zu deaktivieren, die auf einem vorhandenen Attribut basieren:

$<VariableName> = <Get-Mailbox | Get-User> -ResultSize unlimited -Filter <Filter>
$<VariableName> | foreach {Set-User -Identity $_.WindowsEmailAddress -RemotePowerShellEnabled $false}

In diesem Beispiel wird der Remote-PowerShellzugriff für alle Benutzer entfernt, deren Attribut Title den Wert "Sales Associate" enthält.

$DSA = Get-User -ResultSize unlimited -Filter "(RecipientType -eq 'UserMailbox') -and (Title -like 'Sales Associate*')"
$DSA | foreach {Set-User -Identity $_.WindowsEmailAddress -RemotePowerShellEnabled $false}

Verwenden einer Liste spezieller Benutzer

Verwenden Sie folgende Syntax, um den Remote-PowerShellzugriff für eine Liste spezieller Benutzer zu deaktivieren.

$<VariableName> = Get-Content <text file>
$<VariableName> | foreach {Set-User -Identity $_ -RemotePowerShellEnabled $false}

Im folgenden Beispiel wird die Textdatei "C:\My Documents\NoPowerShell.txt" verwendet, um die Benutzer anhand ihrer Konten zu identifizieren. Die Textdatei muss in jeder Zeile ein Konto enthalten:

akol@contoso.com
tjohnston@contoso.com
kakers@contoso.com

Nachdem Sie die Textdatei mit den Benutzerkonten aufgefüllt haben, die Sie aktualisieren möchten, führen Sie die folgenden Befehle aus:

$NPS = Get-Content "C:\My Documents\NoPowerShell.txt"
$NPS | foreach {Set-User -Identity $_ -RemotePowerShellEnabled $false}

Anzeigen des Status des Remote-PowerShellzugriffs für Benutzer

Verwenden Sie folgende Syntax, um den Status des Remote-PowerShellzugriffs für einen speziellen Benutzer anzuzeigen.

Get-User -Identity <UserIdentity> | Format-List RemotePowerShellEnabled

In diesem Beispiel wird der Status des Remote-PowerShellzugriffs der Benutzerin Sarah Jones angezeigt.

Get-User -Identity "Sarah Jones" | Format-List RemotePowerShellEnabled

Führen Sie den folgenden Befehl aus, um den Exchange Online PowerShell-Zugriffsstatus für alle Benutzer anzuzeigen:

Get-User -ResultSize unlimited | Format-Table -Auto Name,DisplayName,RemotePowerShellEnabled

Um nur die Benutzer anzuzeigen, die keinen Zugriff auf Remote-PowerShell haben, führen Sie den folgenden Befehl aus:

Get-User -ResultSize unlimited -Filter 'RemotePowerShellEnabled -eq $false'

Um nur die Benutzer anzuzeigen, die Zugriff auf Remote-PowerShell haben, führen Sie den folgenden Befehl aus:

Get-User -ResultSize unlimited -Filter 'RemotePowerShellEnabled -eq $true'