[TYPO3-german] Automatischer Login eines FE-Users
sebastian stephan
stephan at webit.de
Mon May 14 10:03:02 CEST 2007
Johannes Hentrich schrieb:
> Hallo,
>
> ich habe ein Problem mit der automatischen Anmeldung eines FE-Users.
>
> Die Authentifizierung erfolgt gegen einen externen Dienstleister.
> Wenn diese positiv ausfällt, wird der User auf eine Typo3-Seite
> weitergeleitet, wo dieser autmaotisch eingeloggt werden soll.
>
> Dazu wrd folgendes PHP-Skript verwendet (vom externen Diensleister
> angegeben):
>
> <?
> function t3Login()
> {
> $_POST['logintype'] = 'login';
> $_POST['pid'] = 20; // pid des sys-ordners für fe-benutzergruppe/-user
> $_POST['user'] = 'dummy';
> $_POST['pass'] = 'pwd';
> $GLOBALS['TSFE']->initFEuser();
> $GLOBALS['TSFE']->initUserGroups();
> $GLOBALS['TSFE']->storeSessionData();
> }
> t3Login();
> ?>
>
> Ich habe das PHP-Skript über ein Inhaltselement "Skript" auf die
> Zielseite eingebunden, auf die User nach der Authentifizierung beim
> externen Dienstleister landet. Typo3 findet das Skript, aber der FE-User
> wird nicht eingeloggt :-(
> Automatischer
> Hat jemand eine Idee, was falsch läuft? Für jeden Hinweis wäre ich
> außerordentlich dankbar.
>
> Gruß
> Johannes
hallo johannes
ich hatte letztens ein ähnliches problem und habe folgene lösung gefunden.
$loginData = array(
'uname' => 'username',
'uident'=> 'password',
'status' =>'login'
);
$GLOBALS['TSFE']->fe_user->checkPid=0;
$info = $GLOBALS['TSFE']->fe_user->getAuthInfoArray();
$user =
$GLOBALS['TSFE']->fe_user->fetchUserRecord($info['db_user'],$loginData['uname']);
$login_success = $GLOBALS['TSFE']->fe_user->compareUident($user,$loginData);
if($login_success){
$GLOBALS['TSFE']->fe_user->createUserSession($user);
}
soweit ich das verstanden hab erfolgt der eigentlich login durch das
erstellen einer entsprechenden userSession. hoffe das hilft dir.
grüße
sebastian
More information about the TYPO3-german
mailing list