Blog de ILINFO

Trucs et astuces

Blog ILINFO Active DIrectory MIIS LDAP ADAM PCA PRA BCP DRP

Log in

Gpresult Access Denied

by Emmanuel Dreux mars 30, 2009 23:31

Problème:

Après une migration de domaine réalisée à l'aide d'ADMT les utilisateurs reçoivent un ACCESS DENIED lors de l'utilisation de Gpresult.exe.
Problème cosmétique, la commande se déroule pourtant correctement.
En lançant à distance l'outil rsop.msc, 2 SID sont proposés pour le même utilisateur.

Explication:

Le problème survient du fait que sous le namespace root\RSOP\Users, l'ensemble des SID des utilisateurs qui se sont logués sur la station et qui ont par conséquent eu des GPO appliquées sont stockés sous ce namespace.
Lors du gpresult, celui ci fait une requête WMI et tente de récupérer les informations de l'utilisateur. Il subsiste le SID de l'utilisateur avant migration et gpresult s'enmêle alors les pinceaux, même si à priori les permissions semblent correctement positionnées.

Résolution:

Pour remédier à ce problème, il suffit de supprimer toutes les entrées "SID" sous le namespace root\RSOP\Users à l'aide du script ci dessous.

Ces entrées seront dynamiquement recréées lorsque les GPO se réappliqueront à un utilisateur logué, elles peuvent donc être supprimer sans impact.

--------------------   RepairWMI.vbs     ---------------------
strComputer = "."
Call EnumNameSpaces("root\RSOP\user")
 
Sub EnumNameSpaces(strNameSpace)
    'WScript.Echo strNameSpace
    Set objWMIService=GetObject _
        ("winmgmts:{impersonationLevel=impersonate}\\" & _
            strComputer & "\" & strNameSpace)

    Set colNameSpaces = objWMIService.InstancesOf("__NAMESPACE")

    For Each objNameSpace In colNameSpaces
        if ( Instr(objNameSpace.Name,"S_1_5_21")) Then
                wscript.echo "Suppression de " & objNameSpace.Name
                strPath = _
                "winmgmts:\root\RSOP\user:__Namespace.Name='" & objNameSpace.Name & "'"
                GetObject(strPath).Delete_

        Else
                Call EnumNameSpaces(strNameSpace & "\" & objNameSpace.Name)
        End If
    Next
End Sub
--------------------------------------------------------------

Actuellement noté 5.0 par 1 personne(s)

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: , , , ,

Commentaires

Ajouter un commentaire


(Affichera votre icône Gravatar)  

  Country flag

biuquote
  • Commentaire
  • Aperçu immédiat
Loading