Impersonation - advapi32.dll

Signaler
Messages postés
379
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
20 avril 2011
-
Messages postés
586
Date d'inscription
lundi 7 janvier 2002
Statut
Membre
Dernière intervention
10 février 2010
-
Bonjour,


j'utilise "l'impersonation", l'emprun d'identité, afin de copier des
fichiers dans un répertoire partagé sur mon réseau et qui n'autorise
qu'un utilisateur bien spécifique.


Pour cela, j'utilise l'API advapi32.dll.


Tout fonctionne nickel chrome quand l'utilisateur "toto" est
administrateur de la machine qui herberge l'application Web ASP.NET.

Mais bon, je veux pas qu'il soit admin "toto", et dès que je le retire
du goupe admin : ça marche plus ! l'application n'arrive plus à changer
d'identité : "erreur d'identification".


Si on regarde du coté des evenements, on voit :


Échec d'accès :

     Raison :    Il n'a pas été accordé à l'utilisateur le

         type de session demandé sur cet ordinateur

     Nom de l'utilisateur :    toto

     Domaine :        test

     Type de session :    2

     Processus d'ouverture de session :    Advapi 

     Package d'authentification :    MICROSOFT_AUTHENTICATION_PACKAGE_V1_0

     Nom de station de travail :    srv_test


Donc voilà, le type de session 2 est "Session Interactive".


Il faut donc configurer le serveur (IIS ou Windows 2000 Server) pour
autoriser l'utilisateur à faire ce genre de manip, mais je ne sais po
comment !!!!


Merci d'avance pour votre aide, si quelqu'un a une idée...


Seb.

6 réponses

Messages postés
540
Date d'inscription
dimanche 29 décembre 2002
Statut
Modérateur
Dernière intervention
13 mai 2011

Messages postés
379
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
20 avril 2011
1
Salut,

C'est l'API advapi32.dll

Mais ce n'est pas vraiment une erreur. Elle fait son boulot, rien
de plus : elle essaye d'ouvrir une session interactive, elle y arrive
pas car le compte utilisateur n'est pas admin sur le serveur, elle me
dit "je peux pas, désolé...".


Le problème vient donc plus de la configuration du serveur, a moins que je fasse fausse route ?


Seb.
Messages postés
540
Date d'inscription
dimanche 29 décembre 2002
Statut
Modérateur
Dernière intervention
13 mai 2011

Ce n'est pas une API, c'est une DLL......je suppose que ton erreur survient lors de l'appel à LogonUser.

Regardes le code que j'ai posté, j'utilise LOGON32_LOGON_NETWORK et non LOGON32_LOGON_INTERACTIVE lors de l'appel à l'API LogonUser.

Poppyto
Cours de basse gratuits avec vidéos et ralentis
Cours de guitare gratuits avec vidéos et ralentis/A>
Messages postés
379
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
20 avril 2011
1
Heuuuuuu si si, on appel ça une API, enfin je crois... non ? Mais ce n'est pas le débat du jour...


Je v tester le LOGON32_LOGON_NETWORK et je te tiens au courant.


Merci pour ton aide,


Seb.
Messages postés
540
Date d'inscription
dimanche 29 décembre 2002
Statut
Modérateur
Dernière intervention
13 mai 2011

Une API, c'est une fonction issue d'une Librairie du système, LES Apis sont l'ensembles des fonctions proposés par le système via les Librairies ;o)

Bon courage ! ;)

Poppyto
Cours de basse gratuits avec vidéos et ralentis
Cours de guitare gratuits avec vidéos et ralentis/A>
Messages postés
586
Date d'inscription
lundi 7 janvier 2002
Statut
Membre
Dernière intervention
10 février 2010
1
pour info:http://fr.wikipedia.org/wiki/Application_programming_interface

pour l'impersonation
The identity of the process that impersonates a specific user on a thread must have the "Actas part of the operating system" privilege if the Aspnet_wp.exe process is running on a Microsoft Windows 2000-based computer.

Example fourni par Microsoft:
http://support.microsoft.com/default.aspx?scid=kb;EN-US;Q306158

yopyop