MB: Datenablage im User-Bereich auf Server

moin,

Wie erstellt man ein User-Bereich der für die Datenablage (z.B. Bilder, Musik, Icons) zuständig ist, die für eine User da ist und keinen anderer User Zugriffsrechte hat?

Mein Problem tratt bei CAPTCHA-Bildern auf, die ich nur zum Lernzweck erstellt habe, wo wirklich jeder Zugriff hat, weil es ja im public/ bereich ist.

Ich hab mir das bei anderen Frameworks, die ich halbwegs verstanden habe, angeschaut: COOKIE, SESSION. Diese Frameworks beantworteten mir nur halb meine Fragen 😕.

lgmb

  1. Tach!

    Wie erstellt man ein User-Bereich der für die Datenablage (z.B. Bilder, Musik, Icons) zuständig ist, die für eine User da ist und keinen anderer User Zugriffsrechte hat?

    Ein separates Verzeichnis ist ein Anfang, aber kein muss. Ansonsten muss deine Anwendung nur sicherstellen, dass ohne Prüfung von Nutzer und Berechtigung kein Zugriff stattfinden kann. Wenn man das innerhalb einer Anwendung regeln möchte, muss man sich so disziplinieren, dass man keine Zugriffe vornimmt, die am Berechtigungsprüfungssystem vorbeigehen.

    Sollen die Zugriffe auf Dateisystemebene geregelt werden, muss man die Nutzerverwaltung des Betriebssystems in Anspruch nehmen. Die Anwendung muss sich dann üblicherweise über Impersonation Zugriffsrechte besorgen.

    dedlfix.

    1. Hello,

      Sollen die Zugriffe auf Dateisystemebene geregelt werden, muss man die Nutzerverwaltung des Betriebssystems in Anspruch nehmen. Die Anwendung muss sich dann üblicherweise über Impersonation Zugriffsrechte besorgen.

      Dazu sollte die Anwendung vermulich auch von vorne herein als Multitenant-Anwendung geplant werden :-P

      Liebe Grüße
      Tom S.

      --
      Es gibt nichts Gutes, außer man tut es!
      Das Leben selbst ist der Sinn.
      1. Tach!

        Sollen die Zugriffe auf Dateisystemebene geregelt werden, muss man die Nutzerverwaltung des Betriebssystems in Anspruch nehmen. Die Anwendung muss sich dann üblicherweise über Impersonation Zugriffsrechte besorgen.

        Dazu sollte die Anwendung vermulich auch von vorne herein als Multitenant-Anwendung geplant werden :-P

        Nicht unbedingt. Mandantenfähigkeit nimmt man für eine komplette Abschottung der Mandanten voneinander. Wenn lediglich Nutzer, die ansonsten miteinander interagieren sollen, einen eigenen privaten Bereich bekommen sollen, muss man dafür nicht aus jedem Nutzer einen Mandanten machen. Impersonation kann auch zum Beispiel nur für einzelne Requests erfolgen.

        dedlfix.

        1. Hello,

          Dazu sollte die Anwendung vermulich auch von vorne herein als Multitenant-Anwendung geplant werden :-P

          Nicht unbedingt. Mandantenfähigkeit nimmt man für eine komplette Abschottung der Mandanten voneinander. Wenn lediglich Nutzer, die ansonsten miteinander interagieren sollen, einen eigenen privaten Bereich bekommen sollen, muss man dafür nicht aus jedem Nutzer einen Mandanten machen. Impersonation kann auch zum Beispiel nur für einzelne Requests erfolgen.

          Ach so:
          Da dürfen trotzdem alle Benutzer dieselben Zielverzeichnisse benutzen?

          Meine Meinung wäre: Es ist eine Multiuser-Multitenant-Anwendung erforderlich!

          Singleuser-Multitenant kennt man im PC-Bereich schon seit mindestens 1980, also kurz nach der Erfindung der ersten Steuerberaterlösungen auf PCs. In Rechenzentren gab es das vermutlich schon 10 Jahre davor. Im Web fängt man alerdings erst mit "Cloud-Computing" an, das Rad nochmals von vorne zu erfinden. Die ursprünglichen Ansätze von IBM mit SAA-Oberflächen finden sich heute in den Browsern wieder.

          Liebe Grüße
          Tom S.

          --
          Es gibt nichts Gutes, außer man tut es!
          Das Leben selbst ist der Sinn.
          1. Tach!

            Da dürfen trotzdem alle Benutzer dieselben Zielverzeichnisse benutzen?

            Das regelt die Programmierung und Konfiguration, wer was darf.

            Meine Meinung wäre: Es st eine Multiuser-Multitenant-Anwendung erforderlich!

            Meiner Meinung nach fehlt im OP generelle Information, was die Anwendung am Ende tun soll, um Erfordernisse festlegen zu können.

            dedlfix.

            1. Hello,

              Da dürfen trotzdem alle Benutzer dieselben Zielverzeichnisse benutzen?

              Das regelt die Programmierung und Konfiguration, wer was darf.

              Wer sollte das sonst regeln, wenn nicht jeder Benutzer eine eigene Hardware bekommt?

              Liebe Grüße
              Tom S.

              --
              Es gibt nichts Gutes, außer man tut es!
              Das Leben selbst ist der Sinn.
              1. Tach!

                Da dürfen trotzdem alle Benutzer dieselben Zielverzeichnisse benutzen?

                Das regelt die Programmierung und Konfiguration, wer was darf.

                Wer sollte das sonst regeln, wenn nicht jeder Benutzer eine eigene Hardware bekommt?

                Ich verstehe nicht, worauf du hinauswillst. Hab ich die Frage im falschen Kontext interpretiert?

                dedlfix.

  2. Kommt drauf an, ob Du selbst stricken oder was fertiges haben willst.

    OwnCloud

    Mit htaccess geht es auch. Vergiss nicht, das Ausführen von PHP/CGI zu unterdrücken.

    1. Hallo

      Ich weiß nicht, wer Jörg hier den oder die Minuspunkte gegeben hat, aber eine fertige und beweisbar funktionierende Lösung anzubieten, ist, wenn man das Level der Fragestellungen von MB kennt, die korrekte Antwort auf MBs Frage. Nein, ich habe Jörgs verlinktes PDF nicht gelesen, aber der darauf folgende, hier zitierte Link führt zu einer validen und um Längen besseren Lösung als einer selbstgepfu … ähh … gestrickten.

      OwnCloud

      Ich würde allerdings NextCloud gegenüber OwnCloud bevorzugen.

      Tschö, Auge

      --
      Eine Kerze stand [auf dem Abort] bereit, und der Almanach des vergangenen Jahres hing an einer Schnur. Die Herausgeber kannten ihre Leser und druckten den Almanach auf weiches, dünnes Papier.
      Kleine freie Männer von Terry Pratchett
  3. Hello,

    Wie erstellt man ein User-Bereich der für die Datenablage (z.B. Bilder, Musik, Icons) zuständig ist, die für eine User da ist und keinen anderer User Zugriffsrechte hat?

    Beachte dazu bitte auch den Artikel im Wiki, der von mir älterem Herren begonnen wurde und vermutlich nie fertig wird. Unabhängig von den von mir selber bereits als fehlend markierten Themen wird es immer wieder Aspekte geben, die bisher nicht bedacht wurden. Wie ich feststellen konnte, haben etliche meiner Überlegungen auch schon den Weg in die Wikipedia gefunden, leider alerdings, ohne die Quellen zu nennen.

    Außerdem bietet der Apache-Server seit der Version 2.4 für PHP auch die Konfiguration VHostUser an, die man hier sinnvoll nutzen könnte, indem man z. B. jedem User eine eigene Subdomain zuweist für seine Uploads.

    Liebe Grüße
    Tom S.

    --
    Es gibt nichts Gutes, außer man tut es!
    Das Leben selbst ist der Sinn.
    1. moin,

      Dankle dir!

      Außerdem bietet der Apache-Server seit der Version 2.4 für PHP auch die Konfiguration [...] an, die man hier sinnvoll nutzen könnte, indem man z. B. jedem User eine eigene Subdomain zuweist für seine Uploads.

      Genau das wollte ich erfragen, aber da das von dir benannte Erneuerung probitär ist, hilf das wenig 😕.

      lgmb

      1. Hello,

        Außerdem bietet der Apache-Server seit der Version 2.4 für PHP auch die Konfiguration [...] an, die man hier sinnvoll nutzen könnte, indem man z. B. jedem User eine eigene Subdomain zuweist für seine Uploads.

        Genau das wollte ich erfragen, aber da das von dir benannte Erneuerung probitär ist, hilf das wenig 😕.

        Das verstehe ich jetzt nicht wirklich. Kann sein, dass es an den von Dir benutzen Begriffen und der Art der Formulierung liegt.

        Wenn Apache für jeden VirtHost einen eigenen Benutzer kann, so können andere Webserver ähnliche Dinge. Und denkbar wäre auch eine komplette Hypervision auf dem Host des Webservers mit komplett virtualisierten Systemen.

        Wie groß soll denn das Projekt wachsen?

        Liebe Grüße
        Tom S.

        --
        Es gibt nichts Gutes, außer man tut es!
        Das Leben selbst ist der Sinn.