[TYPO3-german] Auth Service erweitern

Siedlaczek, Sandy siedlaczek at kemper.de
Wed Jun 4 15:43:33 CEST 2008


Oh Mann danke, du rettest mir gerade meine Gesundheit mit deinen Antworten.
:) Ursprünglich ist in diesem Projekt verlangt worden, dass bestimmte Kunden
sich mit einem zugesandten Bonuscode in bestimmte Bereiche der Website
einloggen können sollen. In diesen Bereichen wird es dann weitere
Einstellungsmöglichkeiten geben...
Für diese spezielle Seite muss dann eine andere Spalte als username
abgefragt werden und ein Passwort haben diese Kunden noch gar nicht. 

Nun sollen die Spalten für username und password als ServiceOption angegeben
werden, sowie die Seiten auf denen der Service arbeiten soll. Daran hänge
ich gerade, weil ich scheinbar keine aktuelle Seiten-ID übergeben bekomme.
Der nächste Schritt wäre dann eine Authentifizierung des Users ohne
Passwort. Sofern ein bestimmter Schlüssel in der ServiceOption 'password'
eingegeben wurde. *lufthol*

Und wenn das dann alles läuft, soll der Service irgendwann mal komplett
variabel werden, so dass man auf jeder Log-In Seite diese Optionen neu
wählen kann. Aber das ist nur mir wichtig und erstmal zweitrangig. So wäre
es dann aber wirklich flexibel und würde evtl. ein paar Leuten in der
Community wirklich helfen. 

Gruß Sandy

-----Ursprüngliche Nachricht-----
Von: Steffen Ritter [mailto:info at rs-websystems.de] 
Gesendet: Mittwoch, 4. Juni 2008 15:20
An: typo3-german at lists.netfielders.de
Betreff: Re: [TYPO3-german] Auth Service erweitern

solang das TFSE als objekt erstellt wurde (waws beim fe auth ja der fall 
ist) kannst du aus $GLOBALS['TSFE'] die der aktuellen Seite auslesen.

Was hast du denn genau vor?

Siedlaczek, Sandy schrieb:
> Das nenne ich mal eine schnelle Antwort. :) 
> 
> Bei diesen Einträgen handelt es sich, um die Spaltennamen für username und
> password. Anstatt username soll halt die Spalte "bonus" abgefragt werden.
> Dies funktioniert auch in der ersten Version. Wenn die Postvariable
> existiert, wird "bonus" durchsucht, ansonsten ganz normal "username".
Leider
> geht in der zweiten Version gar nix mehr und ich weiß nicht so ganz, woran
> es liegt. Ich hole mir die kommaseparierte Liste PIDs mit
getServiceOption,
> befreie sie von Leerzeichen. Splitte die Liste danach in ein array auf und
> stelle zum Schluss noch den Abgleich mit der Seite, auf der der Log-In
> stattfinden soll. Oder kann ich mir in einem Service nicht so einfach die
> aktuelle PID holen?
> 
> Gruß Sandy
> 
> -----Ursprüngliche Nachricht-----
> Von: Steffen Ritter [mailto:info at rs-websystems.de] 
> Gesendet: Mittwoch, 4. Juni 2008 14:17
> An: typo3-german at lists.netfielders.de
> Betreff: Re: [TYPO3-german] Auth Service erweitern
> 
> Hallo,
> du hast was sehr aufregendes geändert :) Ich denke db_uer steht für 
> Datenbankuser, und wenn das etwas ist, was nicht du sondern von TYPO3 
> eingeführt wurde, hast du damit den Datenbank für TYPO3 verweigert.
> andernfalls frag doch mal die Debug ausgaben...
> lG
> 
> Steffen
> 
> Siedlaczek, Sandy schrieb:
>> Hi Steffen, Hi all,
>>
>> also erstmal Danke für deine Tipps. Es hat mir den Service auf jeden Fall
>> schon näher gebracht. 
>>
>> Ich hatte es erstmal soweit, dass die Existenz einer Post-Variable
> abgefragt
>> wird und daraufhin die Username-Spalte ersetzt wird. Das klappt natürlich
>> und ist ja auch nicht sonderlich schön. Hier trotzdem mal mein Ansatz:
>>
>> 	if(isset($_POST['bonus'])) {
>> 			$this->db_user['username_column'] =  'bonus';
>> 			$this->db_user['userident_column'] = 'password';
>> 		}  
>>
>> Bevor ich nun irgendwie noch das PW weglassen möchte, würde ich gerne
> diese
>> Postvariable durch eine Service-Option ersetzen, in welcher die
> betroffenen
>> PIDs stehen sollen:
>>
>> ...		$ActPage = GLOBALS['TSFE']->id;
>> 		$PIDList = $this->getServiceOption('PIDList');
>> 		$PIDList = str_replace(' ','',$PIDList);
>> 		$PIDArr = explode(',',$PIDList);
>> 		
>> 		if(is_array($PIDArr) && in_array($ActPage,$PIDArr)) {
>> 			$this->db_user['username_column'] =  'bonus';
>> 			$this->db_user['userident_column'] = 'password';
>> 		}
>> ...
>>
>> Führt allerdings nur zu einer weißen Seite, obwohl ich noch nichts
>> Aufregendes verändert habe. Woran liegt das?Mich graust es schon davor,
> die
>> nächsten Schritte zu unternehmen... Na ja, wegen dem weglassen der
>> Passwörter habe ich schon andere Tipps gefunden. Oh Mann, jeder Anfang
ist
>> schwer
>>
>>
>> Gruß Sandy
>>
>> _______________________________________________
>> TYPO3-german mailing list
>> TYPO3-german at lists.netfielders.de
>> http://lists.netfielders.de/cgi-bin/mailman/listinfo/typo3-german
> _______________________________________________
> TYPO3-german mailing list
> TYPO3-german at lists.netfielders.de
> http://lists.netfielders.de/cgi-bin/mailman/listinfo/typo3-german
_______________________________________________
TYPO3-german mailing list
TYPO3-german at lists.netfielders.de
http://lists.netfielders.de/cgi-bin/mailman/listinfo/typo3-german


More information about the TYPO3-german mailing list