2010-04-07 2 views
4

Je travaille dans une page de connexion et Teh logique est comme ->Utilisez les informations d'identification par défaut afin d'appeler DirectoryEntry

try 
{ 
    DirectoryEntry LDAPLogin = new DirectoryEntry(ConfigurationSettings.AppSettings ["LDAPPath"].ToString(), Usuario, Txt_Contrasenia.Text.ToString()); 

    if (LDAPLogin.NativeGuid != LDAPLogin.Name) 
     ValidarGrupo(); 
} 
catch (Exception exc) 
{ 
    Label_Info.Text = "Sus credenciales no son validas: " + Usuario.ToString() + " " + exc.Message; 
} 

Si l'utilisateur entre les informations d'identification des droits que j'appelle une méthode ValidarGrupo qui implémente une recherche dans la AD pour un groupe de l'utilisateur

Je voudrais remplacer le nom d'utilisateur et mot de passe par UseDefaultCredentials afin d'éviter que l'utilisateur doit entrer le nom d'utilisateur et mot de passe et les pages de connexion utilisent les informations d'identification de l'utilisateur qui se connecte la machine.

Répondre

2

Je voudrais remplacer le nom d'utilisateur et mot de passe avec UseDefaultCredentials afin de éviter que l'utilisateur doit entrer le nom d'utilisateur et mot de passe et le login pages utilisent les informations d'identification de l'utilisateur qui est connexion sur la machine.

Donc, vous voulez essentiellement vérifier si l'utilisateur actuellement connecté est valide?

Je crois que vous pouvez simplement créer simplement le DirectoryEntry sans spécifier le nom d'utilisateur/mot de passe - dans ce cas, System.DirectoryServices utilisera automatiquement les informations d'identification de l'utilisateur actuel:

string ldapPath = ConfigurationSettings.AppSettings ["LDAPPath"]; 
DirectoryEntry LDAPLogin = new DirectoryEntry(ldapPath); 

Cela devrait être suffisant, je crois!

+0

Dans ce cas, savez-vous si je peux extraire l'utilisateur de DirectoryEntry, autrement dit le nom d'utilisateur actuel – Copeleto