Utilisateur incorrect après compilation, mais valide à l'interprétation
happexamendios
Messages postés17Date d'inscriptionmardi 20 juillet 2004StatutMembreDernière intervention 3 août 2005
-
19 oct. 2004 à 10:42
happexamendios
Messages postés17Date d'inscriptionmardi 20 juillet 2004StatutMembreDernière intervention 3 août 2005
-
20 oct. 2004 à 11:36
Bonjour,
j'ai une procédure qui est censée me mettre un utilisateur spécifié dans un groupe global de mon active directory.
le code utilise des droits et le mot de passe d'un utilisateur authentifié et tout fonctionne bien jusqu'à ce que le code soit compilé. Dés lors que l'executable est créé, l'utilisateur autorisé à accéder à l'AD n'est pas reconnu.
ça me déprime complétement car cela fait pas mal de temps que je suis sur ce problème sans comprendre le pourquoi du comment.
voici mon code :
-------------------------
Explication des variables :
CHEMIN_ADS est une chaîne de type cn=nom_user,ou=truc, ou=machin,dc=bidule,dc=com
User_authentifié est une une chaîne de même type, mais avec le chemin de l'utilisateur duquel on va récupérer les droits
mdpuser_authentifié contient le mot de passe de user_authentifié pour l'accès à l'AD.
------------------------------
Public Sub Ajout_GROUPE(Chemin_ADS As String)
Dim objuser, objGroup, objNS
On Error GoTo gest_erreur
Set objNS = CreateObject("LDAPNamespace")
MsgBox "connexion à l'AD"
Set objGroup = objNS.OpenDSObject("LDAP://CN=groupe_où_ajouter_l'utilisateur,ou=xxx,ou=groups,dc=machin,dc=truc,dc=com", User_authentifié, mdpUser_authentifié, 1)
MsgBox "test du groupe"
If Not objGroup.IsMember(Chemin_ADS) Then 'contrôle que l'utilisateur ne soit pas déjà dans le groupe
objGroup.Add (Chemin_ADS) 'ajoute l'utilisateur au groupe
MsgBox "ajout ok"
objGroup.SetInfo 'enregistre l'ajout
End If
Exit Sub
gest_erreur:
Select Case Err.Number
Case 0 'pas d'erreur
Case 5 'argument incorrect : avertissement de l'utilisateur
MsgBox "Le nom spécifié est incorrect," + vbCrLf + "On ne peut pas changer l'attribution de groupe", vbCritical, "Erreur"
Exit Sub 'sort de la procédure
Case -2147023570
MsgBox "Erreur d'utilisateur !"
MsgBox User + vbCrLf + Mdp
Case Else 'pour toute autre erreur :
MsgBox "Erreur N°" + Str(Err.Number) + " :" + vbCrLf + Err.Description, vbCritical, "Erreur"
Exit Sub 'sort de la procédure
End Select
------------------------------------------------
voilà, je pense pas qu'il y'ait grand chose de sorcier là dedans, mais quel que soit la façon dont j'attaque le code (en passant par des variables ou en mettant directement les chemin et mot de passe de user_authentifié en dur, le résultat est le même : ça marche en code interprété mais pas une fois compilé...
si quelqu'un avait la moindre idée, ça serait sympa car cette procédure est une base essentielle de mon prog d'admin
merci d'avance
A voir également:
Utilisateur incorrect après compilation, mais valide à l'interprétation