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

ASP.NET Discussion :

Login session Windows : réutilisable ?


Sujet :

ASP.NET

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 56
    Points : 21
    Points
    21
    Par défaut Login session Windows : réutilisable ?
    Bonjour à tous,


    Voilà. J'ai conçu une appli web en VB.NET avec une page de login pour accéder à l'application : cette page de login est basée sur l'Active Directory.

    Aujourd'hui, suite à une nouvelle demande d'évolution, on me demande de récupérer l'authentification lors de l'ouverture de la session windows. Est-ce possible déjà ? Et si oui, pouvez-vous m'indiquer quelques éléments car je n'arrive pas à orienter ma recherche sur les moteurs de recherche ?

    Exemple : le matin, madame X (login : mmeX et mdp : mdpX) se connecte à Windows et ouvre sa session. Elle ouvre Internet Explorer et va sur l'appli disponible sur l'intranet de sa société. Et hop ! Elle aboutit directement à la page personnalisée (avec son nom et toutes ses informations), sans avoir à aucun moment à se reloger !!

    Je pense que .NET fournit des objets pour ça, mais google me ressort que les résultats avec "authentification windows" au moment de la connexion à l'application !! Et c'est pas ça que je veux.


    Un coup de main ne serait pas du luxe :-)
    Merci

  2. #2
    Membre régulier
    Inscrit en
    Juin 2003
    Messages
    82
    Détails du profil
    Informations forums :
    Inscription : Juin 2003
    Messages : 82
    Points : 92
    Points
    92
    Par défaut
    Bonjour,

    Pour récupérer le login de l'utilisteur il suffit de faire ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
        public static String GetMatricule()
        {
            //définition en variable de session du matricule de l'utilisateur
            //on récupère le login NT       
            String Matricule = System.Web.HttpContext.Current.User.Identity.Name;
            //on supprimer le nom de domaine
            Matricule = Matricule.Substring(Matricule.IndexOf("\\") + 1);
            return Matricule;   
        }
    Voilà,

    L'authentification doit être authentification Windows sous IIS.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 56
    Points : 21
    Points
    21
    Par défaut
    Merci beaucoup pour ta réponse :-)
    J'ai trouvé aussi du code avec la classe WindowsIdentity.


    Toutefois, j'ai une nouvelle demande. Mon appli intranet doit récupérer des informations dans l'Activde Directory (email et adresse).
    Jusqu'à présent, avec la page de login où l'utilisateur saisissait son login et mot de passe (et domaine), je pouvais récupérer les infos facilement.

    Si mon appli récupère automatiquement le login de l'utilisateur connecté, comment je fais pour me connecter à l'Active Directory (étant donné que je ne connais ni le domaine, ni le mot de passe de l'utilisateur puisqu'il ne le saisit plus !!!!) ????

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 56
    Points : 21
    Points
    21
    Par défaut
    Finalement, j'ai trouvé un moyen.

    Connexion à l'AD avec un compte "administrateur" (paramètres du web.config) puis récupération des informations nécessaires sur la personne récupérée à partir du windowsIdentity.

    Cool :-)

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 35
    Points : 23
    Points
    23
    Par défaut
    Bonjour,

    j'aimerai savoir comment tu as procédé pour faire cela?
    J'ain une appli web asp.net qui tourne en intranet. Je voudrai utiliser l'authentification windows car l'entreprise utilise AD pour la gestion des comptes utilisateurs.

    Une fois que j'arrive à récupérer le login (clé unique), comment récupérer les infos relatives à ce login (nom, prenom, coordonées etc).

    Merci d'avance.

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 35
    Points : 23
    Points
    23
    Par défaut
    Bonjour,

    je développe sous XP et j'utilise ADAM pour émuler AD.
    J'arrive bien à récupérer le login de session en cours.
    J'ai configuré ADAM de telle manière que mon compte (session courant) est le compte administrateur pour ADAM. J'ai créé des users fictifs.

    Mon lien ldap est:

    LDAP://localhost:389/o=test; cn=roles; cn=users.
    Je suis dans le groupe users, donc j'arrive bien a recupérer l'attribut membre de ce groupe. Le probleme est que ca me donne un texte long du genre:

    CN=S-1-5-21-3160145482-2940349184-89131578-1042,CN=ForeignSecurityPrincipals,O=test CN=adminAda,OU=Users,O=test CN=Administrators,CN=Roles,CN=Configuration,CN={3A1E675B-1D18-44F6-AB73-74BD3A0F2F07}

    Ce sont les 3 utilisateurs: comment par la suite recupérer l'objet user (une personne) et récupérer son adresse, mail, ou autre coordonnées.

    Aussi je voudrai savoir comment récupérer le lien ldap unique qui identifie l'user courant (session courant). Car si j'utilise la méthode newEntry(lienLDAP, user, pass) je renseigne le user/pass administration or pour le compte courant je ne sais pas récupérer le mdp.

    Une réponse? dite moi si c'est faisable?
    merci d'avance

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 35
    Points : 23
    Points
    23
    Par défaut
    J'ai réussi à récupérer les informations que je veux de la session courante...

    Afin de ne pas renseigner le lien LDAP manuellement, j'aimerai savoir si on peut récupérer les informations d'un compte AD à partir de l'userid ou du SID de la session courante?

    J'ai trouvé un code sur le net mais ca ne fonctionne pas, peut être que je n'utilise réellement pas AD, je simule par ADAM...

    Merci...

Discussions similaires

  1. Comment récupérer en PHPle login de la session windows
    Par l.laurent60 dans le forum Langage
    Réponses: 2
    Dernier message: 14/09/2010, 11h13
  2. Récupérer le login de session Windows
    Par Chacha35 dans le forum Windows Forms
    Réponses: 2
    Dernier message: 05/10/2009, 13h47
  3. Réponses: 3
    Dernier message: 19/09/2006, 13h29
  4. Récupération login session windows
    Par the java lover dans le forum Servlets/JSP
    Réponses: 8
    Dernier message: 26/08/2006, 10h28
  5. recupération login session windows
    Par aKill dans le forum C++Builder
    Réponses: 1
    Dernier message: 18/04/2006, 12h56

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