Jump to content

ineedhelp

Members
  • Gesamte Inhalte

    125
  • Registriert seit

  • Letzter Besuch

Alle erstellten Inhalte von ineedhelp

  1. Die Laufwerkszuordnung per GPP hat bisher super funktioniert. Seit letzter Woche funktioniert diese Zuordnung an der Gruppenrichtlinie wurde nichts verändert. In der Angabe für den Speicherort werden Variablen verwendet. wie zum Bespiel \\%LogonDomain%\Homes\%LogonUser% In der Ereignisanzeige wird der FEHLER: 0x80070043 Der Netzwerkname wurde nicht gefunden. ausgegeben. Leider ist die Meldung in der Ereignisanzeige nicht sehr aussagekräftig und ich weiß nicht, wie ich das Problem beheben kann. Über einen kleinen Stoß in die richtige Richtung bin ich dankbar.
  2. @All. Lässt sich (am liebsten mittels PowerShell Direkt) feststellen, wann die Installation eines Windowssbetriebsystem in einer virtuellen Maschinen unter Hyper-V abgeschlossen ist? Mittels PowerShell lass ich mir oft automatisiert eine Testumgebung mit mehreren Server- und Client-VMs erstellen. Schön wäre es, wenn das Skript so lange könnte bis die OS-Installation abgeschlossen ist. Dann ließe sich zum Beispiel mittels PowerShell Direkt, die Testdomäne samt Organisationseinheiten, Benutzer, Gruppen und Computer anlegen. Die Suche im Netz war leider bisher erfolglos? Ihr würdet mir da sehr weiterhelfen.
  3. Danke für diesen Warnhinweis. Leider verwirrt es ein bißchen. Warum hat Mircosoft die Objekte-Eigenschaft in .NET oder in der ADSI-COM-Komponente nicht so implementiert wie die Attribute im Verzeichnisdienst? Aber das weiß wohl nur Mircosoft. Darauf bin ich gar nicht kommen. Meine Skripte werde ich dann gleich mal mit Parameter erweitern. Meine Testdomäne möchte ich nicht unbedingt verbiegen, aber DCShadow und DSInternals werde ich mir mal anschauen.
  4. Leider lassen sich Eigenschaften lastLogon und lastLogonTimestamp auch nicht verändern. Lt. dieser Ausgabe darf ich doch schreibend auf die Eigenschaft zugreifen. lastLogon Property System.Int64 lastLogon {get;set;} lastLogonTimestamp Property System.Int64 lastLogonTimestamp {get;set;} Weil ich das Objektalter oder die letzte Anmeldung in meinen Skripten überprüfe und die Bedingungen in den Skripten nicht ändern möchte. Ich dachte, dass es einfacher wäre, es entsprechend in der Testdomäne zu simulieren und die betreffende Objekteigenschaften zu verändern.
  5. Bei den Benutzern in meiner Testdomäne möchte ich gerne das Erstellungsdatum ändern. Leider wird ein Fehler geworfen, wenn ich versuche, das Erstellungsdatum zu ändern. Aus der Dokumentation zum WhenCreated-Attribut lässt sich nicht entnehmen, ob das Attribut schreibgeschütz ist. Wie kann das Skript mit System-Rechten ausgeführt werden? $user = Get-ADUser -Identity 'John Doe' -Properties whenCreated $user.whenCreated = [DateTime]::Now.AddDays(-90) # Ausgabe: Ausnahme beim Festlegen von "whencreated": "Der Adapter kann den Wert der whencreated-Eigenschaft nicht festlegen." $de = New-Object System.DirectoryServices.DirectoryEntry("LDAP://$($user.DistinguishedName)") $de.whenCreated = [DateTime]::Now.AddDays(-90) # $de.Properties['whenCreated'][0] = [DateTime]::Now.AddDays(-90) $de.CommitChanges() # Ausgabe: Ausnahme beim Aufrufen von "CommitChanges" mit 0 Argument(en): "Es ist eine Beschränkungsverletzung aufgetreten. Für jede Lösung bin ich dankbar.
  6. @Community Ich habe einen Server auf dem nur von einem bestimmten IP-Adressbereich per RDP zu gegriffen werden darf. Dieser Server darf aber nur auf bestimmte IP-Adressen per RDP zugreifen. Wie müssen die Windows Firewallregeln aussehen? Ich habe schon so viele Möglichkeiten und sperre mich leider immer wieder per RDP aus. Zum Glück kann ich mich lokal an den Server anmelden. Danke im Voraus und wünsche ein sonniges Wochenende.
  7. Als Erstes hatte ich die Herausgeber-Regel. Damit hatte es auch noch nicht funktioniert. Danach habe ich erst zum Pfad-Regel gewechselt. Eigentlich sollte er die Variable richtig auflösen. Durch die Variable werden die 32-Bit und 64-Bit Installation gleich abgedeckt. Nach dem Mittag werde es mal mit der ausgeschriebenen Variante probieren.
  8. Für den Benutzer kommt die Meldung: Die Ausführung von %PROGRAMFILES%\MOZILLA THUNDERBIRD\THUNDERBIRD.EXE wurde zugelassen, wäre jedoch verhindert worden, wäre die AppLocker-Richtlinie erzwungen worden. Lt. Gruppenmitgliedschaft und Regel dürfte der Benutzer die Anwendung ausführen. Keine Ahnung, warum das Programm geblockt wird. Die AppLocker-Richtlinie habe ich jetzt noch weiter mit dem Cmdlet Test-AppLockerPolicy untersucht. Vielen Dank im Voraus.
  9. Vielen Dank für den PowerShell-Befehl. Ein Paar Änderungen habe ich vorgenommen. Die Ausnahmen lege ich ebenfalls im PSCustomObject ab und exportiere das ArrayList-Objekt als Csv-Datei. Hier die AppLocker-Standardrichtlinie und hier die Richtlinie, die die Ausnahmen wieder zulässt. In beiden Richtlinien ist die Pfad gleich geschrieben .... Auswertung für den Computer. Die Richtlinie wird angewendet. Der Benutzer ist in der "richtigen" Gruppe. Das Programm würde immer noch nicht ausgeführt werden. Für mich erschließt es sich nicht, warum AppLocker die Ausführung verhindern würde. Einen Hinweis finde ich leider nicht .... Vielen Dank im Voraus.
  10. Gruppenmitgliedschaften des angemeldeten Benutzers überprüft Dieses Konzept habe ich ähnlich umgesetzt. Statt den Deny Action Rules habe ich die Programme als Ausnahmen für die Gruppe Jeder definiert, da ich die Verweigern-Regeln später für die Administratoren nicht wieder erlauben kann. Wie es in dem Microsoft-Artikel Understanding AppLocker rule exceptions beschrieben wird, habe ich es umgesetzt. Vielen Dank im Voraus.
  11. In den Gruppenrichtlinien sind keine Deny Actions Rules definiert. Understanding AppLocker rule behavior Wie ich AppLocker verstehe, werden grundsätzlich alle Programme an der Ausführung gehindert, wenn diese nicht explizit zugelassen wurde. Grundsätzlich funktioniert auch meine Konfiguration. In der Standardrichtrichtlinie habe ich mehrere Ausnahmen definiert, die ich später explizit erlaube. Leider würden bei einigen Benutzern, trotz "richtiger" Gruppenmitgliedschaft, die Ausführung der Anwendung durch AppLocker blockiert. Nun suche ich nach Hinweisen, warum die Anwendung nicht zugelassen wurde. Vielen Dank im Voraus.,
  12. Vielen Dank. Es gibt nur Zulassen-Regeln. In der Standardregel Alle Dateien im Ordner "Programme" für die Gruppe Jeder habe ich beispielsweise die Herausgeber-Ausnahme Mozilla Thunderbird eingetragen. (Keine Filterung nach Dateiname und -version) In der zweiten Gruppenrichtlinie habe ich Mozilla Thunderbird für eine bestimmte (domänenlokale) Gruppe per Herausgeber- und Pfadregel wieder zugelassen. Das funktioniert soweit ganz gut. Nur kommt bei einigen Gruppenmitgliedern die Meldung, dass AppLocker die Ausführung von Mozilla Thunderbird verhindern würde, wenn es aktiv wäre. Leider fehlt der Hinweis, warum gerade bei diesen Gruppenmitgliedern die Ausführung verhindert wird. Die Reihenfolge der Gruppenrichtlinie habe ich auch so angepasst, dass erst die allgemeine und dann die Gruppenrichtlinie mit den Ausnahmen wieder zulassen, ausgeführt wird. Vielleicht ist das auch unnötig. Kann es sein, das AppLocker die Regeln sowieso zusammenführt. Wenn eine Anwendung versucht ein Programm startet, welches das Starten durch AppLocker verhindern, wird der Benutzer durch die Anzeige Diese App ... gesperrt informiert? Vielen Dank für die Hilfe.
  13. @All Für unsere Remotedesktop-Sitzungshosts habe ich zwei AppLocker-Gruppenrichtlinien definiert. In der ersten Richtlinie sind die von Microsoft vorgegebenen Standardrichtlinien mit Ausnahmen konfiguriert und in der zweiten werden die Ausnahmen für bestimmte (domänenlokale) Gruppen wieder erlaubt. In beiden Richtlinien ist AppLocker im Überwachungsmodus geschaltet. Die Warnungshinweise aus dem AppLocker-Ereignisprotokoll sind an einem Sammlungsserver weitergeleitet. Nun zu meinen Fragen: Bei wenigen Benutzern kommt die Meldung, dass die Ausführung von einer Anwerdung verhindert worden wäre, wenn die AppLocker-Regel erzwungen worden wäre. Diesen Benutzern habe ich aber über Gruppenmitgliedschaft erlaubt, die Anwendung auszuführen. Wie kann ich feststellen, warum AppLocker bei diesen Benutzern das Ausführen der Anwendung verhindert hat? Im Standardregelwerk Alle Dateien im Ordner "Windows" für die Gruppe Jeder sind Ausnahmen wie %SYSTEM32%\ATBROKER.EXE, %SYSTEM32%\CMD.EXE, %SYSTEM32%\RUNDLL32.EXE eingetragen. Hierzu gibt es auch ein Paar Einträge in der Ereignisanzeige. Lässt sich feststellen, warum diese Anwendungen gestartet wurde bzw. von welchem Programm diese Anwendungen gestartet wurden? Vielen Dank im Voraus.
  14. Wie mache ich es konkret? Diesen Vorgehensweise habe ich noch nicht ausprobiert und wüßte nicht wie es genau anstellen soll und wie ich zur gewünschten Einstellung in der Gruppenlinie komme. Ich denke aber, dass Google Chrome diese Informationen irgendwo im Verzeichnis %LOCALAPPDATA&\Google\Chrome\User Data ablegt. Aber wie bekomme ich das genau heraus. Vielen Dank im Voraus.
  15. Vielen Dank für die Links. Die haben leider nicht gewünschte Ergebnis. Nach erneuten Öffnen von Google Chrome muss ich immer noch bestägigen, dass der Receiver installiert ist.
  16. Die Google Chrome-Einstellungen aus dem gp-pack Browser – Chrome, Edge, Edge (Chromium), Firefox habe ich für unsere Domäne übernommen. Leider wird jetzt nicht mehr gespeichert, dass Citrix Workspace insalliert ist. Nach jedem Neustart muss Receiver bereits installiert anklickt werden. In der Einstellung Eine Liste mit Protokollen festlegen, über die eine externe App aus aufgeführten Quellen gestartet werden kann, ohne beim Nutzer nachzufragen habe ich den Eintrag [{"allowed_origins": ["*"], "protocol": "receiver"}] gemacht und in der Einstellung Browserdaten beim Beenden löschen habe ich die Werte browsing_history, download_history, cookies_and_other_site_data, password_signin, autofill gesetzt. Welche Gruppenrichtlinieneinstellungen müssen noch gesetzt werden, dass sich Google Chrome merkt, dass der Receiver bereits installiert ist? Vielen Dank im Voraus.
  17. Ja. Möglichkeit gefunden. Funktion mit Parameter definieren und diese Funktion im Click-Ereignishandler mit Parameter aufrufen.
  18. Nachdem auf eine Schalftfläche geklickt wurde, werden Steuerelemte in einer grafischen WPF-Oberfläche dynamisch erzeugt und zu einem in Xaml-Code definierten Stackpanel hinzugefügt. Unter den dynamisch erzeugten Steuerelementen befindet sich auch eine Schaltfläche. In dem Click-Ereignishandler soll auf eine zur Laufzeit erzeugte Textbox zu gegriffen werden. Das Textbox-Objekt wird einer Variable zu gewiesen. Trotz das die Variable im selben Gültigkeitsbereich erzeugt wurde, wird die Variable im Ereignishandler nicht gefunden. Die FrameworkElement.FindName(String)-Methode liefert auch nur $null zurück. Über die Children-Auflistung des Stackpanels kann aber zur Textbox navigiert werden. Das ist aber bei sehr verschachteles Xaml umständlich, unübersichtlich und fehleranfällig. Gibt eine Möglichkeit die Variable dem Click-Ereignishandler als Parameter zu übergeben? Vielen Dank im Voraus. $xaml = @' <Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="MainWindow" Height="500" Width="800" WindowStartupLocation="CenterScreen" > <Grid Background="LightGreen"> <Grid.ColumnDefinitions> <ColumnDefinition Width="200"/> <ColumnDefinition/> </Grid.ColumnDefinitions> <StackPanel VerticalAlignment="Center"> <Button x:Name="ComputerButton" Content="Rechner" Margin="20" /> <Button x:Name="UserButton" Content="Benutzer" Margin="20" /> </StackPanel> <StackPanel Grid.Column="1" Background="White" Margin="0,20,20,20"> <StackPanel x:Name="Content" HorizontalAlignment="Left" /> </StackPanel> </Grid> </Window> '@ $reader = [System.Xml.XmlReader]::Create([System.IO.StringReader]$xaml) $window = [System.Windows.Markup.XamlReader]::Load($reader) $contentPanel = $window.FindName('Content') $window.FindName('ComputerButton').Add_Click({ $contentPanel.Children.Clear() $label = New-Object System.Windows.Controls.Label $label.Content = 'Rechnername:' $label.FontWeight = 'ExtraBold' $textBox = New-Object System.Windows.Controls.TextBox $textbox.Margin = '20,0,20,0' $textBox.Name = 'ComputerNameTextBox' $textBox.Width = '250' $button = New-Object System.Windows.Controls.Button $button.Content = 'Suchen' $button.IsDefault = $true $button.Width = '100' $button.Add_Click({ # $computer = $textBox.Text Write-Host ($null -eq $textBox) # Ausgabe: True # $computer = $window.FindName('ComputerNameTextBox').Text Write-Host ($null -eq $window.FindName('ComputerNameTextBox')) # Ausgabe: True $computer = $contentPanel.Children[1].Children[0].Text if (-not([String]::IsNullOrEmpty($computer)) ) { [System.Windows.Forms.MessageBox]::Show($computer) } }) $stackPanel = New-Object System.Windows.Controls.StackPanel $stackPanel.Orientation = 'Horizontal' $stackPanel.Children.Add($textBox) $stackPanel.Children.Add($button) $contentPanel.Children.Add($label) $contentPanel.Children.Add($stackPanel) }) $window.FindName('UserButton').Add_Click({ $contentPanel.Children.Clear() $label = New-Object System.Windows.Controls.Label $label.Content = 'NICHT IMPLEMENTIERT' $label.FontWeight = 'ExtraBold' $label.Foreground = 'Red' $contentPanel.Children.Add($label) }) [void]$window.ShowDialog()
  19. Leider ist da die Entscheidung gefallen. Mit Sicherheit ein Grund hierfür war, dass ich als Einziger sich mit dem SCCM auskannte und die neue verantwortliche Person sich nicht mit dem Thema SCCM auseinander setzen wollte. Also werden die Rechner wieder mit dem USB-Stick installiert, Programme manuell oder per GPO nachinstalliert. WSUS ist im Produktivnetz im Einsatz. Es geht um das Testen vom WSUS Package Publisher.
  20. SCCM war hier bereits erfolgreich im Einsatz. Vor Jahren wurde dieser aber leider mit einer neuen verantwortlichen Person abgeschaft. Softwareverteilung mit Gruppenrichtlinien würde völlig ausreichend. Der steht schon auf meiner Todo-Liste. Leider hatte ich noch keinerlei Zeit, den in meinem Testnetzwerk zu teseten
  21. Vielen Dank. Dann werde ich das Programm per Skript unbeaufsichtigt installieren.
  22. Von der Seite https://www.apple.com/itunes/download/win64 habe ich die letzte Version von iTunes heruntergeladen und aus der heruntergeladenen .exe-Datei das ,msi-Paket für iTunes extrahiert. Dieses Paket möchte ich per GPO auf die Rechner in der Domäne verteilen. Unterhalb des Knotens Computerkonfiguration\Richtlinien\Softwareeinstellungen\Softwareinstallation habe ich erfolglos versucht, das iTunes-Paket bereitzustellen. Die Meldung besagt, dass Das Hinzufügen fehlgeschlagen ist. Die Bereitstellungsinformationen konnten nicht vom Paket abgerufen werden. Stellen Sie sicher, dass das Paket richtig ist. Eine manuelle Installation mit dem Paket habe ich bereits erfolgreich auf einem Testrechner durchgeführt. In der Freigabe liegen weitere Msi-Pakete, die bisher erfolgreich per GPO verteilt wurden. Wer kann mir helfen, dass das Paket per Softwareverteilung auf die Rechner installiert wird? VIelen Dank im Voraus.
  23. Auszug aus Kapitel 5 Die PowerShell-Pipeline aus dem Buch PowerShell 7 und Windows PowerShell von Dr. Tobias Weltner In Bezug auf Sort-Object und Group-Object hast Du natürlich recht. Diese Cmdlets blockieren die asychrone Streaming-Verarbeitung, weil sie auch erst einmal alle Objekte kennen müssen.
  24. Musst das Ergebnis in eine Variable zwischengespeichert werden? Kannst Du das Ergebnis nicht direkt mit Pipeline-Operator | an den nächsten Befehl weiterleiten. Die Pipeline ist ein moderner Streaming-Mechanismus der ohne Variablen auskommt und speicherschonend arbeitet.
×
×
  • Neu erstellen...