Bonjour à tous,
Voila mon cahier des charges:
Je souhaite lancer un script à l'ouverture de session en PowerShell avec les commandes : ipconfig /flushdns et ipconfig /registerdns
Os Windows 10 et Windows 7
Utilisateur pas admin
Voila ma problématique :
Pour exécuter la commande ipconfig /registerdns il faut une élévation de privilège. Je ne souhaite pas que mes utilisateurs soient administrateurs
J'ai fais deux script :
1er un bat : (placer dans une GPO à l'ouverture de la session windows)
2eme un PowerShell "dns-register.ps1":Code:powershell Start-Process -FilePath powershell.exe -Verb Runas -ArgumentList '-ExecutionPolicy bypass', '\\monserveur\dossiers\dns-register.ps1'
Si je lance le bat à partir de mon poste cela fonctionne car je suis administrateur, cependant si je le lance depuis une session utilisateur j'ai la fenêtre de contrôle de compte utilisateur qui apparait. Il faut saisir le login et mot de passe du compte administrateurCode:
1
2
3
4
5
6
7
8
9
10
11
12
13
14 #Chiffrement du mot de passe $Key = [byte]xx,xx,xx,xx,xx,xx,xx,xx,xx,xx,xx #"Monpassword" | Convertto-SecureString -AsPlainText -Force | ConvertFrom-SecureString -key $key| Out-file \\monserveur\dossiers\dns.txt #Connexion avec l'administrateur local $hostname= hostname $AdminName = $hostname + "\" + "Administrateur" $password = Get-Content \\monserveur\dossierss\dns.txt | Convertto-SecureString -Key $key $creds = New-Object -TypeName System.Management.Automation.PsCredential -ArgumentList ($AdminName, $Password) Enter-PSSession localhost -cred $creds ipconfig /flushdns ipconfig /registerdns exit
Ma question : Est il possible de lancer mon premier code en incluant les crédentials ? Avez vous une autre solution ?
Merci pour votre aide