[TYPO3-german] Eigener AuthService

Peter Culka p.culka at fonda.at
Thu Feb 14 10:30:11 CET 2013


Hallo Kay,

Das geht nicht

1. link zu der TER aus der seite funkt. Nicht + naw_single_signon existiert nicht in TER => ich behaupte die ext ist in inrgendeinem wer weiss welchem "alpha" oder "obsolete" Status (http://typo3.org/extensions/repository/view/naw-single-signon - download link direkt aus der seite die du gepostet hast)
2. es braucht SSO Agent und Adapter was ich glaube fur meine kleine nutzung ein overkill

Lg,

Peter

-----Original Message-----
From: typo3-german-bounces at lists.typo3.org [mailto:typo3-german-bounces at lists.typo3.org] On Behalf Of Kay Strobach
Sent: Thursday, February 14, 2013 10:17 AM
To: typo3-german at lists.typo3.org
Subject: Re: [TYPO3-german] Eigener AuthService

Alternativ kannst du die single-signon.com ansehen, dort ist ein Adapter für T3 Verfügbar...

http://www.single-signon.com/

Grüße
Kay

Am 14.02.13 10:05, schrieb Peter Culka:
> Hallo Chris,
> 
> danke fur Deine Antwort, bisher bin ich zum folgenden gekommen:
> 
> class tx_fssoauth_sv1 extends tx_sv_auth {
> 	var $prefixId = 'tx_fssoauth_sv1';		// Same as class name
> 	var $scriptRelPath = 'sv1/class.tx_fssoauth_sv1.php';	// Path to this script relative to the extension dir.
> 	var $extKey = 'f_sso_auth';	// The extension key.
> 	var $authenticated = false;
> 
> 	function init()	{
> 		$available = parent::init();
> 		return $available;
> 	}
> 	
> 	function process($content='', $type='', $conf=array())	{
> 		return FALSE;
> 	}
> 	
> 	function authUser($user){
> 		echo "auth User";
> 		return true; // possible values: true/false/100/200
> 	}
> 	
> 	public function getUser() {
> 		echo 'getting User';
> 	}
> 	
> 	public function initAuth($conf=array()) {
> 		echo "auth module Initialized";
> 		$user = $this->getUser();
> 		$this->authUser($user);
> 		switch($conf) {
> 			case 'getGroupsFE': 
> 				//echo 'getGroupsFE';
> 				break;
> 			default:
> 				return false;
> 		}
> 	}
> 				
> 	function cidr_match($ip, $range) {
> 		list ($subnet, $bits) = explode('/', $range);
> 		$ip = ip2long($ip);
> 		$subnet = ip2long($subnet);
> 		$mask = -1 << (32 - $bits);
> 		$subnet &= $mask;
> 		return ($ip & $mask) == $subnet;
> 	}
> }
> 
> Das problem ist, ich mochte einen user automatisch authentifizieren auch konnen. Die initAuth funktion wird bei jeden Seitenaufruf gerufen (anscheinend), aber wie soll ich da dann TYPO3 dazu bringen das es wissen soll das schon bei dem ersten aufruf ein user automatisch eingeloggt ist (das kann ich schon wegen NTLM, wenn $_SERVER['AUTH_USER'] != ''; bestimmen)?
> Naturlich behaupte ich das nach dem automatischen einloggen die felogin form die ich auf der seite angelegt hab die benutzer informationen anzeigt (vielleicht mit einem "logout" button) - muss ich da was definieren in dem prozess? im "getUser" vielleicht ?
> 
> Ich befurchte mich ich werde 2 services brauchen mit verschiedenen available conditions (- um zu verstehen, auch in der domane werden IP ranges gestellt, wo sich der user IMMER einloggen muss - ob der browser ein AUTH_USER hat, oder nicht) - das konnte man in der "available" conf array aber evtl. spezifizieren direkt?
> 
> Lg,
> 
> Peter
> 
> ________________________________________
> From: typo3-german-bounces at lists.typo3.org 
> [typo3-german-bounces at lists.typo3.org] on behalf of chris Wolff 
> [chris at connye.com]
> Sent: Wednesday, February 13, 2013 9:09 PM
> To: German TYPO3 Userlist
> Subject: Re: [TYPO3-german] Eigener AuthService
> 
> Hi Peter,
> ich hab vor einiger zeit mal einen auth_service geschrieben (kunden 
> spezifische lösung). und hab leider auch keine vernünftige 
> dokumentation gefunden und mich deswegen auch durch api gewühlt und 
> nach und nach ein paar erkenntnisse gewonnen.
> 
> und diese teile ich nun gerne mit dir vieleicht nimmts dir etwas arbeit ab:
> 
> getUser()
> holt den user aus der datenbank und fügt ihn in die typo3 datenbank 
> ein. damit ist der user noch nicht angemeldet.
> 
> authUser() autentifiziert den suer dann auch tatsächlich!
> hier sind verschiedene rückgabe werte möglich:
> 0 = Falsche Authentifikation! (es werden keine weiteren auth services 
> probiert
> 100 = konnte den user nicht authentifizieren aber probier doch mal 
> andere authentifikations services
> 200 = OK der user ist autentifiziert!
> 
> Priority/ quality regel die reihenfolge in der die auth services 
> probiert werden.
> weiss nicht genau was was macht. ich habe meine einfach auf 60 
> gestellt. damit kommt mein auth service vor dem standard auth.
> service. und das reicht für meinen fall aus.
> 
> durch das trennen von get und Auth ist es mögich das ein service nur 
> eine der  aufgaben erfüllt. z.b wenn du eine externe kunden datenbank 
> hast könntest anhand des nutzer namens den user holen. aber die 
> authentifikation einfach dem standard typo3 authentifizierung 
> überlassen.
> 
> oder du willst ein eigenes authentifikations system implementieren wo 
> der user noch zusätzlich einen one-time pin braucht zu seinem passwort 
> dann könnte dein auth service nur die authentifizierung machen.
> 
> gruss chris
> 
> 
> 
> 
> 
> 
> 
> Am 13. Februar 2013 16:39 schrieb Peter Culka <p.culka at fonda.at>:
>> Hallo an alle,
>>
>> Ich versuche ein Auth mechanismus zu erstellen der auf basis SSO funktioniert:
>> Die idee ist, das ein user innerhalb eines intranets in einer domäne angemeldet ist und braucht sich nicht mehr auf die "globale" seite (im Seitenbaum von TYPO3) einzuloggen. Zusatzlich dazu noch IP einschränkung (d.h. wenn der browser/user von einer bestimmten IP adresse kommt, wird das system das kennwort abrufen - mit einer 401 challenge von IIS selbst, oder durch ein formular).
>> Falls er angemeldet ist, wird ein LDAP sync stattfinden und bestimmte 
>> daten aus dem AD rausholen und in die fe_users tabelle reinschreiben 
>> (mit zusatzinformationen in einer anderen tabelle) Aber (!) da konnen 
>> seiten sein, wo sich der user SOWIESO anmelden muss um sie zu sehen 
>> (extra security)
>>
>> Die frage ist jetzt, ob ich die ganze authentifizierung in meinem SV machen soll, oder ob ich die authentifizierung fur die bestimmten subsites den standart auth_service uberlasse (es handelt sich nur um FE user und da ich NTLM integrated auth benutzen will, muss ich automatisch immer SSL benutzen - d.h. "normal" als security level ist ok). Wie soll ich da die Priority und Quality einstellungen setzen fur mein service?
>>
>> Ubrigens, hat irgendjemand eine TOLLE beispielseite mit einem Tutorial fur ein custom auth service? Da die doku zum Services nur algemeine infos liefert, zB: das es eine extension von tx_sv_authbase sein muss und dazu noch authUser funktion und getUser programmieren muss - aber was die ruckgeben sollen - keine ahnung :s Oder wo soll ich mindistens suchen?
>>
>> Lg,
>>
>> Peter
>> _______________________________________________
>> TYPO3-german mailing list
>> TYPO3-german at lists.typo3.org
>> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
> 
> 
> 
> --
> christian wolff - webdeveloper, tech-loving geek and typo3 enthusiast
> telefon: +49 30 347 244 88
> mobil:  +49 179 49 44 758
> email: chris at connye.com
> adresse: friedelstraße 31 - 12047 berlin
> 
> xing-profil: http://www.xing.com/profile/Christian_Wolff43
> google+: https://plus.google.com/u/0/115669673917212236875/posts?hl=de
> facebook: https://www.facebook.com/1stMachine
> flattr: https://flattr.com/profile/1stmachine
> _______________________________________________
> TYPO3-german mailing list
> TYPO3-german at lists.typo3.org
> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
> 


--
http://www.kay-strobach.de - Open Source Rocks

TYPO3 .... inspiring people to share!
Get involved: http://typo3.org

Answer was useful - feel free to donate:
  -
https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=KPM9NAV73VDF2
  - https://flattr.com/profile/kaystrobach

_______________________________________________
TYPO3-german mailing list
TYPO3-german at lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german


More information about the TYPO3-german mailing list