Ankündigung

Einklappen
Keine Ankündigung bisher.

Berechtigungskonzept für eine Dateiablage

Einklappen

Neue Werbung 2019

Einklappen
Dieses Thema ist geschlossen.
X
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Berechtigungskonzept für eine Dateiablage

    Guten Tag,

    Ich hätte da mal eher eine allgemeinere konzeptionelle Frage:

    Ich habe in PHP so ne kleine Dateiablage geschrieben, die aktuell noch kein direktes Berechtigungskonzept besitzt. Dies soll sich nun ändern!! Es gibt mehrere Leute die diese Dateiablage benutzen, aber sich bei dem Server halt nur mir einem FTP-Benutzer am Server anmelden, weswegen ich die Berechtigungen nicht via chmod regeln kann. Aus diesem Grund brauch ich ein eigenes Berechtigungskonzept.

    Dazu habe ich mir 2 Konzepte ausgedacht:

    1.) Ich kann die Dateiablage in einer Datenbank "mappen" und bei jedem Upload, wird dann die Datei hochgeladen und ein entsprechender Eintrag in der DB getätigt. In der DB kann ich dann zusätzliche Angaben zur Berechtigung tätigen. Nachteil ist aber, dass sollte der Upload in irgendeiner Form schief gehen, dann kann es sein, dass ich in eine Datei hochgeladen habe, aber keinen Eintrag in der DB habe, was dann aber dazu führt, dass die Datei keiner sieht. Somit kann es sein, dass sich der Server mit Trash-Daten vollmöhlt. Das würde wiederrum bedeutet, dass ich nen Cron-Job schreiben müsste, der in Regelmäßigen Abständen die Dateiablage mit der Datenbank abgleicht und alle Inkompatibilitäten rauslöscht. Finde ich genrell keine saubere Lösung!

    2.) Ich führe eine Konvention ein. Jede Datei / Ordner bekommt am Namensanfang eine ID. Diese ID bestimmt dann die Berechtigung. Die Regeln für die Berechtigungen würden dann in der DB stehen. Hierbei handelt es sich dann aber um eher allgemeingültigere Regeln, die nicht direkt dateiabhängig sind. Nachteil ist der, dass jeder, der an der Dateiablage programmiert, die Konvention auch kennen muss, damit das funktioniert. Außerdem kann es Probleme geben, sobald sich die Regeln für die Berechtigung ändern, bzw. ich die ID erweitern müsste oder sowas (also im Bezug auf die alten Datein)... Weiterhin müsste ich die paar Stellen am Anfang immer abschneiden. Für mich auch irgendwie keine saubere Lösung.

    Jetzt frage ich mich, gibt es noch andere Konzepte? Wie macht man es "richtig", oder wie wird diese Problematik generell gelöst??? Welche anderen Konzepte gibt es noch?? Wie habt ihr das Problem gelöst??

    Ich wäre über jeden Tipp und Erfahrungsberichte sehr dankbar!!
    Gruß
    V


  • #2
    sollte der Upload in irgendeiner Form schief gehen, dann kann es sein, dass ich in eine Datei hochgeladen habe
    ??? - ne - wenn er schief geht ist auch keine Datei da.

    Ablauf: hochladen ok -> in DB eintragen.

    Wenn die Leute eh nen ftp haben, dann können sie auch alle Dateien lesen oder ?

    Dann bringt Dein Berechtigungssystem nichts.
    Eine if-else-Abfrage nimmt, ordentlich geschrieben eine Menge Platz weg. Platzsparend geht es mit einem ternären Operator.

    Kommentar


    • #3
      hmm ja die Leute haben keinen direkten Zugang via FTP... hab mich da vll etwas laienhaft ausgedrückt. Atm würden alle lesen und schreiben können, aber nur über die Oberfläche die ich ihnen biete!

      Naja entsteht folgendes Beispiel:
      Jemand läd eine Datei hoch. Upload erfolgreich. Nun soll der Eintrag in die DB kommen und z.B. das W-Lan versagt. In dem Fall wäre die Datei auf dem Server, aber kein entsprechender Eintrag in der DB. Weswegen die Datei dann über die Oberfläche nicht mehr gefunden wird, bzw angezeigt wird!
      Ich würde solche Fälle gerne vorbeugen und eigentlich ungern mit einer Lösung, die bedeutet, im Nachhinein aufräumen....

      Gruß
      V

      Kommentar


      • #4
        Berechtigungskonzept in der Dateiablage - Entwickler-Forum

        Bitte beachten: Anmerkungen zu Crosspostings

        [MOD: Thread geschlossen]
        --

        „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
        Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


        --

        Kommentar

        Lädt...
        X