Jump to content

Kuddel071089

Members
  • Gesamte Inhalte

    559
  • Registriert seit

  • Letzter Besuch

Beiträge erstellt von Kuddel071089

  1. Hallo zusammen,

     

    ich würde gerne die Mitlgieder von 2 verschiedenen Gruppen via export in einer Excel-Datei in 2 unterschiedlichen Blättern ablegen.

     

    Sprich:

    Blatt 1 = Mitglieder Gruppe 1

    Blatt 2 = Mitglieder Gruppe 2

     

    Einen einfachen Export in eine vsc-Datei bekomme ich hin, an den verschiedenen Blättern scheitere ich gerade.

     

     

    Get-ADGroupMember Role-CMT-McAfee-Block-USB | Sort | Select SamAccountName, Name | export-csv -Delimiter ":" -Path "C:\Block_USB.csv"
     
    Get-ADGroupMember Role-CMT-McAfee-Monitor-USB | Sort | Select SamAccountName, Name | export-csv -Delimiter ":" -Path "C:\Monitor_USB.csv"
    

     

    Danke schon einmal für die Hilfe

  2. Hallo zusammen,

     

    in meiner Umgebung bekommen meine Windows 10 Clients ihre Netzlaufwerk (2 QNAP TS420) per GPO verbunden.

     

    Leider gehen diese Verbindung häufiger verloren.

     

    Beispiel: ein Download wird direkt aufs Nas gestartet. Der läd und läd, bis irgendwann E:\Download nicht mehr erreichbar ist. Der DL bricht somit ab.

     

    Die Verbindung zu E:\ ist allerdings nach ca. 5 Sekunden wirder hergestellt, ohne dass ich etwas mache.

     

    Unter Windows 7 trat das Problem nicht auf.

     

    Hat jemand eine Idee, was das Problem sein könnte?

     

     

    Danke schon einmal

  3. Moin,

     

    wenn du das professionell machen willst, solltest du dir 8MAN anschauen. Der kann Mehrfachberechtigungen pro Ressource direkt anzeigen, auch Verschachtelungen werden dabei berücksichtigt.

     

    Wenn es "zu Fuß" sein soll, wirst du selbst eine Logik zum Vergleichen finden müssen. Wenn die Gruppennamen einheitlich auf -R oder -RW lauten, könntest du beim Auftreten von "-R" prüfen, ob derselbe String mit "-RW" auch in der Menge der Gruppenmitgliedschaften auftritt. Das hängt dann vor allem von der Namenslogik ab und wird immer auf der Ebene der Gruppen bleiben - die tatsächlichen Berechtigungen berührst du damit nicht. Das wäre dann eben was für 8MAN ...

     

    Gruß, Nils

     

    Hallo Nils,

     

    die NTFS Berechtigungen der Gruppen werten wir bereits mit einem anderen Tool aus.

     

    Es geht also nur um die Gruppenmitgliedschaften die einheitlich -R / -RW heißen.

     

    Gruß Kuddel

    Stören die Doppelten Berechtigungen?

     

    SIe werfen immer wieder Fragen auf, wenn wir eine Asuwertung von bestimmten Verzeichnissen für die Anwender ertellen und sie dann Fragen warum Kollege XY Lese- und Schreibrechte hat

    Ich nutze immer Arrays zum Vergleichen von Listen:

    $GroupA_Members = @("user1","user2","user3","user4")
    $GroupB_Members = @("user3","user4","user5","user6")
    
    Write-Host ""`n"show duplicates"
    $DupMembers = $GroupA_Members | Where {$GroupB_Members -Contains $_}
    $DupMembers
    
    Write-Host ""`n"remove duplicates"
    $AllMembers = $GroupA_Members + $GroupB_Members | sort -Unique
    $AllMembers
    

    Compare-Object funktioniert aber genauso gut

     

    blub

     

    Ahh ein erster Ansatz.... ich versuche mal mein Glück.

    Danke

  4. Eine Möglichkeit der Ausgabe wird ganz unten gelistet:

    http://www.faq-o-matic.net/2010/07/27/in-welchen-ad-gruppen-ist-ein-benutzer-mitglied/

    Das Script anpassen und starten. Liefert alle Benutzer in der ausgewählten OU incl. Gruppen in denen das Benutzerobjekt Mitglied ist.

     

    Weitere Ausgabemöglichkeiten:

    https://www.windowspro.de/script/gruppennamen-eines-ad-users-ausgeben

    https://www.windowspro.de/script/ad-gruppen-powershell-anzeigen-erstellen-benutzer-hinzufuegen

     

    Danke, aber das reine Anzeigen der Mitgliedschaften eines User bekomme ich schin hin.

     

    Ich scheitere gerade an der Logik des Vergleichens

  5. Hallo zusammen,

     

    ich mache mir gerade gedanken, wie ich prüfen kann ob ein User doppelte ´Berechtigungen hat.

     

    Z.B. hat der User Musterann die Berechtigungsgruppen Info-R und Info-RW.

    Sprich Leserechte zum einen aber auch Schreibrechte.

     

    Da er Schreibrechte hat, ist die Mitgliedschaft in der -R Gruppe überflüssig und kann entfernt werden.

     

    Dies würde ich jetzt gerne per Powershell abfragen.

     

    Als erstes würde denke ich ein Auswertung reichen.

     

    Leider fehlt mir im Moment der Ansatz um das Thema anzugehen.

     

     

    Hat jemand eine Idee?

     

     

    Vielen Dank schon einmal

  6. Hallo zusammen,

     

    wir haben zwei Server auf denen das Verzeichnis D:\Apps per DFSr synchronisiert wird.

     

    Die Synhronisierung an sich funktioiniert leider irgendwie nicht mehr.

     

    Wenn ich in der DFS-Verwaltung einen Diagnosebericht erstellen lasse, bekomme ich nur eine Warnung, dass der DFSr Dienst häufiger neu gestartet wurde.

     

    Das war ich, weil ich versucht habe durch den Dienstneustart was zu bewirken.

     

     

    In der Ereignisanzeige findet man folgendens:

    Der DFS-Replikationsdienst hat die Replikation für den Ordner unter dem folgenden lokalen Pfad "D:\Apps" beendet. Dieser Server wurde von anderen Partnern für 60 Tage getrennt. Dadurch wird die im Parameter "MaxOfflineTimeInDays" zulässige Dauer überschritten (60). Aus diesem Grund geht der DFS-Replikationsdienst davon aus, dass diese Daten veraltet sind, und dieser Ordner wird vom Server erst nach Korrektur dieses Fehlers wieder repliziert.
     
    Verwenden Sie zum Fortsetzen der Replikation dieses Ordners das DFS-Verwaltungs-Snap-Ins zum Entfernen dieses Servers aus der Replikationsgruppe, und fügen Sie ihn dann der Gruppe erneut zu. Dadurch führt der Server einen ersten Synchronisierungstask aus, wodurch die veralteten Daten durch aktuelle Daten der Mitglieder der Replikationsgruppe ersetzt werden.
     
    Weitere Informationen:  
    Fehler: 9061 (Der replizierte Ordner war zu lange offline.)  
    Name des replizierten Ordners: Apps
    ID des replizierten Ordners: 6C1ABAD6-19EF-411D-8A7E-A2F7A3944514  
    Replikationsgruppenname: DOMAIN\dfs\apps  
    ID der Replikationsgruppe: F076570F-573B-45B9-9F80-7DC74AB2967E  
    Mitglieds-ID: 3F390E53-0DF8-4C77-93A3-79701A4F4A1E
    

    Da ich mich mit DFSr kaum auskenne, benötige ich ein paar Tipps.

     

     

    Vielen Dank schon einmal

  7. @echo off
    
    cd <Verzeichnis>
    
    powershell.exe <skript> <parameter>
    

    Ich mache es immer so.

    Ich würde Skripts nicht über das Netzwerk starten sondern lokal auf dem Fileserver.

    Dann hast du auch keine Probleme bezüglich Skript übers Netzwerk starten (Execution-Policys) usw.

     

     

    Hab das Skript jetzt lokal abgelegt und per CMD wie von dir beschrieben gestartet,

     

    Funktioniert. Danke

  8. Hallo zusammen,

     

    ich habe mir ein Task erstellt, der eiun Powershell-Skript startet, welches die NTFS-Berechtigungen auf unserem FileServer auswertet.

     

    Wenn ich das Script in der PS ISE starte funktioniert alles wunderbar.

     

    Jetzt habe ich einen Task erstellt, damit alles automatisch läuft.

     

     

    Programm/Skript: C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
    Argumente hinzufügen: -command "\\DOMAIN\DFS\Standort1\Powershell\Inventur\ntfsberechtigungen_v0.1.ps1"
    

     

    Der Task soll unabhänging von der Benutzeranmeldung ausgeführt werden. Als User ist mein Admin-Account hinterlegt.

     

    Der Task startet, ist aber aber nach 2 Sek. schon fertig.

     

    "Mit höchsten Privilegien ausführen" habe ich auch schon versucht.

     

    Hat jmd eine Idee ?

     

     

    Danke schon einmal

  9. Moin,

     

    wenn schon der SCOM im Einsatz ist, sollten doch die AD MPs ausreichend sein. Eventuell ab und an durch ein manuelles dcdiag ergänzt.

     

    Warum willst Du eine Info das alles ok ist? Es interessieren doch nur die Punkte, bei denen etwas nicht ok ist.

     

    Mit geht es darum: ich komme morgens ins büro...

     

    lese die mail "AD-Check" und sehe alles grün oder nicht alles grün ohne irgendwie in SCOM nachgucken zu müssen oder ein DCDIAG auszuführen

  10. Hallo zusammen,

     

    unsere Kollegen haben für ihre Exchange-Umgebung ein Powershell-Skript welches jeden morgen um 6 Uhr einmal die ganze Umgebung Checkt und einen HTML Report per Mail versendet.

     

    Somit sehen sie jeden morgen ob alles soweit in Ordnung ist.

     

     

    So etwas suche ich jetzt auch fürs Active Directory.

     

    Die fertigen Skripte die man so im Technet o.ä. findet, funktionieren irgendwie in unserer Umgebung (3DCs auf Win2012 / DomLevel 2012) nicht richtig.

     

    Kennt vllt. jmd ein gutes Skript, welches ich mal antesten könnte?


    Vielen Dank

     

     

    Beispiel:

     

    https://gallery.technet.microsoft.com/scriptcenter/Active-Directory-Health-709336cd

     

    Fehler:

    Siehe Anhang

    post-68700-0-25190300-1458409251_thumb.png

  11. Hallo,

    Ich benutze in solchen Fällen gerne das PSObject

     

    etwa so (ungetestet)

    Foreach ($gruppe in $gruppen) {
      [PsObject]$OutPut = "" | Select-Object Verzeichnisname_ohne_RW,Verantwortlicher,LetzterZugriff
      $OutPut.Verzeichnisname_ohne_RW = $($gruppe.SamAccountName)
      $OutPut.Verantwortlicher = $($gruppe.info)
      $OutPut.LetzterZugriff = $($gruppe.LastAccessTime)
      
     $AllOutPut += $OutPut
    }#Foreach
     
    $AllOutPut | Format-Table * -auto
    
    

    Damit hat man ein flexibles und übersichtliches  Array in der Hand.

     

    Bei Bedarf kann man ja die Table noch anpassen (width, etc)

    https://technet.microsoft.com/de-de/library/ee692794.aspx

     

    Ich habe es fast 1:1 übernommen.

    Ich hab einen Filter nach *-RW (Schreibrechtegruppen) hinzugefügt, sonst wird der Verantworliche ja doppel für -R und -RW aufgeführt

    Die Spalte "Letzter Zugriff" benötige ich nicht.

    Der Output geht mit in meine txt Datei

    Foreach ($gruppe in $gruppen) {
    if($gruppe.SamAccountName -like "*-RW"){
      [PsObject]$OutPut = "" | Select-Object Verzeichnisname_ohne_RW,Verantwortlicher
      $OutPut.Verzeichnisname_ohne_RW = $($gruppe.SamAccountName)
      $OutPut.Verantwortlicher = $($gruppe.info)
     
      $OutPut | Format-Table * | Out-File "$outputFile" -Append
    
    }}
    

    Funktioniert jetzt wie es soll. Probieren geht über studieren ^^

     

    Wenn man jetzt noch irgendwie das -RW am Ende der Gruppennamen entfernen kann und die erste Spalte somit direkt Verzeichnisnamen nennen kann, wäre ich wunschlos glücklich.

     

    Aber vielen Dank schon einmal :-) #freu

  12. Hallo zusammen,

     

    ich bin gerade dabei eine Asuwertung alle Mitglieder von bestimmten Verzeichnissen zu erstellen.

     

    Die Auflistung aller Mitglieder funtkioniert auch.

     

    Jetzt möchte ich am Ende der Datei noch den Verzeichnisverantwortlichen anfügen, der bei uns in der Berechtogungsgruppe im Attribut "info" geplfegt wird.

     

    Dazu habe ich mir also ein Schleife erstellt:

    Get-ADGroup $gruppe.SamAccountName -Properties * | Select @{Expression={$gruppe.SamAccountName};Label="Verzeichnissname (ohne -RW)"}, @{Expression={$gruppe.info};Label="Verantwortlicher"} | Out-File "$outputFile" -Append
    
    }
    
    }
    

    Damit der Endanwender diese Auswertung auch versteht, wurde aus SammAccountName "Verzeichnissname (ohne -RW)" als Tabellenkopf.

    Jetzt möchte ich gern aus info "Verantwortlicher" machen.

    Funt auch, nur leider werden die Werte aus den info Feldern nicht exportiert.

     

    So funkitoniert es, ist aber ein wenig unschön

    Get-ADGroup $gruppe.SamAccountName -Properties * | Select @{Expression={$gruppe.SamAccountName};Label="Verzeichnissname (ohne -RW)"}, info | Out-File "$outputFile" -Append
    
    }
    
    }
    

    Ich hoffe jmd hat eine Idee für mich.

    Danke schon einmal


    Ich habe es jetzt hinbekommen, 2 Spalten um zu benennen.

     

    ForEach ($Gruppe in $Gruppen){
    
    if($gruppe.SamAccountName -like "*-RW"){
    #Get-ADGroup $gruppe.Name -Properties * | Select @{Expression={$gruppe.SamAccountName};Label="Verzeichnissname (ohne -RW)"}, @{Expression={$gruppe.info};Label="Verantwortlicher"} | Out-File "$outputFile" -Append
    Get-ADGroup $gruppe.Name -Properties * | Format-Table Name,
    
    @{
        Label="Verzeichnisname (ohne -RW)"
        Expression={(Get-ADGroup $gruppe.Name -Properties SamAccountName | Select $($_.SamAccountName))}
        },
    @{
        Label="Verantwortlicher"
        Expression={(Get-ADGroup $gruppe.SamAccountName -Properties info | Select $($_.info))}
    } | Out-File "$outputFile" -Append
    }
    }
    

     

    Leider habe ich jetzt noch 2 Probleme:

     

    1.Damit dies Ausgabe funktioniert muss ich zwingend eine 3 Spalte mit ausgeben, wie zb SName. Lasse ich diese Weg, werden die anderen Spalten nicht gefüllt.

    2.Wenn die Spalten gefüllt sind, sind da mehr als die gewünschten Attribute eingetragen:

    Beispiel des Verantwortlichen:

    @{Mustermann, Max=Microsoft.ActiveDirectory.M...
    

     

    Eingeltich soll in der Spalter Verantwortlicher nur der Eintrag aus dem Infofeld stehen "Maustermann, Max"

  13. Probiere es dennoch einmal mit

     

    Add-PSSnapin Microsoft.Exchange.Management.PowerShell.E2010

     

    Wenn ich das Snapin lade, funktioniert das Skript zwar auf dem Exchange Server aber noch nicht auf unserem Admin-Server, von dem wir eig aus arbeiten.

     

    Muss ich dafür noch irgendetwas installieren ?

  14. Fehlt evtl. sowas hier:

     

    Add-PSSnapin Microsoft.Exchange.Management.PowerShell.E2010
    

     

    Nutzen Exchange 2013.

     

    Habe es also mit:

    Add-PSSnapin Microsoft.Exchange.Management.PowerShell.E2013
    

    versucht.

     

    Ergebnis: Das Snapin ist nicht installiert

  15. Hallo zusammen,

     

    wenn ich auf unserem Exchange Server in der Exchnage Pwoershell Console folgenden Befehl eingeben:

    Get-TransportService | Get-Queue
    

    wird die Warteschlange korrekt angezeigt.

     

    Wenn ich jetzt aber auch unserem Admin Server angemeldet bin und dort ein PS SKript starte, wo mehrere Exchange-Abfragen zusammengführt wurden, funktioniert der o.g. Befehl nicht.

     

    Verbindung zum Exchange aufbauen:

    $ExSession = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri http://$server/powershell
    
    Import-PSSession $ExSession
    

    Abfragen:

    Write-Host -ForegroundColor Yellow "Bitte Aufgabe wählen"
    
    Write-Host
    
    Write-Host "(1) Verbindung zu den CAS testen"
    
    Write-Host "(2) Datenbank Verbindungsstatus prüfen"
    
    Write-Host "(3) Datenbank-Verteilung anzeigen"
    
    Write-Host "(4) E-Mail-Fluss testen"
    
    Write-Host "(5) Warteschlange auf den Transportservern prüfen"
    
    Write-Host "(6) Service Health prüfen"
    
    Write-Host "(7) Versand und Empfang pruefen"
    
    
    
    Write-Host
    
    Write-Host "(0) Abbrechen"
    
    Write-Host
    
    Write-Host -ForegroundColor Yellow "Auswahl: " -NoNewline
    
    $aufgabe = Read-Host
     
    if ($aufgabe -eq 5) {
    
    Write-Host -ForegroundColor Cyan "Warteschlange auf den Transportservern"
    
    Get-TransportService | Get-Queue
    
    pause
    
    }
    

    Alle anderen Abfragen / Tasks bis auf (5) funktionieren einwandfrei.

     

    Hat jemand eine Idee, wie ich die Warteschlange per remote abfragen kann?

     

     

    Danke schon einmal

×
×
  • Neu erstellen...