ollex78
Goto Top

Auslesen Funktionspostfächer mit Usernamen

Hallo,

ich muss für eine abteilung alle unsere Funktionspostfächer auslesen. Soweit so gut, kein Problem.
Jedoch bringt die Ausgabe die User, da Sie so angelegt sind mit einer Kennung und nicht deren Namen.

Also so

"xxxx/Zentrale Ressourcen/Benutzer/Exchange-Benutzer/xxx/xxx","xxx\**S0463**","FullAccess"  

Dank des Codes hier:

Get-Mailbox -OrganizationalUnit "OU=xxx,OU=Exchange-Benutzer,OU=Benutzer,OU=Zentrale Ressourcen,DC=xxx,DC=xxx,DC=de" | Get-MailboxPermission | where {$_.user.tostring() -ne "NT AUTHORITY\SELF" -and $_.IsInherited -eq $false} | Select Identity,User,@{Name='Access Rights';Expression={[string]::join(', ', $_.AccessRights)}} | Export-Csv -NoTypeInformation C:\Users\xxx\Downloads\FuPo\xxx.csv  


Jetzt meine Frage, gibt es einen select befehl den ich da noch einbauen kann, um gleich in diese ausgabe den Vor und Zunamen mit integriert zu bekommen ohne das ich extra eine abfrage mit Get-ADUser -identity xxxx zu machen und wie ich dafür sorgen kann, dass die NT-Authority gleich nicht mit ausgelesen und aufgelistet wird?

Habt ihr Ideen oder Tipps?

Dank Euch.

Content-ID: 7877749936

Url: https://administrator.de/contentid/7877749936

Ausgedruckt am: 13.11.2024 um 11:11 Uhr

7426148943
7426148943 17.07.2023 um 14:55:31 Uhr
Goto Top
Get-Mailbox -OrganizationalUnit "OU=xxx,OU=Exchange-Benutzer,OU=Benutzer,OU=Zentrale Ressourcen,DC=xxx,DC=xxx,DC=de" | Get-MailboxPermission | where {$_.user.tostring() -ne "NT AUTHORITY\SELF" -and $_.IsInherited -eq $false} | Select Identity,@{n='User';e={(Get-AdUser $_.Identity -Properties DisplayName).Displayname}},@{Name='Access Rights';Expression={[string]::join(', ', $_.AccessRights)}} | Export-Csv -NoTypeInformation C:\Users\xxx\Downloads\FuPo\xxx.csv    
Zeppel
ollex78
ollex78 17.07.2023 um 15:26:35 Uhr
Goto Top
Vielen dank, schon besser. sehe aber gerade, dass die Namen nicht mit ausgelesen werden, weil das keine Exchangegruppen sondern AD-Gruppen. Also müsste ich den

Get-ADUser -identity Sxxx

irgendwie noch einbinden?
7426148943
7426148943 17.07.2023 aktualisiert um 15:41:24 Uhr
Goto Top
irgendwie noch einbinden?
Ist doch schon, Code vielleicht mal lesen ...
Ersetze das Get-ADUser durch Get-ADGroup oder Get-ADGroupMember wenn du die Member der Gruppen haben willst, Schema wie oben.
ollex78
ollex78 17.07.2023 aktualisiert um 16:01:41 Uhr
Goto Top
Okay ausprobiert, kommen leider immer noch nicht.

So sieht das ergebnis aus

"xxxx.de/Zentrale Ressourcen/Benutzer/Exchange-Benutzer/xxx/xxxx",,"FullAccess"  

Wir nutzen hier auch GivenName, SamAccountName und Surname
7426148943
7426148943 17.07.2023, aktualisiert am 18.07.2023 um 10:05:34 Uhr
Goto Top
Ist ja klar wenn du Gruppen hast siehe mein Kommentar dann musst du Get-ADUser austauschen durch Get-ADGroupMember, bei gemischten Einträgen mit Gruppen und Usern, z.B. so
$result = foreach($permission in Get-Mailbox -OrganizationalUnit "OU=xxx,OU=Exchange-Benutzer,OU=Benutzer,OU=Zentrale Ressourcen,DC=xxx,DC=xxx,DC=de" -ResultSize unlimited | Get-MailboxPermission | ?{!$_.IsInherited -and $_.User.SecurityIdentifier -notin 'S-1-5-10'}){  
    $principal = $permission.User.toString().split("\")[-1]  
    $obj = Get-ADObject -LDAPFilter "sAMAccountName=$principal"  
    if ($obj.objectClass -eq 'group'){  
        foreach($member in Get-ADGroupMember $principal -Recursive){
            [pscustomobject]@{
                Mailbox = $permission.Identity
                User = $member.Name
                'Access Rights' = $permission.AccessRights -join ','  
                Deny = $permission.Deny
            }
        }
    }else{
        [pscustomobject]@{
            Mailbox = $permission.Identity
            User = (Get-AdUser $principal).Name
            'Access Rights' = $permission.AccessRights -join ','  
            Deny = $permission.Deny
        }
    }
}

$result | export-csv .\output.csv -Delimiter ";" -NoTypeInformation -Encoding UTF8  

screenshot
ollex78
ollex78 18.07.2023 um 08:13:08 Uhr
Goto Top
Was mache ich falsch, bei mir kommt nach wie vor das raus


Identity                                                                                                        User Access Rights      
--------                                                                                                        ---- -------------      
xxxxde/Zentrale Ressourcen/Benutzer/Exchange-Benutzer/xxx/xxx Bewertung                        FullAccess,
ollex78
ollex78 19.07.2023 um 11:18:58 Uhr
Goto Top
Nochmal danke an den Helfenden.

Problem mittlerweile auch gelöst.