Mailboxrechte in Schleife abfragen
Hallo Community,
ich würde gerne die Rechte auf allen Kalendern unserer Mailboxen auslesen. Wenn ich mit dem Einzeiler
ran geh, schlägt das mit der folgenden Fehlermeldung fehl:
Kann mir hier jemand weiterhelfen? Bin etwas neu was die PowerShell angeht.
Viele Grüße
Horst Schwarz
ich würde gerne die Rechte auf allen Kalendern unserer Mailboxen auslesen. Wenn ich mit dem Einzeiler
Connect-ExchangeOnline -UserPrincipalName <Name>@infomotion.de
$List = @(
"Benutzer01";
"Benutzer02"
)
foreach ($Postfach in $List)
{
Get-MailboxFolderPermission $Postfach:\Kalender
}
ran geh, schlägt das mit der folgenden Fehlermeldung fehl:
In Zeile:8 Zeichen:29
+ Get-MailboxFolderPermission $Postfach:\Kalender
+ ~~~~~~~~~~
Ungültiger Variablenverweis. Nach ":" folgte kein Zeichen, das für einen Variablennamen gültig ist. Verwenden Sie ggf. "${}", um den Namen zu begrenzen.
+ CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordException
+ FullyQualifiedErrorId : InvalidVariableReferenceWithDrive
Kann mir hier jemand weiterhelfen? Bin etwas neu was die PowerShell angeht.
Viele Grüße
Horst Schwarz
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 7722192199
Url: https://administrator.de/forum/mailboxrechte-in-schleife-abfragen-7722192199.html
Ausgedruckt am: 05.02.2025 um 13:02 Uhr
1 Kommentar
Die Fehlermeldung sagt es schon und zeigt übrigens auch die Lösung auf. Es gibt in PowerShell Variablenamen die Doppelpunkte enthalten (Z.B. fürs Scoping, $global:var1 $script:var2 usw.) deswegen musst du das Kapseln, damit der Doppelpunkt nicht als Teil des Variablennamens interpretiert wird sondern als String.
Denke auch daran das der Name des Kalenderordners bei einer anderen Mailbox-Sprache (Localization) anders lauten kann (Calendar, Calendario, ...)! Das kannst du mit Get-MailboxFolderStatistics oder Get-EXOMailboxFolderStatistics abfragen.
Zeppel
Connect-ExchangeOnline -UserPrincipalName <Name>@xxx.de
$List = @(
"Benutzer01",
"Benutzer02"
)
foreach ($Postfach in $List){
Get-MailboxFolderPermission "${Postfach}:\Kalender"
}
# ...
[string]$name = (Get-Mailboxfolderstatistics $Postfach -folderscope calendar | ?{$_.FolderType -eq 'Calendar'} | select -First 1).Name
Get-MailboxFolderPermission "${Postfach}:\$name"
# ...