Retail-Shop-Verbindungen sind nur durch ihre eigenen org Commerce-Einstellungen Manager erreichbar

FixSecurityService
Verschifft
17. September 2026 um 04:26 UTC
Autor
Kamo
Ausschuss
6f51fa9

Die Retail Provider-Configuren-Handler auf CommerceMarketController lösten die Org der Session auf und verwendeten dann alles, was auch immer den benannten Pfad vermarkten und config uid. Aktualisieren, löschen und die Synchronisationsprotokolle akzeptierten eine Sitzung von ANY Organisation; test-connection und sync akzeptiert keine Sitzung **************** lässt eine sitzungslose Anfrage durch, und beide Handler ignorierten die Org, die sie aufgelöst haben). Eine Store-Verbindung hält den API-Schlüssel des Stores, geheim oder Zugriffspunkt, und Test-Verbindung ruft die gespeicherte speichernUrl mit ihnen, so dass jeder, der eine Konfiguration uid kannte repoint seine Store-URL auf ihren eigenen Server und haben die Token dort geliefert, oder Trigger-Synchronisationen gegen einen anderen Mieter-Laden. Erstellen Sie auch verknüpft eine Konfiguration zu jeder Markt-ID, einschließlich der einer anderen Organisation. Jeder Handler (Liste für einen Markt, Liste für den Org, Erstellen, Aktualisieren, Löschen, Logs synchronisieren, test-Verbindung, Synchronisation) läuft zunächst refuseRetailProviderAccess: - 401 ohne Sitzung; - 403 ohne MANAGE_SUBSCRIPTION_SETTINGS, das Tor von /settings/features/pos, dem einzigen Bildschirm, der liest oder schreibt diese Verbindungen (CommerceProviderSetup, sein Konfigurationsdialog und Sync-Dashboard) und die Lesestufe des Geschwisterchens Billing-Provider-Verbindung auf der gleichen Seite; - 404, es sei denn, der Markt gehört zur Organisation der Sitzung ************ und, wenn eine Konfiguration heißt, die Konfiguration gehört zu dieser Organisation UND zu diesem Markt. Ein weiterer Mieter Markt oder Konfiguration Antworten wie ein fehlender. Sync-Logs erfordern nun configId; ohne es wurde die Suche durch eine NULL-Konfiguration durchgeführt. RetailService und RetailSyncOrchestrator leben in kamo-shared-Bibliothek und immer noch Look Konfigurationen von uid allein; die Eigentumsprüfung läuft hier, bevor einer von ihnen aufgerufen wird, und nichts anderes in jedem Dienst ruft sie mit einem Caller-supplied uid (der Webhook-Pfad löst seine eigene Konfiguration und überprüft den Provider HMAC, fail-closed). Callers mapped: kamo-internal commerceProviderApi.ts nur (commerceApi.ts Einzelhandelsanbieter-Methoden haben keine Benutzer; keine mobilen, kamo-js oder Service-Anrufer). Jeder Anruf geht an der Konfiguration eigenen MarktId von seiner DTO und läuft auf der ************ Seite. MarketOverviewTab und die New-Market-Seite auch Konfigurationen und fangen Fehler, so dass ein Mitglied ohne das Recht, das eine Marktseite erreicht sieht keine verlinkten Anbieter anstelle der Liste. RetailProviderConfigAccessTest fährt jeden Handler: anonym 401 und ein Mitglied ohne das Recht 403, beide mit nichts berührt; ein anderer Org-Markt 404; eine andere org-Konfiguration unter diesem org-Markt 404 und eine Konfiguration unter der falscher eigener Markt 404, mit nichts aktualisiert, gelöscht, getestet, synchronisiert oder gelesen; der Manager Pfad 200 auf allen acht. Das Entfernen jeder der fünf Kontrollen verfehlt genau den dafür geschriebenen Test.

Alle Änderungen

Wie, was Sie sehen Versand?

Alles kommt in Ihrem Arbeitsbereich für sich. Starten Sie mit dem kostenlosen Plan und lesen Sie diese Seite in einem Monat wieder.

Free Forever startenPreisgestaltung anzeigen