Dies ist das Skript, das ich erstellt habe, um die Berechtigungen aller in einer Exchange-Organisation vorhandenen Kalender zu extrahieren.
Das Skript durchsucht jedes Postfach nach Ordnern vom Typ “Kalender” e, für jeden von ihnen, extrahiert seine Berechtigungen, Das Ergebnis wird in einer CSV-Datei ausgegeben.
$ mailbox_list = Get-Mailbox -Resultsize Unlimited
für jedes ($ mailbox in $ mailbox_list)
{
$ calendars = $ mailbox | Get-MailboxFolderStatistics | Wo {$ _. Ordnertyp -eq “Kalender”}
für jedes ($ Kalender in $ Kalendern)
{
[Zeichenfolge]$ ID_calendario = $ mailbox.PrimarySmtpAddress
$ Calendar_id + = “:\”
$ Calendar_id + = $ calendar.nameGet-MailboxFolderPermission $ ID_calendario | Identität auswählen,Ordnernamen,Nutzer,@{name =”Zugangsrechte”;Ausdruck ={ [Zeichenfolge]::beitreten(“,”,@($ _. Zugriffsrechte)) }} | Export-Csv c:tempout.csv -Anhängen
}
}
Die Ausgabe erfolgt im Format:
#TYPE Selected.Microsoft.Exchange.Management.StoreTasks.MailboxFolderPermission
“Identität”,”Ordnernamen”,”Nutzer”,”Zugangsrechte”
“domain.local / BigPharma Spa / Mario Rossi:\Calendario”,”Kalender”,”Giorgio Giorgetti”,”Gutachter”
“domain.local / BigPharma Spa / Mario Rossi:\Calendario”,”Kalender”,”Fabio Guidetti”,”Gutachter”
“domain.local / BigPharma Spa / Mario Rossi:\Calendario”,”Kalender”,”Monica Alberelli”,”Gutachter”
“domain.local / BigPharma Spa / Mario Rossi:\Calendario”,”Kalender”,”Maria Moria”,”Gutachter”
“domain.local / BigPharma Spa / Mario Rossi:\Calendario”,”Kalender”,”Guido Marchesini”,”Gutachter”
“domain.local / BigPharma Spa / Marco Verdi:\Calendario”,”Kalender”,”Standard”,”VerfügbarkeitNur”