IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Scripts/Batch Discussion :

Problème accès base de registre [PowerShell]


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2017
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Transports

    Informations forums :
    Inscription : Octobre 2017
    Messages : 66
    Par défaut Problème accès base de registre
    Bonjour,

    Je débute en PS, j'ai récupéré ce bout de script pour renseigner la description d'un ordinateur en W10. Le script complet doit me permettre de renseigner la description de l'ordinateur, indiquer le nom de l'ordinateur et le rentrer dans un Domaine AD. Mais je rencontre plusieurs problèmes de sécurité déjà pour lancer le script en lui même, je pense l'avoir résolu avec Set-ExecutionPolicy -Scope CurrentUser en tout cas pour la première partie du script, une fois ce dernier lancé je dois juste réindiquer bypass et je peux saisir la description de l'ordinateur par contre tout de suite après je tombe sur un accès refusé, je pense que c'est un problème d'accès à la base de registre?? Je séche sur le sujet, je suis en W10 en session admin

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Set-ExecutionPolicy -Scope CurrentUser
    $Descrip_ordi = Read-Host -Prompt 'Description ordinateur (ne pas ajouter XX\ :)'
    #$Ordinateur = Read-Host -Prompt 'Nom de l''ordinateur'
    
    $OSWMI=Get-WmiObject -class Win32_OperatingSystem
    $OSWMI.Description="XX\$Descrip_ordi"
    $OSWMI.put()

    Exception lors de l'appel de «*Put*» avec «*0*» argument(s)*: «*Accès refusé *»
    Au caractère E:\1-CONFIGURATION DE POSTE\forumaddmachinAD1.2.ps1:7 : 1
    + $OSWMI.put()
    + ~~~~~~~~~~~~
    + CategoryInfo : NotSpecified: ( [], MethodInvocationException
    + FullyQualifiedErrorId : DotNetMethodException




    en .bat ça passe très bien:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     @echo off
    set /p descrip="entrer la description de l'ordi"
    REG ADD HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters /v srvcomment /t REG_SZ /d "PN\%descrip%" /f
    pause

    Mon script complet donne ça, à cause des erreurs de sécu le rename ne fonctionne pas. par contre une fois le nom rentré en passant par le mode graphique la ligne de commande rentrant le poste dans le domaine fonctionne.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Set-ExecutionPolicy -Scope CurrentUser
    $Descrip_ordi = Read-Host -Prompt 'Description ordinateur (ne pas ajouter XX\ :)'
    $Ordinateur = Read-Host -Prompt 'Nom de l''ordinateur'
    
    $OSWMI=Get-WmiObject -class Win32_OperatingSystem
    $OSWMI.Description="XX\$Descrip_ordi"
    $OSWMI.put()
    
    Rename-Computer -NewName "$Ordinateur"
    add-computer -DomainName XXXXXXX.FR -Credential Domain\admin_user -restart-force

  2. #2
    Membre confirmé
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2017
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Transports

    Informations forums :
    Inscription : Octobre 2017
    Messages : 66
    Par défaut
    La partie modification du nom fonctionne en lançant Powershell (admin) puis en allant chercher mon script .\monscript.ps1 mais c'est lourd. Le script devant être utilisé à chaque nouvelle machine installée dans l'entreprise ça ne fait pas gagner de temps...
    J'ai essayé :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    #Set-ExecutionPolicy -Scope CurrentUser
    Enable-Privileges
    $Ordinateur = Read-Host -Prompt 'Nom de l''ordinateur'
    Rename-Computer -NewName "$Ordinateur"
    add-computer -DomainName XXXXXXX.FR -Credential Domain\admin_user -restart-force
    pause
    [/CODE]

    Mais pas mieux toujours le même message.


    Rename-Computer : L’ordinateur « Portable_Aurel » n’a pas pu être renommé en « Portable5 » en raison de l’exception suivante : Accès
    refusé.
    Au caractère E:\testjusterename.ps1:4 : 1
    + Rename-Computer -NewName "$Ordinateur"
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo : OperationStopped: (Portable_Aurel:String) [Rename-Computer], InvalidOperationException
    + FullyQualifiedErrorId : FailToRenameComputer,Microsoft.PowerShell.Commands.RenameComputerCommand

  3. #3
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 218
    Par défaut
    Afin de faire simple, tu peux gérer l’élévation de privilège dans ton script

    https://www.petri.com/run-powershell...ive-privileges

  4. #4
    Membre confirmé
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2017
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Transports

    Informations forums :
    Inscription : Octobre 2017
    Messages : 66
    Par défaut
    Ok merci je vais tester ça, j'avais vu ce site mais j'étais perdu dans mes tests....

    J'ai réussi à me débrouiller avec ça pour le moment, en passant par un .bat qui gére l'élévation de droits :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    powershell -noprofile -command "Set-ExecutionPolicy bypass LocalMachine"
    
    powershell -file "%~dp0\rename.ps1"

  5. #5
    Membre confirmé
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2017
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Transports

    Informations forums :
    Inscription : Octobre 2017
    Messages : 66
    Par défaut
    Citation Envoyé par ericlm128 Voir le message
    Afin de faire simple, tu peux gérer l’élévation de privilège dans ton script

    https://www.petri.com/run-powershell...ive-privileges


    Je viens de tester, cela ne solutionne pas mon problème car apparement W10 bloque l'exécution de script ce qui veut dire que pour chaque nouvelle machine à installer je devrais d'abord lancer PowerShell en mode admin en lui indiquant

    Set-ExecutionPolicy -Scope CurrentUser» puis l'option "Unrestricted" ensuite Oui qui potentiellement ouvre une faille de sécu sur les postes clients se trouvant dans l'AD et ensuite effectivement quand je lance mon script une fenetre UAC s'affiche j'exécute le script et cela fonctionne mais au final ça ne me fait pas gagner de temps par rapport à la méthode graphique.

    Du coup je réitère ma question est il possible de lancer directement sur une machine fraichement installée en W10 un script powershell en élévation de privilèges sans avoir à faire la manip cité ci-dessus et de manière simple . Sinon je crois que je me contenterai de lancer mon shell par un .bat.

    Merci d'avance

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Windows]accès base de registre windows
    Par Greg01 dans le forum API standards et tierces
    Réponses: 27
    Dernier message: 05/06/2007, 15h14
  2. acces base de registre
    Par foulla002 dans le forum Autres Logiciels
    Réponses: 1
    Dernier message: 12/07/2006, 15h11
  3. Problème accès base de données
    Par alainconnu dans le forum Outils
    Réponses: 3
    Dernier message: 27/04/2006, 09h31
  4. [VB] (débutant) erreur accès base de registre
    Par bandit boy dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 24/02/2006, 13h15
  5. accès base de registre en lecture
    Par dus dans le forum MFC
    Réponses: 4
    Dernier message: 02/09/2005, 12h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo