{"id":865,"date":"2021-01-27T16:00:33","date_gmt":"2021-01-27T15:00:33","guid":{"rendered":"https:\/\/devowl.io\/?post_type=knowledge-base&#038;p=865"},"modified":"2021-03-12T15:02:52","modified_gmt":"2021-03-12T14:02:52","slug":"real-media-library-permissions-management-folders-per-user","status":"publish","type":"knowledge-base","link":"https:\/\/devowl.io\/de\/wissensdatenbank\/real-media-library-rechteverwaltung-ordner-pro-benutzer\/","title":{"rendered":"Rechteverwaltung: Ordner pro Benutzer erstellen"},"content":{"rendered":"<section class=\"l-section wpb_row height_medium\"><div class=\"l-section-h i-cf\"><div class=\"g-cols vc_row via_flex valign_top type_default stacking_default\"><div class=\"vc_col-sm-12 wpb_column vc_column_container\"><div class=\"vc_column-inner\"><div class=\"wpb_wrapper\"><div class=\"wpb_text_column\"><div class=\"wpb_wrapper\"><p>Du m\u00f6chtest hochgeladene Dateien, Ordner, Sammlungen und Galerien in deiner Medienbibliothek auf bestimmte Benutzer oder Benutzergruppen beschr\u00e4nken? Wir erkl\u00e4ren, warum diese Funktion in Real Media Library (und in vielen\/allen Alternativen) nicht implementiert ist.<\/p>\n<h2>Verwaltung von Berechtigungen f\u00fcr die Mediathek<\/h2>\n<p>WordPress kommt mit einer Rechteverwaltung, die Benutzer und Rollen wie Administratoren (Gruppen) kennt. Jeder Benutzer geh\u00f6rt zu einer (oder mit Plugins zu mehreren) Rollen. Die Rollen haben Berechtigungen (im WordPress-Kontext F\u00e4higkeiten genannt), die true oder false sein k\u00f6nnen. Das bedeutet, dass die Rechteverwaltung eindimensional und viel einfacher und eingeschr\u00e4nkter ist, als z.B. im UNIX-Dateisystem.<\/p>\n<p class=\"translation-block\">In der <a href=\"https:\/\/wordpress.org\/support\/article\/roles-and-capabilities\/#capability-vs-role-table\" target=\"_blank\" rel=\"noopener\">Liste der F\u00e4higkeiten<\/a> findest du die folgenden, die zur Medienbibliothek geh\u00f6ren:<\/p>\n<ul>\n<li><em>upload_files<\/em><\/li>\n<\/ul>\n<p>Es ist kein Fehler, dass du nur eine F\u00e4higkeit in der Liste findest. WordPress kann nur Rollen erlauben und verbieten, Dateien hochzuladen. Eine Rechteverwaltung, um z.B. die Sichtbarkeit der gesamten Medienbibliothek oder auch einzelner Uploads einzuschr\u00e4nken, gibt es in WordPress nicht.<\/p>\n<h2>Warum es eine schlechte Idee ist, neue F\u00e4higkeiten zu erfinden<\/h2>\n<p>Real Media Library k\u00f6nnte in WordPress eine vollst\u00e4ndige Rechteverwaltung implementieren, um zumindest das Lesen und Schreiben auf die gesamte Medienbibliothek, einzelne Ordner, Sammlungen und Galerien sowie einzelne Dateien einzuschr\u00e4nken. Das w\u00e4re die Funktion, die sich viele Real Media Library Nutzer w\u00fcnschen.<\/p>\n<p>Dies ist jedoch aus zwei Gr\u00fcnden eine schlechte Idee:<\/p>\n<ul>\n<li class=\"translation-block\">Uploads in die WordPress Mediathek befinden sich einfach im <code>wp-content\/uploads\/<\/code> Ordner ohne jeglichen Schutz vor dem Zugriff Dritter. Wir m\u00fcssten hier also einen Sicherheitsmechanismus etablieren, damit die Dateinamen am Ende nicht einfach erraten werden k\u00f6nnen. Dies w\u00fcrde zu ernsthaften Kompatibilit\u00e4tsproblemen mit anderen Plugins f\u00fchren.<\/li>\n<li>Andere Plugins und der WordPress Core w\u00fcrden die von uns erfundenen F\u00e4higkeiten nicht kennen. Somit w\u00fcrden definierte Einschr\u00e4nkungen nicht ber\u00fccksichtigt werden. Verwendet dein Page Builder beispielsweise einen eigenen Mechanismus, um Bilder auszuw\u00e4hlen oder zeigt sie schlie\u00dflich auf Basis der fortlaufenden Upload-ID an, w\u00e4ren die Uploads trotz einer Rechtebeschr\u00e4nkung in der Real Media Library v\u00f6llig ungesch\u00fctzt.<\/li>\n<\/ul>\n<p>Es ist unrealistisch zu denken, dass die von uns erfundenen Berechtigungserweiterungen im Laufe der Zeit von allen Plugins akzeptiert werden w\u00fcrden. Das ist auch das Problem, warum WordPress Core eine solche Erweiterung der Rechteverwaltung vorerst nicht implementieren wird. Um alle Plugins zu zwingen, ein erweitertes Berechtigungssystem zu akzeptieren, m\u00fcssten neue technische Schnittstellen geschaffen werden. Gleichzeitig m\u00fcssten alte technische Schnittstellen abgeschaltet werden. Das nennt man Breaking Change und ist in einem \u00d6kosystem wie WordPress tunlichst zu vermeiden, da es einen nicht unbedeutenden Kollateralschaden f\u00fcr das gesamte \u00d6kosystem gibt (z.B. dass nicht aktualisierte Plugins in der neuen WordPress Version nicht mehr verwendet werden k\u00f6nnen).<\/p>\n<\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/section>","protected":false},"template":"","topic":[31],"class_list":["post-865","knowledge-base","type-knowledge-base","status-publish","hentry","topic-common-issues-rml"],"acf":[],"_links":{"self":[{"href":"https:\/\/devowl.io\/de\/wp-json\/wp\/v2\/knowledge-base\/865","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devowl.io\/de\/wp-json\/wp\/v2\/knowledge-base"}],"about":[{"href":"https:\/\/devowl.io\/de\/wp-json\/wp\/v2\/types\/knowledge-base"}],"version-history":[{"count":1,"href":"https:\/\/devowl.io\/de\/wp-json\/wp\/v2\/knowledge-base\/865\/revisions"}],"predecessor-version":[{"id":227445,"href":"https:\/\/devowl.io\/de\/wp-json\/wp\/v2\/knowledge-base\/865\/revisions\/227445"}],"wp:attachment":[{"href":"https:\/\/devowl.io\/de\/wp-json\/wp\/v2\/media?parent=865"}],"wp:term":[{"taxonomy":"topic","embeddable":true,"href":"https:\/\/devowl.io\/de\/wp-json\/wp\/v2\/topic?post=865"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}