Überschreiben von Klassen

Aktuell laufen die ersten Versuche mich in Shopware(6) einzuarbeiten. Da ich bisher noch nie mit Symfony gearbeitet habe, tue ich mich jedoch noch etwas schwer. Nachdem ich Jahre lang als Magento1&2 Entwickler unterwegs war suche ich den richtigen Weg um mit Shopware/Symfony  bestimmte Themen umzusetzen.

Hier meine Problemstellung:

In Shopware wird für die Authentifizierung zur Admin Oberfläche ‚league/oauth2-server‘ verwendet. Dort werden in ‚src/Grant/PasswordGrant‘ in der Methode ‚validateUser‘ die Zugangsdaten gegen die vorhandenen Nutzer geprüft. 

Mein Ziel ist es, diese Prüfung zu erweitern um z.B. den Nutzer zusätzlich zu der Datenbank, gegen eine eigene API zu prüfen und ggf. ein Admin Konto anzulegen.(Nützlich für lokale Entwicklungsumgebungen. Jeder mit den Rechten aus der API kann sich in allen Shops einloggen, ohne extra per Hand einen Benutzer anlegen zu müssen.)

Magento 1 / 2 Weg:

Wie gesagt, da ich über mehrere Jahre nur mit Magento entwickelt habe, bin ich es gewohnt, dass es eine „einfache“ Möglichkeit gibt zu sagen, dass anstelle der oben genannten Klasse, meine eigene verwendet wird. Diese erbt dann meist von der alte und die Methode überschreibt man. (M1: config.xml, M2: Plugin, Preference)

 

Wie würde ich so ein Vorhaben mit Shopware 6 / Symfony angehen?