Sabine Rost: Group spezifischer redirect mit .htaccess

Hallo,

ich bäuchte dringend Hilfe bei einem kniffeligem Problem:
Ich habe verschiedene Gruppen in einer .htaccess Datei definiert und möchte jetzt je nach Gruppe auf einen anderen Ordner umleiten
z.B.
Loginscreen auf secure/
User gehört zur Gruppe1
Redirect secure/Gruppe1/
...
User gehört zur GruppeX
Redirect secure/GruppeX/

Ist das mit .htaccess möglich? Wenn nicht - gibt es eine andere elegante Möglichkeit für Gruppen mit einem Login (eine Datei ohne Variablenübergabe etc.) auf den jeweiligen passwortgeschützte Ordner zuzugreifen?

Grüsse und Danke im vorraus!
Sabine

  1. hi Sabine,

    Ist das mit .htaccess möglich? Wenn nicht - gibt es eine andere elegante Möglichkeit für Gruppen mit einem Login (eine Datei ohne Variablenübergabe etc.) auf den jeweiligen passwortgeschützte Ordner zuzugreifen?

    hmm, gib mal die Umgebung aus nach einer Anmeldung und guck mal ob es außer dem REMOTE_USER auch eine Gruppe gibt.

    Viele Grüße, Rolf

    PS: Bist du aus Thüringen? Da gibts viele Rosts ;-)

    --
    SELFforum - Das Tor zur Welt!
    Theoretiker: Wie kommt das Kupfer in die Leitung?
    Praktiker: Wie kommt der Strom in die Leitung?
    1. Hallo Rolf,

      danke für die Antwort.

      hmm, gib mal die Umgebung aus nach einer Anmeldung und guck mal ob es außer dem REMOTE_USER auch eine Gruppe gibt.

      Leider gibt mir REMOTE_USER nur den User und nicht die Gruppe aus - notfalls würde das ja reichen - aber gibt es da nichts Besseres (also mit Gruppenzugehörigkeit)?

      PS: Bist du aus Thüringen? Da gibts viele Rosts ;-)

      Wusste ich garnicht, dass es dort viele gibt :)
      Bin aber aus Bayern...

      Grüsse

      1. hi,

        danke für die Antwort.

        hmm, gib mal die Umgebung aus nach einer Anmeldung und guck mal ob es außer dem REMOTE_USER auch eine Gruppe gibt.

        Leider gibt mir REMOTE_USER nur den User und nicht die Gruppe aus - notfalls würde das ja reichen - aber gibt es da nichts Besseres (also mit Gruppenzugehörigkeit)?

        oops da liegt ein Missverständnis vor: klar steht in REMOTE_USER nur der User, aber was steht denn sonst noch so in %ENV - das schau mal bitte nach. Vielleicht gibts da eine REMOTE_GROUP oder so...

        Viele Grüße, Rosti

        --
        SELFforum - Das Tor zur Welt!
        Theoretiker: Wie kommt das Kupfer in die Leitung?
        Praktiker: Wie kommt der Strom in die Leitung?
        1. Moin!

          oops da liegt ein Missverständnis vor: klar steht in REMOTE_USER nur der User, aber was steht denn sonst noch so in %ENV - das schau mal bitte nach. Vielleicht gibts da eine REMOTE_GROUP oder so...

          Irgendeine Instanz wird ja wohl offenbar wissen, zu welcher Gruppe der User gehört. Und die muß man im Zweifel fragen, zu welcher Gruppe der User gehört.

          Das kann so "simpel" sein, wie das durchsuchen eines entsprechenden .htacces-, .htpasswd- oder .htgroup-Files, oder so "kompliziert" wie das Befragen von LDAP o.ä. (wobei ich anmerken möchte, dass ich mit LDAP noch nie was gemacht habe, und das vielleicht sogar (mit den richtigen Modulen) wesentlich leichter ist, als das Durchsuchen von Textfiles).

          Spannende Frage auch: Wie soll denn die Weiterleitung geschehen? Mir schwebt spontan mod_rewrite vor, um das Redirect vorzunehmen, wobei es hierbei fast schlauer ist, wenn alle Benutzer sich unter dem Verzeichnis /secure/ die Daten abholen, und per mod_rewrite dann intern weitergeleitet wird.

          mod_rewrite bietet auch die Möglichkeit, Textfiles als Redirect-Map anzulegen, in denen man dann nochmal explizit die Gruppenzugehörigkeit einzelner User festlegen kann. mod_rewrite ist sowieso extrem mächtig. Ich würde dort einen Lösungsansatz suchen. Wenn mod_rewrite versagt, gibts vermutlich sowieso kaum Chancen. :)

          - Sven Rautenberg

          --
          "Beim Stuff für's Web gibts kein Material, was sonst das Zeugs ist, aus dem die Sachen sind."
          (fastix®, 13. Oktober 2003, 02:26 Uhr -> </archiv/2003/10/60137/#m338340>)
          1. moin Sven,

            oops da liegt ein Missverständnis vor: klar steht in REMOTE_USER nur der User, aber was steht denn sonst noch so in %ENV - das schau mal bitte nach. Vielleicht gibts da eine REMOTE_GROUP oder so...

            Irgendeine Instanz wird ja wohl offenbar wissen, zu welcher Gruppe der User gehört. Und die muß man im Zweifel fragen, zu welcher Gruppe der User gehört.

            Das kann so "simpel" sein, wie das durchsuchen eines entsprechenden .htacces-, .htpasswd- oder .htgroup-Files, oder so "kompliziert" wie das Befragen von LDAP o.ä. (wobei ich anmerken möchte, dass ich mit LDAP noch nie was gemacht habe, und das vielleicht sogar (mit den richtigen Modulen) wesentlich leichter ist, als das Durchsuchen von Textfiles).

            in PERL gibt es ein schönes Modul Net::LDAP. Damit hab ich vor einem halben Jahr mal eine Benutzerverwaltung als CGI geschrieben - das war ein ziemliches Geficke ;-)

            Andererseits eignet sich LDAP (Lightweight Directory Access Protocol) sehr gut für Benutzerverwaltungen in größerem Umfang, z.B. in einer Firma: Alle MA werden in einer Baumstruktur verwaltet, haben Eigenschaften (access zu X, access zu Y) und auch Passworte. Beispielsweise kann es auch Anwendungen geben wo eine Authentifizierung erforderlich ist - sofern LDAP zur Verfügung steht kann eine solche Auth. auch damit gemacht werden: Der Programmierer von solchen Anwendungen braucht sich damit um die Benutzerverwaltung nicht zu kümmern und hat den Rücken frei für andere Dinge...

            Spannende Frage auch: Wie soll denn die Weiterleitung geschehen?

            wenn htaccess hinsichtlich Gruppen richtig konfiguriert ist gibt es mit Sicherheit eine Variable REMOTE_GROUP.

            Die Umleitung funktioniert so: der Benutzer ruft ein CGI Script auf und muss sich dafür anmelden per htaccess. Je nach REMOTE_GROUP erfolgt dann die Weiterleitung (redirect) das ist alles.

            Viele Grüße, Rolf

            --
            SELFforum - Das Tor zur Welt!
            Theoretiker: Wie kommt das Kupfer in die Leitung?
            Praktiker: Wie kommt der Strom in die Leitung?