2016-04-25 18 views
-4

Erhalten Sie bekam ich Webforms von IIS gehosteteBenutzerinformationen aus Active Directory asp.net Webforms C#

Sie können mithilfe von Active Directory-Benutzernamen an diesem Webformular Website einloggen und Passwort

Wie kann ich die anderen Informationen erhalten diesen Benutzers wie Vor- und Nachnamen aus dem Active Directory das ist mein aktueller Code auf der Seite Last nach einem Erfolg Anmeldung.

protected void Page_Load(object sender, EventArgs e) 
     { 
    FormsIdentity id = (FormsIdentity)User.Identity; 
     FormsAuthenticationTicket ticket = id.Ticket; 
     Response.Write("<p/>TicketName: " + ticket.Name); //this ticket.name is the current username logged to the form 
     Response.Write("<br/>Cookie Path: " + ticket.CookiePath); 
     Response.Write("<br/>Ticket Expiration: " + 
         ticket.Expiration.ToString()); 
     Response.Write("<br/>Expired: " + ticket.Expired.ToString()); 
     Response.Write("<br/>Persistent: " + ticket.IsPersistent.ToString()); 
     Response.Write("<br/>IssueDate: " + ticket.IssueDate.ToString()); 
     Response.Write("<br/>UserData: " + ticket.UserData); 
     Response.Write("<br/>Version: " + ticket.Version.ToString()); 
     } 

Weitere Infos, ich authentication mode = „Forms“ im Web verwenden. Konfig Framework 4.0

+0

etwas, was wirklich faul hier. sie markierten meine eigene Antwort. diese Antwort kann eine Menge Leute in der Zukunft helfen. etwas ist falsch von diesem Forum. sie melden weiterhin alle Fragen und jetzt meine Antwort. – listojay

Antwort

0

Versuchen Sie, PrincipalContext zu verwenden. Zum Beispiel Benutzer-Passwort manuell überprüfen, können Sie diesen Code verwenden können:

using (var context = new PrincipalContext(ContextType.Domain, "MyAdName")) 
{ 
    var isValidUser = context.ValidateCredentials(model.UserName, model.Password); 
    if (!isValidUser) 
    { 
    //Do the staff 
    } 
} 

Sie können Sie in context finden, was.

Und auch, überprüfen Sie bitte diesen Beitrag: get first name last name of logedin windows user?

+0

in Ihrem Code. Was ist ein Modell? Modelldosis existiert im aktuellen Kontext nicht. Muss ich etwas importieren? danke .. model.UserName, model.Password – listojay

+0

model.Username, model.Password sind Eingabedaten aus meiner Sicht (Formular) .Sie können alles weitergeben, was Sie brauchen. –

+0

Ich denke, dass Ihr Code eine statische Funktion ist. nicht vollständige Antwort. aber irgendwie habe ich die Idee von Ihrem Code bekommen. Danke. – listojay

Verwandte Themen