Jump to content

PS: Gruppenmitgliedschaften prüfen


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hallo zusammen,

 

bei uns wird der standortübgreifende Filezugriff über gruppen geregelt.

 

D.h.:

Zugriff am eigenen Standort= Mitlgied in der Gruppe "Alle-Standort"

Zugriff am fremden Standort = Mitglied in der Gruppe "DATAEigenerStandort-Fremndstandort"

 

Ob das ganze jetzt alles korrekt eingerichtet ist, möchte ich regelmäßig per Skript prüfen. Ob jeder, der die DATA-Gruppe hat, sie auch noch benötigt, oder ob sie jmd. fehlt.

 

Ich habe auch schon eine erste Abfrage erstellt:

 

Die Abfrage zeigt mir an, wer Zugriff auf irgendein Verzeichnis mit dem DN "*OU=S2*" Zugriff hat und Mitglied in der Gruppe "*CN=DATAS1-S2*" ist.

D.h. bei all diesen Usern sind die Einstellungen korrekt.

$s1_users = Get-ADUser -Filter * -SearchBase "OU=User,OU=S1,OU=hhla,DC=DOMAIN,DC=local" | sort | select SamAccountName

ForEach($user in $s1_users)
{
    if ((Get-ADUser $user.SamAccountName -Properties memberof).memberof -like "*OU=S2*" -and (Get-ADUser $user.SamAccountName -Properties memberof).memberof -like "*CN=DATAS1-S2*")
{Write-Host -ForegroundColor Green "$($user.SamAccountName) hat Zugriff auf Daten am Standort 2"
}
}

Ich scheitere gerade an den Abfragen nach fehlerhaften Einstellungen.

 

Sprich ein User hat keinen Zugriff mehr auf irgendein Verzeichnis mit dem DN "*OU=S2*" aber ist noch Mitglied in der Gruppe "*CN=DATAS1-S2*".

 

Oder ein User hat Zugriff auf irgendein Verzeichnis mit dem DN "*OU=S2*", ist aber kein mitglied der in der Gruppe "*CN=DATAS1-S2*".

 

 

Ich hoffe es ist einigermaßen verständlich was ich hier geschrieben habe.

 

Falls nicht, einfach fragen.

 

 

Vielen Dank schon einmal

bearbeitet von Kuddel071089
Link zu diesem Kommentar

Habe es dann doch fast sleber hinbekommen

 

Fall 1

$s1_users = Get-ADUser -Filter * -properties memberof -SearchBase "OU=User,OU=S1,DC=DOMAIN,DC=local" | Where-Object {!($_.memberof -like "*DATAS1-S2*") -and ($_.memberof -like "*OU=Group,OU=S2,*")} | Select SamAccountName

ForEach($user in $s1_users)
{
Write-Host -ForegroundColor RED "Folgende User werden DATAS1-S2 hinzugefügt: $($user.SamAccountName)"
Add-ADGroupMember "DATAS1-S2" -Member $($user.SamAccountName)
}

Fall 2

$s1_users = Get-ADUser -Filter * -properties memberof -SearchBase "OU=User,OU=S1,DC=DOMAIN,DC=local" | Where-Object {($_.memberof -like "*DATAS1-S2*") -and !($_.memberof -like "*OU=Group,OU=S2,*")} | Select SamAccountName



ForEach($user in $cta_users)

{

Write-Host -ForegroundColor RED "Folgende User werden aus DATAS1-S2 entfernt: $($user.SamAccountName)"

#sleep 2

Remove-ADGroupMember DATAS1-S2 -Member $($user.SamAccountName) -Confirm:$false

}

Ich muss jetzt nur noch bestimmt Gruppen ausschließen können, die nicht mit betrachter werden sollen.

$s1_users = Get-ADUser -Filter * -properties memberof -SearchBase "OU=User,OU=S1,DC=DOMAIN,DC=local" | Where-Object {!($_.memberof -like "*DATAS1-S2*") -and ($_.memberof -like "*OU=Group,OU=S2,*")} -Where GroupName -notlike "FTP*"  | Select SamAccountName



ForEach($user in $s1_users)

{

Write-Host -ForegroundColor RED "Folgende User werden DATAS1-S2 hinzugefügt: $($user.SamAccountName)"

Add-ADGroupMember "DATAS1-S2" -Member $($user.SamAccountName)

}
bearbeitet von Kuddel071089
Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...