Question script powershell RunAs Administrateur

Plus d'informations
il y a 2 ans 11 mois - il y a 2 ans 11 mois #30869 par Jo3300
Hello la communauté !
 J’ai l’habitude de mettre à jour les logiciels des postes utilisateurs de mon parc avec un petit script en GPO: « choco upgrade all -y » à l’ouverture de session.
Si vous ne connaissez pas, regardez le site de Chocolatey c'est génial, c'est un équivalent apt-get pour windows.
Très simple mais demande d'être éxécuter en mode administrateur.

Avec la crise sanitaire et le télétravail nous avons renforcé la sécurité de nos postes et retiré les droits admins des utilisateurs.Depuis à chaque nouvelle version de Firefox celle-ci ne peut pas s’installer car à l’ouverture de Firefox une fenêtre demande à l’utilisateur de se connecter avec des identifiants administrateurs.

Après avoir vérifié dans les logs Chocolatey mon script  « Choco upgrade » ne ne parvient pas installer car il n’est pas lancé en mode administrateur…

Pouvez vous m'aider à modifier mon script pour qu'il s'éxécute en mode admin svp?

J’ai trouvé sur des forums les paramètres ci-dessous à ajouter au début de mon script pour le lancer en mode administrateur, mais ça ne convient pas car il demande de saisir les identifiants du compte admin pour lancer le script.
 J’aimerai rendre cela invisible pour l’utilisateur, ou rajouter les identifiants dans des variables pour éviter la fenêtre de saisie.

Merci par avance pour votre aide!

 1ere version, fonctionnelle mais ouvre une fenêtre avec les identifiants:

$currentUser = New-Object Security.Principal.WindowsPrincipal $([Security.Principal.WindowsIdentity]::GetCurrent())$testadmin =
$currentUser.IsInRole([Security.Principal.WindowsBuiltinRole]::Administrator)
if ($testadmin -eq $false) {
Start-Process powershell.exe -Verb RunAs -ArgumentList ('-noprofile -noexit -file "{0}" -elevated' -f ($myinvocation.MyCommand.Definition))exit $LASTEXITCODE
}

choco upgrade all -y

--

Version du désespéré incomplète:

$username = 'Domaine\compteinstalladmin'
$password = 'motdepasseducompte'

$securePassword = ConvertTo-SecureString $password -AsPlainText -Force
$credential = New-Object System.Management.Automation.PSCredential $username, $securePassword

Start-Process powershell.exe -Verb RunAs -Credential $credential
# ma syntaxe est mauvaise elle ne passe pas

choco upgrade all -y

 
Dernière édition: il y a 2 ans 11 mois par Jo3300.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 2 ans 10 mois #30881 par Jonathan
Bonjour Eric,

Merci bcp pour ce retour :)
Mais le log chocolatey m'indique qu'il n'a pas été lancé en mode administrateur... Comme si le Run As Administrator ne se faisait pas.
Mon script tourne mais ne fonctionne pas, retour à la case départ :-(

Merci pour votre aide,
A bientôt

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.064 secondes
Propulsé par Kunena