ASP.NET Zone

Die ASP.NET Community. Alle Antworten rund um Microsoft® Webtechnologien
Willkommen bei ASP.NET Zone. Anmelden | Registrieren | Hilfe | Impressum | ASP.NET Zone Suchplugin

in
Home Blogs Foren FAQ Communities Fotos Downloads
Werbeanzeige

Windows User

Letzter Beitrag 10-28-2009, 11:26 von gerdon. 11 Antworten.
Beiträge sortieren: Zurück Weiter
  •  01-15-2008, 9:29 190014

    Windows User

    Hallo zusammen ich bin jetzt schon ewig auf der Suche nach einer Möglichkeit wie ich den angemeldeten Windows benutzername mit vb.net auslesen kann.

    Ich habe einiges probiert aber komme nicht auf die Lösung.



    Dim MeinKey As RegistryKey
            Dim MeinName As String
            MeinKey = Registry.CurrentUser.OpenSubKey("Software\Microsoft\Windows\CurrentVersion\Explorer")
            MeinName = MeinKey.GetValue("Logon User Name", "nicht gefunden")

    Diesen Schlüssel gibt es bei mir lokal. Es wird aber immer "nicht gefunden" ausgegeben.. sicherlich weil es eine asp ist und demnach der Schlüssel auf dem server gesucht wird?!? .. Aber wie kann ich den Schlüssel auf dem Client auslesen?

    Etliche andere Möglichkeiten aus dem Web haben mir auch nicht weitergeholfen... ich hoffe ihr könnt es.. ;))

    Mfg

    Nop

  •  01-15-2008, 9:41 190016 Antwort zu 190014

    AW: Windows User

    Nop:
    sicherlich weil es eine asp ist und demnach der Schlüssel auf dem server gesucht wird?!?
    genau das ist es :-)

    Nop:
    Aber wie kann ich den Schlüssel auf dem Client auslesen?
    ohne clientseitigem nicht zu empfehlendem ActiveX garnicht!
    Üblicherweise nutzt man die sogenannte Windows Authentifizierung des IIS, bzw. ASP.NET um an den Usernamen eines Windowsusers zu kommen.

    Nop:
    Etliche andere Möglichkeiten aus dem Web haben mir auch nicht weitergeholfen...
    welche z. B? eigentlich gibt es etliche Beispiele zur Authentifizierung von Benutzern. Auch hier im Forum.


    MfG
    Jürgen

    ASP.NET Zone Team Blogs | gutsch-online | sharpcms | .NET Stammtisch Konstanz-Kreuzlingen
    20.08.2010: See# Party - Die Community Konferenz am Bodensee

    ASP.NET Zone - Leitfaden für gute Postings
  •  01-15-2008, 9:54 190018 Antwort zu 190016

    AW: Windows User

    Jürgen Gutsch:

    ohne clientseitigem nicht zu empfehlendem ActiveX garnicht!
    Üblicherweise nutzt man die sogenannte Windows Authentifizierung des IIS, bzw. ASP.NET um an den Usernamen eines Windowsusers zu kommen.

    hast du denn ein Beispiel wie das geht? Oder irgend ne Referenz? Ich hab keine Ahnung wie ich den IIS befragen soll... :))

    DAnke für deine Hilfe... Mfg Nop

  •  01-15-2008, 10:05 190022 Antwort zu 190018

    AW: Windows User

    Hi,
    Nop:

    hast du denn ein Beispiel wie das geht? Oder irgend ne Referenz? Ich hab keine Ahnung wie ich den IIS befragen soll... :))


    wenn der User per Windowslogin am IIS angemeldet ist, kannst Du den Anmeldenamen mit

    Request.ServerVariables( "REMOTE_USER" )

    oder

    Request.ServerVariables( "AUTH_USER" )

    ggfs. auch über

    HttpContext.Current.User.Identity.Name

    auslesen.


    --
    Gruß, Stefan Falz
    Microsoft MVP - Visual Developer ASP/ASP.NET
    ASP.NET Consulting, Development, Coaching

    ASP.NET Zone - Leitfaden für gute Postings

    Xtopia 2008 - Gewinnspiel / Expression Studio und Xtopia Eintrittskarten zu gewinnen
  •  01-15-2008, 11:00 190032 Antwort zu 190022

    AW: Windows User

    aha... ok danke.. also wenn ich das so ausprobiere bekomme ich jeweils eine "9" zurückgeliefert.

    Ist das nun die interen ID zu einem User oder? Kann ich das denn dann irgendwie weiterführend benutzen um den Benutzernamen doch noch zu bekommen oder wars das? ;))

     

    danke..

    nop

  •  01-15-2008, 11:12 190033 Antwort zu 190032

    AW: Windows User

    Nop:

    aha... ok danke.. also wenn ich das so ausprobiere bekomme ich jeweils eine "9" zurückgeliefert.

    Aha? Interessant :) Gibt es denn einen User mit dem Namen 9 auf dem Webserver?



    --
    Gruß, Stefan Falz
    Microsoft MVP - Visual Developer ASP/ASP.NET
    ASP.NET Consulting, Development, Coaching

    ASP.NET Zone - Leitfaden für gute Postings

    Xtopia 2008 - Gewinnspiel / Expression Studio und Xtopia Eintrittskarten zu gewinnen
  •  01-15-2008, 11:57 190038 Antwort zu 190033

    AW: Windows User

    Also nicht das ich wüsste... normalerweise sind das alles grössere Zeichenketten. Und den rechner den es zurückgeben müsste ebenfalls mehr als ne 9 ;))
  •  01-15-2008, 12:14 190040 Antwort zu 190038

    AW: Windows User

    Hi,
    Nop:
    Also nicht das ich wüsste... normalerweise sind das alles grössere Zeichenketten. Und den rechner den es zurückgeben müsste ebenfalls mehr als ne 9 ;))

    bau mal bitte ein Testskript (sollte nur den notwendigen und relevanten Code beinhalten) und poste das dann hier. Ich kann mir nicht vorstellen, dass der Fehler bei den genannten Eigenschaften zu suchen ist.


    --
    Gruß, Stefan Falz
    Microsoft MVP - Visual Developer ASP/ASP.NET
    ASP.NET Consulting, Development, Coaching

    ASP.NET Zone - Leitfaden für gute Postings

    Xtopia 2008 - Gewinnspiel / Expression Studio und Xtopia Eintrittskarten zu gewinnen
  •  01-15-2008, 13:09 190042 Antwort zu 190040

    AW: Windows User

    also ich habs nun mal folgendermassen ausprobiert:

     



    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
           
            Response.Write(" next: " + Request.ServerVariables("REMOTE_USER"))
            Response.Write(" next: " + Request.ServerVariables("AUTH_USER"))
            Response.Write(" next: " + HttpContext.Current.User.Identity.Name.ToString)

    End Sub

    und die Ausgabe ist dann wie folgt:

    next: 9 next: 9 next: 9

  •  01-15-2008, 23:58 190091 Antwort zu 190042

    AW: Windows User

    Hallo Nop,

    Das sieht eigentlich klasse aus :)

    HttpContext.Current.User.Identity.Name.ToString ist übrigens einmal String zu viel :)
    Außerdem ist es doch eine Methode!? Kann mich auch täuschen, kenn mich nicht so gut mit VB.NET aus ;)
    HttpContext.Current.User.Identity.Name

    Überprüf mal die Einstellungen am IIS:

    1. Such dir mal die "Administratoroberfläche":
    üblicherweise %SystemRoot%\System32\Inetsrv\iis.msc
    Erstell dir am Besten eine Verknüpfung.

    2. "Administratoroberfläche" öffnen.

    3. Website auswählen -> Rechte Maustaste -> Eigenschaften -> Reiter "Verzeichnissicherheit" -> "Steuerung des anonymen Zugriffs und der Authentifizierung" Bearbeiten
    -> Häckchen raus bei "Anonymer Zugriff" -> Häckchen rein bei "Intigrierte Windows-Authentifizierung -> Ok -> Fertig!

    Ein super Link: In der Mitte steht das wichtigste über Windows-Authentifizierung
    http://www.microsoft.com/germany/msdn/library/security/ASPNETAuthentifizierungUndMehr.mspx?mfr=true

    Tracing-Mode sagt dir übrigens auch den Namen vom User. Du kannst auch die Seite publizieren und mit anderen Accounts die Seite aufrufen und schauen was ausgegeben wird :)

    mfg
    Melbu

     

     

     

     

     

  •  01-16-2008, 9:01 190096 Antwort zu 190091

    AW: Windows User

    Melbu:

    3. Website auswählen -> Rechte Maustaste -> Eigenschaften -> Reiter "Verzeichnissicherheit" -> "Steuerung des anonymen Zugriffs und der Authentifizierung" Bearbeiten
    -> Häckchen raus bei "Anonymer Zugriff" -> Häckchen rein bei "Intigrierte Windows-Authentifizierung -> Ok -> Fertig!

    JUHU das wars!!!!! Es wren beide Häckchen drin und ich hab das für den anonymen Zugriff rausgemacht. Danach hatte sich noch nichts geändert .. ich hab dann mal anstatt

    Response.Write(" next: " + Request.ServerVariables("REMOTE_USER"))

    einfach

    Response.Write(" next: " + Request.ServerVariables.tostring)

    ausgeben lassen und im Gegensatz zu vorher wurdne nun einige mehr Variablen angezeigt. U.a. auch "Logon_User" unter dem meine gesuchte Variable stand ;))

    Also:

    Response.Write(" User: " + Request.ServerVariables("LOGON_USER"))

    gab mir dann den gesuchten Client-Usernamen an ;))

     

    Die "9" war dann sicherlich der Standartuser der bei der anonymen Anmeldung drinstand. ;))

    Vielen Dank euch!!

     

    Mfg

    nop

  •  10-28-2009, 11:26 214224 Antwort zu 190014

    AW: Windows User

    Antwort bitte löschen! Ich hatte den Thread nicht vollständig gelesen.

    Danke!

Als RSS Feed in XML ansehen
Powered by Community Server (Commercial Edition)