Question Modification des droits sur dossiers

Plus d'informations
il y a 12 ans 3 mois #16553 par Stephane Parmantier
Bien le bonjour à tous, ravis d'avoir rejoint cette communauté d'entraide !

J'ai un soucis au niveau de ma programmation powershell.. Je vous explique le soucis.
Etant étudiant dans une entreprise Automobile, on m'a confié la mission de refaire un serveur telnet permettant aux cariste de se connecter sur le serveur avec les scanner pour scanner les astricle etc .. (Sans interet)
Jusqu'à là tout va bien. Mais pour effectuer une connexion telnet du premier coup il faut que le profil de l'utilisateur soit créé dans le repertoir c:\Users..
Sinon la connexion est perdu.

Mon script jusqu'à présent permet de créer des comptes de test extrait d'un fichier csv. J'aimerai leurs attribuer les droits en \"Fullcontrol\", qu'ils soient proprietaire du dossier.

Voici mon script :

Import-Csv .\ImportUsers.csv -delimiter \";\" |
foreach-object{

$comp = [adsi] \"WinNT://$env:computername\"
$user = $comp.Create(\"User\", $_.name)
$user.SetPassword(\"Passw0rD\")
$user.SetInfo()
$user.UserFlags = 64 + 65536 # ADS_UF_PASSWD_CANT_CHANGE + ADS_UF_DONT_EXPIRE_PASSWD
$user.SetInfo()

$group = [ADSI] \"WinNT://$($comp.name)/Users\"
$group.add($user.path)
$group = [ADSI] \"WinNT://$($comp.name)/TelnetClients\"
$group.add($user.path)
$group.setinfo()

$name = $utilisateurs.name
$path = ‘C:\Users‘

New-Item -ItemType directory -Name $_.name -Path $path

$strPath = 'C:\Users\$_.name'

& C:\Windows\system32\icacls $strPath /grant MLETLNT01\$($_.name):`(OI`)`(CI`)F /T /C /Q

}

Et voici le message :


Directory: C:\Users


Mode LastWriteTime Length Name
----

----
d---- 11/12/2013 10:18 100_TEST_A
C:\Users\@{name=100_TEST_A}.name: The system cannot find the file specified.
Successfully processed 0 files; Failed processing 1 files


En espérant avoir été plus ou moins clair dans mes propos, n'hésitez pas à me demander plus d'infos ..

Bien cordialement :side:

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

Plus d'informations
il y a 12 ans 3 mois #16559 par Laurent Dardenne
Salut,
le parseur a peut être un problème avec l'analyse de ta ligne de commande.
Tu devrais utiliser les balises code. Ensuite cette construction ne substitue pas la variable :
[code:1]$strPath = 'C:Users$_.name'[/code:1]

Enfin, pourquoi ne pas pas manipuler les ACLs directement avec Powershell ?

Tutoriels PowerShell

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

Plus d'informations
il y a 12 ans 3 mois #16567 par Stephane Parmantier
Effectivement j'avais des soucis dans mon code.. j'ai remarqué qu'il fallait revoir la syntaxe, de ce type
$($_.name)

Maintenant mon code me permet de créer les comptes depuis un fichier csv de leur affecter des paramètres et un mot de passe spécifique avec une première connexion telnet qui permet la creation du repertoire du profil.

Maintenant j'ai juste un petit soucis, c'est que je n'arrive pas à trouver comment modifier la description du compte .. Si quelqu'un à une idée.

PS : Je peux vous envoyer mon code si jamais quelqu'un rencontre un problem+e similaire ou qui s'en rapproche ..

Cordialement

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

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