44 lines
1.8 KiB
Python
44 lines
1.8 KiB
Python
# -*- coding: utf-8 -*-
|
|
from setuphelpers import *
|
|
import platform
|
|
import win32com.client
|
|
|
|
# Prerequis :
|
|
# - Installer Windows Configuration Manager https://apps.microsoft.com/detail/9nblggh4tx22?rtc=1&hl=fr-fr&gl=FR
|
|
# - Créer et Configurer le projet "EnrollAAD" Le nom du poste dans le setup est à remplir mais sera écrasé
|
|
# - mettre le projet "EnrollAAD" dans le paquet et editer le paquet pour qu'il fonctionne.
|
|
|
|
|
|
def install():
|
|
# Requête WMI pour les informations Azure AD
|
|
results = run_powershell("(Get-CimInstance -ClassName Win32_ComputerSystem).DomainRole")
|
|
# Vérifier la présence d'AzureADDomainJoined
|
|
if results == 3 or 1 :
|
|
print("Le poste est joint à Azure AD ou a un ActiveDirectory, Le poste ne doit pas être joint à un domaine.")
|
|
return None
|
|
|
|
cmputername = platform.node()
|
|
print(cmputername)
|
|
new_lines = []
|
|
with open("EnrollAAD\\customizations.xml", "r", encoding="utf8") as f:
|
|
for line in f.readlines():
|
|
if line.startswith(" <DNSComputerName>"):
|
|
line = ' <DNSComputerName>"%s"</DNSComputerName>\n' % cmputername
|
|
new_lines.append(line)
|
|
with open("EnrollAAD\\customizations.xml", "w", encoding="utf8", newline="\n") as f:
|
|
f.writelines(new_lines)
|
|
|
|
run_powershell("Install-ProvisioningPackage -PackagePath EnrollAAD\\EnrollAAD.ppkg -QuietInstall -ForceInstall")
|
|
|
|
def audit():
|
|
# Requête WMI pour les informations Azure AD
|
|
results = run_powershell("(Get-CimInstance -ClassName Win32_ComputerSystem).DomainRole")
|
|
# Vérifier la présence d'AzureADDomainJoined
|
|
if results == 3 :
|
|
print("Le poste est joint à Azure AD.")
|
|
return "OK"
|
|
elif results == 1 :
|
|
print("Le poste est joint à un Domaine ActiveDirectory")
|
|
else:
|
|
print("Le poste n'est joint à aucun domaine")
|
|
return "ERROR" |