[GELÖST] Prüfen, ob ein PC in einer Domäne ist

Fragen zu WAPT-Paketen / Anfragen und Hilfe bezüglich WAPT-Paketen.
Forumregeln
Community-Forumregeln
* Englischer Support auf www.reddit.com/r/wapt
* Französischer Community-Support ist in diesem Forum verfügbar.
* Bitte kennzeichnen Sie gelöste Themen mit [GELÖST].
* Bitte bearbeiten Sie keine Themen, die mit [GELÖST] markiert sind. Erstellen Sie stattdessen ein neues Thema und verweisen Sie auf das alte.
* Geben Sie die installierte WAPT-Version, die vollständige Versionsnummer und die Build-Nummer (2.2.1.11957 / 2.2.2.12337 / usw.) sowie die Enterprise-/Discovery-Edition an.
* Versionen 1.8.2 und älter werden nicht mehr unterstützt. Fragen zu Version 1.8.2 werden nur beantwortet, wenn sie sich auf ein Upgrade auf eine unterstützte Version (2.1, 2.2 usw.) beziehen.
* Geben Sie das Server-Betriebssystem (Linux/Windows) und die Version (Debian Buster/Bullseye – CentOS 7 – Windows Server 2012/2016/2019) an.
* Geben Sie gegebenenfalls das Betriebssystem des Administrations-/Paketerstellungsrechners und des Rechners mit dem problematischen Agenten an (Windows 7/10/11/Debian 11/etc.).
* Vermeiden Sie es, mehrere Fragen in einem Thema zu stellen, da diese sonst möglicherweise ignoriert werden. Falls mehrere Themen relevant sind, erstellen Sie bitte separate Themen, vorzugsweise nacheinander und nicht gleichzeitig (d. h. vermeiden Sie Spam im Forum).
* Fügen Sie Code-Snippets, Screenshots und andere Bilder direkt in Ihren Beitrag ein. Links zu Pastebin, Bitly und anderen Drittanbieterseiten werden systematisch entfernt.
* Wie in jedem Community-Forum erfolgt die Unterstützung freiwillig durch die Mitglieder. Für kommerziellen Support kontaktieren Sie bitte den Vertrieb von Tranquil IT unter +44 2 40 97 57 55.
Gesperrt
Gälen
Nachrichten: 254
Anmeldung: 22. November 2015 - 08:37 Uhr

16. Juni 2020 - 12:21 Uhr

Guten Morgen,
Ich möchte in einem Paket prüfen, ob ein PC meiner Domäne oder einer Arbeitsgruppe angehört. Die unten stehende Funktion ist jedoch ungeeignet, da `socket.getfqdn()` unabhängig davon, ob sich der PC in einer Arbeitsgruppe mit einer per DHCP (von der Domäne) zugewiesenen IP-Adresse befindet oder der Domäne PEDAGO.lan angehört, immer denselben Namen zurückgibt (z. B. PCNAME.PEDAGO.lan).

Code: Alle auswählen

def domain():
    if ("PEDAGO.lan" in socket.getfqdn()):
        dom="PEDAGO"
    else:
        print('PC en workgroup')
        dom="WG"
    return dom
Benutzeravatar
Sfonteneau
WAPT-Experte
Nachrichten: 2322
Registriert: 10. Juli 2014 - 23:52 Uhr
Kontakt:

16. Juni 2020 – 14:59 Uhr

Das kannst du versuchen!

Code: Alle auswählen

get_domain_fromregistry()
Gälen
Nachrichten: 254
Anmeldung: 22. November 2015 - 08:37 Uhr

16. Juni 2020 – 15:18 Uhr

Danke, aber es ist nicht besser... Auf einem Win10-PC in einer Arbeitsgruppe mit aktiviertem DHCP gibt der Befehl PEDAGO.lan anstelle von "Workgroup" oder gar nichts zurück.
Benutzeravatar
Sfonteneau
WAPT-Experte
Nachrichten: 2322
Registriert: 10. Juli 2014 - 23:52 Uhr
Kontakt:

16. Juni 2020 – 18:12 Uhr

Code: Alle auswählen

import win32security
win32security.DsGetDcName()['DomainName']
oder falls der Test offline ist:

Code: Alle auswählen

registry_readstring(HKEY_LOCAL_MACHINE,r'SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\History','NetworkName',None)
Gälen
Nachrichten: 254
Anmeldung: 22. November 2015 - 08:37 Uhr

17. Juni 2020 - 08:42 Uhr

Vielen Dank! Der Registry-Test funktioniert einwandfrei; der erste Test stürzt ab, wenn sich der PC in einer Arbeitsgruppe befindet.

Schönen Tag noch,
Gaël.
Gälen
Nachrichten: 254
Anmeldung: 22. November 2015 - 08:37 Uhr

19. Juni 2020 – 16:05 Uhr

Ja, das ist seltsam …
Aber selbst mit dem Registry-Test erhalte ich fehlerhafte Ergebnisse auf PCs, die zwar früher in der Domäne waren, es aber nicht mehr sind. Vermutlich wird der Registry-Wert nicht aktualisiert, wenn sie die Domäne verlassen.
Benutzeravatar
Sfonteneau
WAPT-Experte
Nachrichten: 2322
Registriert: 10. Juli 2014 - 23:52 Uhr
Kontakt:

19. Juni 2020 – 18:05 Uhr

Ja, in der Tat
Gesperrt