Domänengruppe automatisch zur neuen Windows-Installation hinzufügen

Domänengruppe automatisch zur neuen Windows-Installation hinzufügen

Ich bin auf das folgende Dilemma in meinem Workstation-Installationsskript gestoßen, als ich versucht habe, den lokalen Administratoren automatisch eine Domänengruppe hinzuzufügen.
Das Problem, das ich habe, ist das Folgende:

  • Wenn ich den lokalen Administrator verwende, habe ich die Rechte, Benutzer zu einer lokalen Gruppe hinzuzufügen, muss aber Domänenanmeldeinformationen angeben, um eine Verbindung mit der Domäne herzustellen
  • Wenn ich einen Domänenbenutzer verwende, kann ich eine Verbindung zum AD herstellen, aber der Benutzer, der dies tut, ist noch kein lokaler Administrator, sodass ich lokale Gruppen noch nicht ändern kann.

Ich befinde mich in einer GMP-Umgebung, daher sind die Regeln und Vorschriften !wirklich! streng, was andere mögliche Wege einschränkt.

  • Die Rollen sind aufgeteilt, sodass ich keinen Zugriff auf den Domänenadministrator habe.
  • Es sind keine Änderungen an OUs erlaubt, die die Gruppe aus der Gruppenrichtlinie drängen könnten.
  • Die Verwendung von PowerShell mit Remote-Skripten ist nicht zulässig.

Dies lässt sich relativ einfach manuell umgehen, wenn Sie compmgmt.msc verwenden und die erforderlichen Anmeldeinformationen angeben, wenn Sie dazu aufgefordert werden. Ich möchte jedoch das Hinzufügen manueller Schritte vermeiden und die gesamte Installation so weit wie möglich automatisieren.

Ein paar Details:

  • Das Betriebssystem der Workstation ist Windows 10
  • Das von mir verwendete Skript ist PowerShell
  • Das Skript wird mit einem lokalen Administratorkonto mit erhöhten Rechten ausgeführt
  • Die Arbeitsstation ist bereits der Domäne beigetreten.
  • Das zum Hinzufügen der Arbeitsstation zur Domäne verwendete Konto ist kein Domänenadministratorkonto.
  • Um Administratorrechte für mein Domänenkonto zu erhalten, muss ich die Gruppe unserer Abteilung zur lokalen Administratorgruppe hinzufügen.

Der Code, den ich verwende, um eine Gruppe zur lokalen Administratorgruppe hinzuzufügen, lautet: $de = [ADSI]"WinNT://$Env:ComputerName/Administrators,group" $de.psbase.Invoke("Add",([ADSI]"WinNT://MyCompanyDomain/MyDepartmentGroup").path)
Dieser Code funktioniert einwandfrei, wenn er mit einem Domänenkonto ausgeführt wird.Undist ein lokaler Administrator.

Da dies für die Installation einer brandneuen Workstation verwendet wird, kann ich dies entweder als Domänenkonto ausführenoderlokaler Administrator.
Bei ersterem schlägt der $de.psbase.Invoke("Add",Teil fehl.
Bei letzterem ([ADSI]"WinNT://MyCompanyDomain/MyDepartmentGroup").pathschlägt der

Ich habe versucht, start-processein Cmdlet mit –verb runasOptionen zu verwenden, um einen anderen Sicherheitskontext zu erhalten, bin jedoch auf dasselbe Problem wie oben gestoßen.

Kann ich irgendwie

  • ([ADSI]"WinNT://MyCompanyDomain/MyDepartmentGroup").pathnur im Sicherheitskontext eines Domänenbenutzers auflösen und an den Rest meines Skripts weitergeben, das im Sicherheitskontext des lokalen Administrators ausgeführt wird (dies ist ungefähr die Vorgehensweise von compmgmt.msc).

oder

  • Erstellen Sie das [ADSI]-Objekt aus fest codierten Daten, ohne dass eine Verbindung zur Domäne erforderlich ist

oder

  • etwas anderes Offensichtliches, an das ich nicht gedacht habe

Antwort1

Sie können über die Datei eine Domänengruppe zu einer lokalen Gruppe hinzufügen unattend.xml, sodass keine Skripts erforderlich sind.

Bearbeiten von Unattend.xml über System Image Manager (SIM)

Suchen Sie nach dem Öffnen Ihrer unattend.xmlSIM in der unteren linken Ecke des Fensters nach dem Knoten für Microsoft-Windows-Shell-Setup.(Notiz:Sie sollten den Knoten verwenden, der der Architektur Ihres Images entspricht, also amd64 für 64-Bit-Plattformen.)Erweitern Sie den Knoten Shell-Setup und dann UserAccounts, DomainAccounts, und DomainAccountList. Klicken Sie mit der rechten Maustaste auf den DomainAccountKnoten und wählen Sie die Option zum Hinzufügen der Einstellung zum Passen von 7 (oobeSystem).Hinzufügen eines DomainAccount-Knotens zur unbeaufsichtigten Installation

In der Mitte des SIM-Fensters müssen Sie die neu hinzugefügten Knoten konfigurieren. DomainAccountListGeben Sie im Knoten als Wert den Namen Ihrer Domäne ein Domain.

Im DomainAccountKnoten Groupsollte der Wert auf den Namen der lokalen Gruppe gesetzt werden, die Sie ändern möchten, in diesem FallAdministratorenDer NameWert sollte auf den Namen der Domänengruppe gesetzt werden, die Sie der lokalen Gruppe hinzufügen möchten.

Manuelles Bearbeiten von Unattend.xml (nicht empfohlen)

Sie können die unattend.xmlDatei auch manuell in Ihrem bevorzugten Texteditor bearbeiten. Suchen Sie den <settings>Knoten für dieoobeSystemPass. Sie können den Knoten unten kopieren und ihn nach dem Knoten DomainAccountseinfügen . Denken Sie daran, die Knoten und im Knoten zu ändern, zusammen mit dem im Knoten angegebenen Domänennamen .unattend.xmlAdministratorPasswordGroupNameDomainAccountDomain

  <settings pass="oobeSystem">
    <component name="Microsoft-Windows-Shell-Setup" ... >
      <UserAccounts>
        <AdministratorPassword>
          <Value>mylocaladminpassword</Value>
          <PlainText>true</PlainText>
        </AdministratorPassword>
        <DomainAccounts>
          <DomainAccountList wcm:action="add">
            <DomainAccount wcm:action="add">
              <Group>Administrators</Group>
              <Name>Name-Of-Domain-Group-To-Add</Name>
            </DomainAccount>
            <Domain>DOMAIN_NAME_HERE</Domain>
          </DomainAccountList>
        </DomainAccounts>

verwandte Informationen