Backend-Benutzer nur mit Subshop Zugriff

Besteht die Möglichkeit, einen User im Backend anzulegen, der nur Zugriff auf die Bestellungen, Auswertungen, etc. aus einem bestimmten Subshop hat? Für diesen Subshop soll der Benutzer ruhig alle Rechte haben, aber er soll z.B. nicht sehen, was in den anderen Subshop für Kunden, Bestellungen, etc. eingehen.

Wollte die Frage noch einmal aufgreifen, würde mich auch interessieren

Würden wir auch dringend benötigen. Gibt es hierfür schon eine Lösung bzw. ein Plugin?

Hallo, nein das geht nicht. Man kann Zugriffe auf Module einschränken. Nicht aber innerhalb der Module dann Bestellungen oder Kunden filtern. Das wäre auch sehr komplex und viele Funktionen greifen ineinander. Wenn sowas erforderlich ist, sind definitiv getrennte Instanzen notwendig Sebastian

Wie die Zugriffsberechtigung von Shopware ist, weiss nicht nicht. Da müsste man etwas rumklicken, und schauen, ob die bestimmten Module die Anforderungen erfüllen. Es ist noch sehr früh am Morgen aber vor dem Anmelden am Backenend könnte man 'ne Abfrage bauen, die entsprechende Usertabelle ergänzen. Wenn ich bisschen mehr Zeit habe, schaue ich mir das mal an…

Das wäre für uns auch spannend. Lässt sich das über die Rest-API realisieren?

Hallo, ich greife das Thema nochmal auf. Die Antwort von Sebastian ist eindeutig und nachvollziehbar, wenngleich auch sehr schade, denn das Backend wäre ideal, um es in abgespeckter Form z.B. dem Einkaufsleiter eines Kunden zur Verfügung zu stellen.

Konkret geht es bei uns um ein Fullservice-System im Bereich Werbemittel, da soll jedem großen Kunden ein Shopfrontend mit seinen eigenen Produkten zur Verfügung gestellt werden. Das wollen wir über Subshops realisieren, weil wir nicht für jeden Fullservicekunden eine eigene Instanz aufbauen wollen. Innerhalb der Subshops sind die Außendienstler des Kunden als Shopkunden angelegt und können ihre Werbemittel bestellen.

Der Einkaufsleiter hätte nun gerne beispielsweise einen Überblick, welche Produkte am meisten bestellt werden, eine Übersicht über aktuelle Lagerbestände sowie eine generelle Übersicht über die Bestellungen aller seiner Außendienstler mit Bestellstatus usw… Von den anderen Kunden soll er logischerweise nichts sehen dürfen. Aufgrund des doch recht starren Kunden / Backenbenutzerkonzepts in Shopware geht das innerhalb des Systems so nicht.

Deshalb nochmal die Frage, ob sich das evtl mit der REST-API realisieren lässt und ob man in dem Fall darauf angewiesen wäre, komplett von vorne anzufangen oder ob man doch evtl. einige vorhandene Systemkomponenten nutzen könnte, um sich z.B. so etwas wie ein alternatives Backend zu bauen, was nur die gewünschten Informationen enthält. Das ist jetzt nur mal so eine Idee. Oder macht das vielleicht keinen Sinn? Ich kann das nicht sio richtig beurteilen, dafür kenne ich mich im Gebälk nicht gut genug aus.

Eine weitere Idee wäre die Erweiterung eines Frontend-Shopkunden in der Form, dass er in seinem Kundenkonto weitere Übersichten zu sehen bekommt, eben alle Bestellungen aller Kunden dieses Subshops z.B.; die Kundenkonten lassen sich ja subshopweise voneinander abschotten. Wäre der Aufwand an dieser Stelle vielleicht geringer oder könnten dort evtl. andere Schwierigkeiten auftreten?

Wie würden die Profis die Aufgabe angehen?

Grüße

@pierre-schmitz schrieb:

Wie würden die Profis die Aufgabe angehen?

Bestes Beispiel für eine Umsetzung ist der Shopware Store (store.shopware.com). Hier läuft ja auch Shopware und viele Händler (Plugin Hersteller) haben die Möglichkeit Produkte einzustellen und diese zu verkaufen. Jeder Verkäufer kann nur seine eigenen Produkte bearbeiten und Verkäufe jener einsehen.

Dafür wurde ein eigenes „Backend“ ( Teil von account.shopware.com) entwickelt, welches mit der Shopware-Instanz kommuniziert. Diese Umsetzung würde ich auch bevorzugen. Das Shopware Backend ist m.M.n. dafür nicht geeignet. (Ich bin mir nicht mal sicher, ob das Backend komplett abgesichert ist. z.B. gegen SQL Injections etc. Wenn du z.B. den Plugin Manager nicht sperrst kann jeder mit Backend Zugriff super einfach beliebigen Code ausführen).

Ich hoffe das gibt einen ungefähren Einblick in eine mögliche Umsetzung.

Viele Grüße