Um neue Bestellungen für einen bestehenden Kunden zu erfassen, logge ich mich als Kunde ein. (Über das Backend kann man ja auch eine neue Bestellung erfassen, aber da gibt's dann die Unsicherheiten dass die Bestellberechnung nicht immer sauber funktioniert...) Es kann sich aber nur der Super-Admin, der mit cID=1 als andere Personen einloggen. Für die Bestellbearbeitung habe ich aber andere Admins, die weniger Rechte bezüglich Shop-Konfiguration haben. Damit auch die sich als Kunden einlogen könnten, müsste es dazu eine Checkbox in der Rechteverwaltung geben, so dass man einzelnen Benutzern dieses Recht geben könnte, oder aber bei den Kundengruppen, um alle Admins berechtigen zu können... Oder kann ich das anders lösen? Indem ich dem Super-Admin die ganzen konfig-rechte entziehe, und nur den für Bestellbearbeitung benutze, und einen anderen Admin mit allen Konfig-Rechten ausstatte? Ich denke nicht, denn der Super-Admin wird wohl noch andere Exklusiv-Rechte haben, oder?
Als kunde kannst dich doch einloggen mit Kunden E-Mail und Admin PW. Das soll dann auch für andere Admin so möglich sein, richtig?
Nein, eben nur mit dem PW vom Super-Admin. Probier mal aus... Weiss jemand, was alles den Super-Admin von anderen unterscheidet?
Was geht nicht? Satz 1 geht - Mit Admin PW kann ich das Satz 2 war zur sicherstellung das er das so meint, dass andere Admins das auch können sollen. Keine Aussage das das mit anderen Admins gehen würde.
Hab ich doch geschrieben im 1. Satz - und der 2. Satz war um sicherzugehen, das ich ihn richtig verstanden habe, dass er das so auch für die anderen Admins will.
Also Dennis, deine Frage hab auch ich falsch verstanden... Ja, das meine ich. Was genau ist an meinem Post denn unklar?
Aktuell geht das nicht, das würde eine Umprogrammierung erforderlich machen. Ich bin aber auch nicht mal eben im Bilde wie gross das wäre, weil der Login gerade jetzt für ein paar andere zukünftige Ideen umgebaut wird. Ich hab aber mal ein Feature Ticket geschrieben, damit sind Verbesserungen da schon mal auf der Ideenliste verewigt. Das ist hier: https://tracker.gambio-server.net/issues/47911
Sauber. Anmerkung zum Ticket: Das würde nicht nur copy-paste ersparen, es ist überhaupt der einzige (sichere) Weg, für Kunden Bestellungen aufzunehmen, ohne dass man für Bestellbearbeitung den haupt-admin nimmt. P.S: Gibt's irgendwo eine Liste, was den haupt-admin sonst noch von anderen unterscheidet?
Ne Liste gibts leider nicht. Das ist Wissen über die alten Untiefen, das von Generation zu Generation am Lagerfeuer weitergegeben wird...
Okay, dann stell dir doch bitte mal ein Lagerfeuer vor und erzähl... Was weisst du (und ev andere Gambioniken) über die Besonderheiten des Haupt-admin?
Die Grundidee ist eigentlich, dass dass der einzige User ist, den man keinesfalls aus dem System löschen kann. Beim Rest kenn ich eigentlich auch nur die Sagenwelt
Oje, das ist nicht viel... Aber immerhin schon ein zweiter Punkt daneben, dass er auch der einzige ist, der sich mit seinem PW in jedes andere Konto einloggen kann. Ich probier's mal per Support-Ticket. Oder fällt dir noch jemand anderes ein, den man dazu anstubsen könnte?
Also dann, Der Support meinte noch, dass der User mit cID=1 generell alle Rechte hat, egal was Konfiguriert ist, so wie ich das verstehe. Weiter habe ich selbst geforscht, an GX3: Das Hartcodierte Abfragen vom Admin-Passwort kann man natürlich selbst ändern: Ab ca. Zeile 80 in der Datei /system/classes/accounts/LoginContentControl.inc.php steht PHP: // try admin login if($t_valid_password === false) { $t_sql = "SELECT customers_password FROM " . TABLE_CUSTOMERS . " WHERE customers_id = 1 AND customers_status = 0"; $t_result = xtc_db_query($t_sql); if(xtc_db_num_rows($t_result) == 1) { $t_result_array = xtc_db_fetch_array($t_result); $t_valid_password = xtc_validate_password($password, $t_result_array['customers_password']); } } (GX2: Ab ca. Zeile 60 in der Datei /system/views/LoginContentView.inc.php steht da scheinbar das gleiche.) Hier ersetzt man die Customer id 1 durch eine andere, und schon kann man sich mit deren Passwort in jeden Account einloggen. Die passende ID findet man zB. in der URL, wenn man einen Kunden Bearbeitet, da steht dann eben zb. cID=1 wenn man den super-Admin bearbeitet. Oder man kann den obigen Block beliebig oft kopieren und dann mit verschiedenen ID's mehreren Kunden (Admins) die login-Möglichkeit für alle Konten geben. Aber achtung, dass man da nicht den falschen Usern alle logins gibt ;-) Inwieweit sich das auch updatesicher machen liesse, keine Ahnung... Experten?