roger: apache abfragen welcher user über htaccess gerade angemeldet ist

Hallo,

ich habe eine user/passwort Abfrage mittels htaccess gemacht.

Kann ich nun mit einem Programm am Server (welche Sprache ist egal) z.B. alle 2 Minuten abfragen welcher user gerade angemeldet ist.
Gibt es eine Variable oder irgend eine Info in einer logdatei ??

Wenn ich ein CGI-Script von einer Webseite abfrage kann ich über die Perlvariable $ENV{REMOTE_USER} den user der Webseite abfragen.

So eine Art nur auf muss die Variable am Server (von einem Serverprogramm)  lesbar sein

Gruß
      roger

  1. Hello,

    ich habe eine user/passwort Abfrage mittels htaccess gemacht.

    Kann ich nun mit einem Programm am Server (welche Sprache ist egal) z.B. alle 2 Minuten abfragen welcher user gerade angemeldet ist.

    Es gibt kein "gerade angemeldet sein" bei HTTP. Es ist alles momantbezogen, also auf den einzelnen Request. Es gibt allerdings die Möglichkeit, dass ein User die passenden Credentials mit seinem Request mitsendet und vom Apache daher akzeptiert wird.

    Gibt es eine Variable oder irgend eine Info in einer logdatei ??

    Du müsstest Dein Access-Log entsprechend anpassen.

    Wenn ich ein CGI-Script von einer Webseite abfrage kann ich über die Perlvariable $ENV{REMOTE_USER} den user der Webseite abfragen.

    So eine Art nur auf muss die Variable am Server (von einem Serverprogramm)  lesbar sein

    http://httpd.apache.org/docs/2.2/mod/mod_log_config.html#logformat
    http://httpd.apache.org/docs/2.2/mod/mod_log_config.html#formats

    ----+---------------------------------------------------------------------
    %u  | Remote user (from auth; may be bogus if return status (%s) is 401)
    ----+---------------------------------------------------------------------

    ist wohl die Variable, die du ins LogFormat einbinden musst.

    Liebe Grüße aus dem schönen Oberharz

    Tom vom Berg

    --
    Nur selber lernen macht schlau
    http://bergpost.annerschbarrich.de
  2. ich habe eine user/passwort Abfrage mittels htaccess gemacht.
    Kann ich nun mit einem Programm am Server (welche Sprache ist egal) z.B. alle 2 Minuten abfragen welcher user gerade angemeldet ist.
    Gibt es eine Variable oder irgend eine Info in einer logdatei ??

    HTTP-Authentication ist sehr ungeeignet um Userspezifisch Information austauschen zu können.
    Du solltest dich mit Sessions beschäftigen, dh. solche Requests auf eine Ressource lenken, welche ein Login/Session-System betreibt, und dir User-Info in einer eigenen Logdatei bereithält.

    Generell gibt es kein Konzept in HTTP, dass jemand "angemeldet" ist.
    Du kannst aber eine SessionID mit Gültigkeitsfrist generieren, und abfragen, welche IDs (und User) innerhalb der Gültigkeitsfrist sind (bzw die letzten Requestzeit für deine Bedürfnisse auswerten).

    mfg Beat

    --
    ><o(((°>           ><o(((°>
       <°)))o><                     ><o(((°>o
    Der Valigator leibt diese Fische