Nur-Schreiben-Ordner für jedermann anlegen

  • Ab sofort steht euch hier im Forum die neue Add-on Verwaltung zur Verfügung – eine zentrale Plattform für alles rund um Erweiterungen und Add-ons für den DSM.

    Damit haben wir einen Ort, an dem Lösungen von Nutzern mit der Community geteilt werden können. Über die Team Funktion können Projekte auch gemeinsam gepflegt werden.

    Was die Add-on Verwaltung kann und wie es funktioniert findet Ihr hier

    Hier geht es zu den Add-ons

Status
Für weitere Antworten geschlossen.

2U1C1D3

Benutzer
Registriert
05. Feb. 2018
Beiträge
33
Reaktionspunkte
2
Punkte
8
Hallo zusammen,

ich spiele mich seit einiger Zeit mit den erweiterten Berechtigungen für einen freigegebenen Ordner. Mein Ziel:
Ein "Upload-Ordner" in den jeder registrierte User Dateien hochladen kann, nicht aber die Dateien anderer User in diesem Ordner sieht. Egal ob via WebDAV oder über die Drive-Anwendung.
Ich habe jetzt mit den erweiterten Berechtigungen etwas gespielt. Problem: Sobald ich die Leserechte in irgendeiner Art und Weise angehe, verschwindet der Ordner aus der Drive-Ansicht, bzw. aus der Web-Integration.

Hintergrund des Vorhabens ist ganz einfach der Datenschutz, bzw. das Urheberrecht. Bevor die Dateien nicht von einem Moderator / Administrator gesichtet wurden, darf kein anderer User Zugriff darauf bekommen.
Es wäre auch akzeptabel, wenn die hochgeladenen Dateien sofort aus dem Upload-Ordner in ein sicheres Verzeichnis verschoben werden (automatisiert).

Ich weiß jedoch weder für das Eine, noch für das Andere eine Lösung.

Über die Benutzer-Homes wollen wir das nicht realisieren, weil somit für gut 300 User Speicherplatz verschwendet wird, welcher regelmäßig durch einen Admin gesichtet werden müsste...

Weiß jemand wie man das realisieren kann?
 
Würde dennoch Benutzer-Homes nutzen. Wüßte auch nicht, warum das mehr administrative Arbeit verursachen sollte. Benutzer anlegen - der Gruppe "XXX" zuordnen, fertig.
Sicher Dich aber vielleicht auch bei einem Anwalt für Medienrecht, Datenrecht, etc. pp ab. Nicht das das für Dich ganz schlimme Folgen haben kann...
 
Hallo @Thonav , schön dich wieder zu lesen.
Muss ich nicht, wenn ich über die Homes gehe, in jedes Home einzeln rein gehen um zu sehen ob dieses leer ist?
 
Ja, musst Du - wie stellst Du Dir das sonst vor? Das jeder eine Datei in einen Ordner werfen kann, aber die anderen User die Dateien in dem Ordner nicht sehen??
 
Jepp, genau so. Bei Linux geht das über die Dateeigenschaften, bzw. über den Eigentümer. Genauer gesagt, ein anderer User der nicht Eigentümer ist sieht die Datei, kann aber mit ihr nichts machen (es sei denn, er steigt tiefer ins System ein als er sollte). Voraussetzung ist lediglich, dass nicht über SMB auf das Verzeichnis zugegriffen wird. Da wären die Attribute hinfällig.
 
Ok - und wenn von den 300 Kollegen 2 den gleichen Namen nutzen? Was dann?
Umsetzung ist ja eine Sache, aber wie sieht die Frage hinsichtlich der rechtlichen Situation aus?
 
Den Usernamen teilt der Admin zu. Und sollte zufällig ein Dateiname das zweite Mal vorkommen, dann gibt's eh ne Fehlermeldung und der Uploader kann die vorhandene Datei eh nicht überschreiben. Hat ja die Berechtigung dazu nicht.
 
Womit du auch Recht hast. Aber das ist ja nicht mein Problem...
Und ein Script schreiben is jetzt auch nicht der Bringer, weil man ja nen Zeitintervall für das Script festlegen muss. Entweder der ist zu lang und die Dateien können eingesehen werden, oder er ist zu kurz und die Aktion wird noch während nem Upload gestartet.
 
Da fällt mir gerade etwas ein. Es gibt doch von der File Station die Funktion "Dateianforderung" Somit kann man Dateien zumindest mit seinem Namen (bzw. Kürzel oder UID) über einen Webbrowser hochladen.
Und nur diejenige Person, welche Zugriff auf die Freigabe hat (bzw. die Dateianforderung erstellt hat) bekommt Zugriff auf dessen Inhalt.

Somit müsste derjenige bei dem alle Dateien zusammenlaufen sollen solch eine Dateianforderung erstellen. Das Problem an der Sache ist die, dass selbst die User, welche bereits Dateien hochgeladen haben diesen Ordner nicht einsehen können.

Die Dateianforderung funktioniert quasi wie ein Briefkasten. Jeder kann etwas einwerfen, aber nur derjenige der Zugriff hat kann diesen auch entleeren bzw. einsehen.
 
  • Like
Reaktionen: w00dcu11er
Das hört sich schon mal gut an. Und das der User, der die Datei hochgeladen hat, keinen Zugriff mehr auf die Datei hat, ist zwar nicht schön, aber nicht weiter schlimm.
EDIT: Nein, kommt auch nicht infrage. Dann muss ich ja dem, der eine Datei hochladen soll, ständig nen Link schicken...
 
Zuletzt bearbeitet von einem Moderator:
Ja, mit Dateianforderungen habe ich selber - noch vor der Erscheinung der aktuell verfügbaren Feature von Synology Photo (seit DSM 7) mit den geteilten Alben & Co. - gute Erfahrungen gemacht, als ich zB. Hochzeitsfotos von hunderten an Gästen sozusagen gesammelt habe. Ging alles reibungslos und ohne Komplikationen. Da kann man auch beliebige Dateiformaten hernehmen.
 
In der File Station einen Ordner erstellen auf der Freigabe deiner Wahl. Kann auch im Home Verzeichnis eines Users liegen.

Dann über Akiton eine Anforderung erstellen.
Es wird ein Link generiert der im Anschluss an alle Beteiligten verteilt werden kann.

1673102714645.png

Wenn man den Link aufruft sieht das ganze so aus:

1673102833463.png

Jeder User kann hier seinen Namen (bzw. die eindeutige UID oder Kürzel) eintragen und es wird somit für jeden User ein separates Verezeichnis angelegt. Auch wenn der User später noch weitere Dokumente hochladen möchte werden diese erneut in dem gleichen Verzeichnis abgelegt.

Die Disziplin hierbei ist, dass jeder User auch die Vorgehensweise respektiert und seine eigene UID verwendet sonst entsteht natürlich Chaos.
 
@2U1C1D3: Schau dir mal über die Filestation die Rechtestruktur unter /homes als Beispiel an. Vielleicht könnte man es in deinem Fall ähnlich machen (achte auf "Owner" als Template und "Everyone").
 
Vielen Dank für eure Hilfe, Vorschläge und Ratschläge.
Ich habe jetzt einen Mix angesetzt:
  1. Dauerhaft gibt es ein jedermann zugängliches Uploadverzeichnis, aus dem per Script im 30-Minuten-Takt die Dateien in ein "sicheres" Verzeichnis verschoben werden. Ich habe mich dazu entschieden mit der Zeitspanne nicht weiter runter zu gehen. Wird über ein mobiles Gerät über schlechtes W-Lan oder über Mobilfunk eine größere Datei hineingeschoben, dann würde der Upload abgebrochen werden.
  2. Die User welche das Recht haben die Bilder anderer zu betrachten und diese zu bearbeiten, bekommen von mir die Berechtigung die Dateien anzufordern. Ganz nach @luddi 's Post. So kann man zu individuellen Anlässen die Dateien gezielt fetchen.
Dazu habe ich aber jeweils eine Frage:
Zu 1.: Das ist ein ganz banales move-Script welches alle 30 Minuten ausgeführt wird. Fängt der User mit einem großen Upload eine Minute vor der Fälligkeit an, dann habe ich wieder das Problem. Gibt es eine Möglichkeit im Script einen "Sensor" auf den Ordner zu legen, dass das Script nur ausgeführt wird, wenn Ruhe herrscht und kein User mit dem Ordner verbunden ist?

Zu 2.: Für die Funktion der Dateianforderung braucht der User eine Berechtigung für die FileStation oder das DSM. Geht das auch aus der Drive-Anwendung heraus? Ich find dazu nichts...
 
Zu 1:
Du könntest deinen Move mit find kombinieren und nur Files wegverschieben die mind. z.B. 10 Minuten alt sind, z.B.
Code:
find /volume/Inbox -cmin +10 -exec mv {} /volume1/InboxSik \;
( {} steht für die gefundene Datei, \; schließt das auszuführende Kommando für jeden Treffer ab)
 
Zuletzt bearbeitet:
@Benares Danke für die Idee über find zu gehen. ABER: Wird mit deinem Befehl nicht der Zeitstempel der Erstellung ausgewertet? Das heißt, wenn der Upload 20 Minuten dauert, die zehn Minuten rum sind, dann würde mv ausgeführt werden. Oder ist der Zeitstempel der "finale" Moment?
 
Schau dir mal die Eigenschaften so einer "Langläufer-Upload-Datei" an. Da siehst du, welcher der 3 Zeitstempel (Erstellt/Geändert/Letzter Zugriff) sich als letztes ändert. Und google mal nach "man find". Entsprechend gibt es m.W. bei find die 3 Schalter -cmin, -mmin, -amin, dahinter dann die Zeit in Minuten mit +/- für größer/kleiner. Evtl. ist ja -amin für diesen Fall besser.
 
  • Like
Reaktionen: luddi
@Benares Danke, -cmin ist tatsächlich der richtige Schalter, da er auch berücksichtigt ob die Datei gerade verifiziert wird oder noch geschrieben wird. Dabei könnte bei -amin die Datei verschoben werden, obwohl die Konsistenz noch überprüft wird. Es wird dabei ja nur noch auf die Datei zugegriffen, die Daten werden jedoch nicht mehr geändert. Das vorzeitige Verschieben verschiebt zwar eine intakte Datei die auch weiter verwendet werden kann, erzeugt jedoch beim User Fehlermeldungen. Mit -cmin könnte man das Script jetzt minütlich ausführen lassen und die Datei wird erst verschoben, wenn sie in Ruhe gelassen wird.
 
  • Like
Reaktionen: luddi und Benares
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat