Comment accorder à un compte d'utilisateur local l'autorisation d'ajouter d'autres utilisateurs locaux dans Windows 7 Professional? L’important est que l’utilisateur local susceptible de créer de nouveaux comptes ne dispose pas des privilèges d’administrateur.
Je n'ai pas trouvé de stratégie de groupe locale permettant d'accorder la permission de créer des utilisateurs pour un compte spécifique. J'ai donc essayé de créer les utilisateurs via un script PowerShell:
$user = Read-Host "Please enter username"
$objOu = [ADSI]"WinNT://$env:computername"
$objUser = $objOu.Create("User", $user)
$objUser.setPassword("DefaultS3cr3t")
$objUser.setInfo()
$objUser.description = "Simple User"
$objUser.passwordExpired = 1
$objUser.setInfo()
$group = [ADSI]"WinNT://$env:computername/Users,group"
$group.Add("WinNT://$user,user")
Lorsque j'exécute ce script avec des privilèges d'administrateur, il fonctionne comme prévu.
Pour permettre à un utilisateur normal d'exécuter ce script sans perdre le mot de passe de l'administrateur, j'ai essayé d'utiliser un "agent d'entiercement" comme décrit ici: http://powershell.com/cs/blogs/tobias/archive/2010/10 /28/regular-users-running-admin-scripts-safe.aspx
Le problème est que la tâche est exécutée en arrière-plan (car elle est exécutée en tant qu'utilisateur non connecté). Par conséquent, le nom d'utilisateur ne peut pas être entré.
L'utilisation d'un "SecureString" pour enregistrer le mot de passe n'est pas une option, car le mot de passe admin serait extractible pour l'utilisateur normal.
Existe-t-il un moyen d'accorder à un utilisateur normal l'autorisation de créer d'autres utilisateurs normaux sans octroyer de privilèges d'administration complets?
Je me suis rendu compte que l'utilisation d'un script PowerShell en deux étapes résout mon problème. J'ai écrit un script de service, qui est lancé par le planificateur de tâches Windows avec les privilèges d'administration complets décrits dans ce lien: http://powershell.com/cs/blogs/tobias/archive/2010/10/28/regular-users- en cours d'exécution-admin-scripts-safe.aspx
La tâche de service ouvre ensuite un canal nommé et écoute une connexion client. Le canal est sécurisé par sa liste de contrôle d'accès, de sorte que seul l'utilisateur qui crée et le compte d'utilisateur local, qui devrait pouvoir créer des utilisateurs locaux, peuvent le lire / l'écrire. J'ai développé un protocole simple en texte clair pour lister et ajouter des utilisateurs. Le script de service effectue l'ajout d'utilisateurs et l'interface sert uniquement à répertorier les utilisateurs et à appeler la commande "add".
Les deux scripts sont en outre sécurisés par des autorisations restrictives du système de fichiers afin d’empêcher toute modification.
la source